Rizin
unix-like reverse engineering framework and cli tools
cparser.c
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: 2021 theopechli <theofilos.pechlivanis@gmail.com>
2 // SPDX-License-Identifier: LGPL-3.0-only
3 
4 #include <rz_core.h>
5 
7  PJ *pj = state->d.pj;
8  switch (state->mode) {
9  case RZ_OUTPUT_MODE_JSON: {
10  pj_o(pj);
11  pj_ks(pj, "name", plugin->name);
12  pj_end(pj);
13  break;
14  }
16  rz_cons_printf("%s\n", plugin->name);
17  break;
18  }
19  default: {
22  }
23  }
24  return RZ_CMD_STATUS_OK;
25 }
26 
29  RzParsePlugin *plugin;
30  if (!parser) {
31  return RZ_CMD_STATUS_ERROR;
32  }
34  rz_list_foreach (parser->parsers, iter, plugin) {
36  }
37 
39  return RZ_CMD_STATUS_OK;
40 }
RZ_API void rz_cmd_state_output_array_start(RzCmdStateOutput *state)
Mark the start of an array of elements in the output.
Definition: cmd_api.c:2558
RZ_API void rz_cmd_state_output_array_end(RzCmdStateOutput *state)
Mark the end of an array of elements in the output.
Definition: cmd_api.c:2572
RZ_API int rz_cons_printf(const char *format,...)
Definition: cons.c:1202
#define RZ_API
RZ_API RzCmdStatus rz_core_parser_plugin_print(RzParsePlugin *plugin, RzCmdStateOutput *state)
Definition: cparser.c:6
RZ_API RzCmdStatus rz_core_parser_plugins_print(RzParse *parser, RzCmdStateOutput *state)
Definition: cparser.c:27
#define rz_warn_if_reached()
Definition: rz_assert.h:29
enum rz_cmd_status_t RzCmdStatus
@ RZ_CMD_STATUS_OK
command handler exited in the right way
Definition: rz_cmd.h:24
@ RZ_CMD_STATUS_NONEXISTINGCMD
command does not exist
Definition: rz_cmd.h:28
@ RZ_CMD_STATUS_ERROR
command handler had issues while running (e.g. allocation error, etc.)
Definition: rz_cmd.h:26
RZ_API PJ * pj_end(PJ *j)
Definition: pj.c:87
RZ_API PJ * pj_o(PJ *j)
Definition: pj.c:75
RZ_API PJ * pj_ks(PJ *j, const char *k, const char *v)
Definition: pj.c:170
@ RZ_OUTPUT_MODE_JSON
Definition: rz_types.h:40
@ RZ_OUTPUT_MODE_STANDARD
Definition: rz_types.h:39
Definition: rz_pj.h:12
Represent the output state of a command handler.
Definition: rz_cmd.h:91
Definition: dis.h:43