Rizin
unix-like reverse engineering framework and cli tools
|
Go to the source code of this file.
Classes | |
struct | DemString |
struct | dem_list_iter_t |
struct | dem_list_t |
Macros | |
#define | true 1 |
#define | false 0 |
#define | RZ_NEW0(x) (x *)calloc(1, sizeof(x)) |
#define | RZ_NEW(x) (x *)malloc(sizeof(x)) |
#define | RZ_FREE(x) |
#define | RZ_API |
#define | IS_UPPER(c) ((c) >= 'A' && (c) <= 'Z') |
#define | IS_DIGIT(x) ((x) >= '0' && (x) <= '9') |
#define | RZ_MIN(x, y) (((x) > (y)) ? (y) : (x)) |
#define | RZ_STR_ISEMPTY(x) (!(x) || !*(x)) |
#define | dem_list_foreach_prev(list, it, pos) |
#define | dem_list_head(x) ((x) ? (x)->head : NULL) |
Typedefs | |
typedef int | bool |
typedef uint8_t | ut8 |
typedef uint16_t | ut16 |
typedef uint32_t | ut32 |
typedef void(* | DemListFree) (void *ptr) |
typedef struct dem_list_iter_t | DemListIter |
typedef struct dem_list_t | DemList |
Functions | |
char * | dem_str_ndup (const char *ptr, int len) |
char * | dem_str_newf (const char *fmt,...) |
char * | dem_str_append (char *ptr, const char *string) |
void | dem_str_replace_char (char *string, size_t size, char ch, char rp) |
char * | dem_str_replace (char *str, const char *key, const char *val, int g) |
void | dem_string_free (DemString *ds) |
DemString * | dem_string_new () |
char * | dem_string_drain (DemString *ds) |
bool | dem_string_append (DemString *ds, const char *string) |
bool | dem_string_append_n (DemString *ds, const char *string, size_t size) |
bool | dem_string_appendf (DemString *ds, const char *fmt,...) |
void | dem_string_replace_char (DemString *ds, char ch, char rp) |
DemList * | dem_list_newf (DemListFree f) |
DemListIter * | dem_list_append (DemList *list, void *data) |
void | dem_list_free (DemList *list) |
void * | dem_list_get_n (const DemList *list, ut32 n) |
ut32 | dem_list_length (const DemList *list) |
Definition at line 81 of file demangler_util.h.
#define false 0 |
Definition at line 14 of file demangler_util.h.
Definition at line 42 of file demangler_util.h.
#define RZ_API |
Definition at line 38 of file demangler_util.h.
#define RZ_FREE | ( | x | ) |
Definition at line 23 of file demangler_util.h.
Definition at line 43 of file demangler_util.h.
Definition at line 44 of file demangler_util.h.
#define true 1 |
Definition at line 13 of file demangler_util.h.
Definition at line 12 of file demangler_util.h.
typedef struct dem_list_t DemList |
typedef void(* DemListFree) (void *ptr) |
Definition at line 66 of file demangler_util.h.
typedef struct dem_list_iter_t DemListIter |
Definition at line 30 of file demangler_util.h.
Definition at line 31 of file demangler_util.h.
Definition at line 29 of file demangler_util.h.
DemListIter* dem_list_append | ( | DemList * | list, |
void * | data | ||
) |
Definition at line 229 of file demangler_util.c.
References dem_list_iter_t::data, dem_return_val_if_fail, list(), dem_list_iter_t::n, NULL, dem_list_iter_t::p, and RZ_NEW.
Referenced by get_namespace_and_name(), get_operator_code(), get_template(), and parse_function_args().
void dem_list_free | ( | DemList * | list | ) |
Definition at line 299 of file demangler_util.c.
References dem_list_purge(), free(), and list().
Referenced by get_namespace_and_name(), get_operator_code(), get_template(), and microsoft_demangle().
Definition at line 306 of file demangler_util.c.
References dem_list_iter_t::data, dem_return_val_if_fail, i, list(), n, dem_list_iter_t::n, and NULL.
Referenced by get_namespace_and_name(), and parse_function_args().
Definition at line 253 of file demangler_util.c.
References dem_return_val_if_fail, and list().
Referenced by get_namespace_and_name().
DemList* dem_list_newf | ( | DemListFree | f | ) |
Definition at line 221 of file demangler_util.c.
References f, dem_list_t::free, and RZ_NEW0.
Referenced by get_namespace_and_name(), get_template(), and microsoft_demangle().
char* dem_str_append | ( | char * | ptr, |
const char * | string | ||
) |
Definition at line 112 of file demangler_util.c.
References free(), memcpy(), NULL, realloc(), RZ_STR_ISEMPTY, and strdup().
Referenced by get_operator_code(), get_ptr_modifier(), and parse_microsoft_mangled_name().
Definition at line 78 of file demangler_util.c.
References len, malloc(), NULL, and out.
Referenced by get_template().
char* dem_str_newf | ( | const char * | fmt, |
... | |||
) |
Definition at line 91 of file demangler_util.c.
References calloc(), dem_return_val_if_fail, NULL, p, strdup(), and vsnprintf.
Referenced by get_namespace_and_name(), get_num(), get_operator_code(), get_template_params(), libdemangle_handler_objc(), parse_data_type(), parse_microsoft_mangled_name(), and parse_microsoft_rtti_mangled_name().
Definition at line 32 of file demangler_util.c.
References dem_return_val_if_fail, dem_str_replace_char(), g, i, int, key, memcpy(), newstr(), NULL, off, p, realloc(), RZ_FREE, cmd_descs_generate::str, and val.
Referenced by libdemangle_handler_java(), and parse_function().
void dem_str_replace_char | ( | char * | string, |
size_t | size, | ||
char | ch, | ||
char | rp | ||
) |
Definition at line 24 of file demangler_util.c.
Referenced by dem_str_replace(), and dem_string_replace_char().
Definition at line 167 of file demangler_util.c.
References dem_return_val_if_fail, and dem_string_append_n().
Referenced by demangle_method(), demangle_type(), and get_operator_code().
Definition at line 173 of file demangler_util.c.
References DemString::buf, dem_return_val_if_fail, dem_string_realloc_no_len_update(), DemString::len, and memcpy().
Referenced by dem_string_append(), demangle_type(), and get_operator_code().
Definition at line 187 of file demangler_util.c.
References DemString::buf, dem_return_val_if_fail, dem_string_realloc_no_len_update(), DemString::len, NULL, and vsnprintf.
Referenced by demangle_class_object(), demangle_object_with_type(), and get_operator_code().
char* dem_string_drain | ( | DemString * | ds | ) |
Definition at line 160 of file demangler_util.c.
References DemString::buf, dem_return_val_if_fail, free(), and NULL.
Referenced by demangle_any(), demangle_class_object(), demangle_method(), demangle_object_with_type(), and get_operator_code().
void dem_string_free | ( | DemString * | ds | ) |
Definition at line 131 of file demangler_util.c.
References DemString::buf, and free().
Referenced by demangle_any(), demangle_class_object(), demangle_method(), demangle_object_with_type(), and get_operator_code().
DemString* dem_string_new | ( | ) |
Definition at line 139 of file demangler_util.c.
References RZ_NEW0.
Referenced by demangle_any(), demangle_class_object(), demangle_method(), demangle_object_with_type(), and get_operator_code().
void dem_string_replace_char | ( | DemString * | ds, |
char | ch, | ||
char | rp | ||
) |
Definition at line 214 of file demangler_util.c.
References DemString::buf, dem_str_replace_char(), DemString::len, and rp.
Referenced by demangle_any(), demangle_class_object(), demangle_method(), and demangle_object_with_type().