Lines Matching refs:dc
235 #define d_left(dc) ((dc)->u.s_binary.left) argument
236 #define d_right(dc) ((dc)->u.s_binary.right) argument
476 d_dump (struct demangle_component *dc, int indent) in d_dump() argument
480 if (dc == NULL) in d_dump()
490 switch (dc->type) in d_dump()
493 printf ("name '%.*s'\n", dc->u.s_name.len, dc->u.s_name.s); in d_dump()
496 printf ("template parameter %ld\n", dc->u.s_number.number); in d_dump()
499 printf ("constructor %d\n", (int) dc->u.s_ctor.kind); in d_dump()
500 d_dump (dc->u.s_ctor.name, indent + 2); in d_dump()
503 printf ("destructor %d\n", (int) dc->u.s_dtor.kind); in d_dump()
504 d_dump (dc->u.s_dtor.name, indent + 2); in d_dump()
507 printf ("standard substitution %s\n", dc->u.s_string.string); in d_dump()
510 printf ("builtin type %s\n", dc->u.s_builtin.type->name); in d_dump()
513 printf ("operator %s\n", dc->u.s_operator.op->name); in d_dump()
517 dc->u.s_extended_operator.args); in d_dump()
518 d_dump (dc->u.s_extended_operator.name, indent + 2); in d_dump()
652 d_dump (d_left (dc), indent + 2); in d_dump()
653 d_dump (d_right (dc), indent + 2); in d_dump()
979 has_return_type (struct demangle_component *dc) in has_return_type() argument
981 if (dc == NULL) in has_return_type()
983 switch (dc->type) in has_return_type()
988 return ! is_ctor_dtor_or_conversion (d_left (dc)); in has_return_type()
992 return has_return_type (d_left (dc)); in has_return_type()
1000 is_ctor_dtor_or_conversion (struct demangle_component *dc) in is_ctor_dtor_or_conversion() argument
1002 if (dc == NULL) in is_ctor_dtor_or_conversion()
1004 switch (dc->type) in is_ctor_dtor_or_conversion()
1010 return is_ctor_dtor_or_conversion (d_right (dc)); in is_ctor_dtor_or_conversion()
1036 struct demangle_component *dc; in d_encoding() local
1038 dc = d_name (di); in d_encoding()
1040 if (dc != NULL && top_level && (di->options & DMGL_PARAMS) == 0) in d_encoding()
1045 while (dc->type == DEMANGLE_COMPONENT_RESTRICT_THIS in d_encoding()
1046 || dc->type == DEMANGLE_COMPONENT_VOLATILE_THIS in d_encoding()
1047 || dc->type == DEMANGLE_COMPONENT_CONST_THIS) in d_encoding()
1048 dc = d_left (dc); in d_encoding()
1054 if (dc->type == DEMANGLE_COMPONENT_LOCAL_NAME) in d_encoding()
1058 dcr = d_right (dc); in d_encoding()
1063 dc->u.s_binary.right = dcr; in d_encoding()
1066 return dc; in d_encoding()
1070 if (dc == NULL || peek == '\0' || peek == 'E') in d_encoding()
1071 return dc; in d_encoding()
1072 return d_make_comp (di, DEMANGLE_COMPONENT_TYPED_NAME, dc, in d_encoding()
1073 d_bare_function_type (di, has_return_type (dc))); in d_encoding()
1093 struct demangle_component *dc; in d_name() local
1112 dc = d_substitution (di, 0); in d_name()
1118 dc = d_make_comp (di, DEMANGLE_COMPONENT_QUAL_NAME, in d_name()
1139 if (! d_add_substitution (di, dc)) in d_name()
1142 dc = d_make_comp (di, DEMANGLE_COMPONENT_TEMPLATE, dc, in d_name()
1146 return dc; in d_name()
1150 dc = d_unqualified_name (di); in d_name()
1156 if (! d_add_substitution (di, dc)) in d_name()
1158 dc = d_make_comp (di, DEMANGLE_COMPONENT_TEMPLATE, dc, in d_name()
1161 return dc; in d_name()
1212 struct demangle_component *dc; in d_prefix() local
1228 dc = d_unqualified_name (di); in d_prefix()
1230 dc = d_substitution (di, 1); in d_prefix()
1236 dc = d_template_args (di); in d_prefix()
1239 dc = d_template_param (di); in d_prefix()
1246 ret = dc; in d_prefix()
1248 ret = d_make_comp (di, comb_type, ret, dc); in d_prefix()
2496 d_add_substitution (struct d_info *di, struct demangle_component *dc) in d_add_substitution() argument
2498 if (dc == NULL) in d_add_substitution()
2502 di->subs[di->next_sub] = dc; in d_add_substitution()
2801 const struct demangle_component *dc, in cplus_demangle_print_callback() argument
2808 d_print_comp (&dpi, dc); in cplus_demangle_print_callback()
2825 cplus_demangle_print (int options, const struct demangle_component *dc, in cplus_demangle_print() argument
2832 if (! cplus_demangle_print_callback (options, dc, in cplus_demangle_print()
2849 const struct demangle_component *dc) in d_print_comp() argument
2851 if (dc == NULL) in d_print_comp()
2859 switch (dc->type) in d_print_comp()
2863 d_append_buffer (dpi, dc->u.s_name.s, dc->u.s_name.len); in d_print_comp()
2865 d_print_java_identifier (dpi, dc->u.s_name.s, dc->u.s_name.len); in d_print_comp()
2870 d_print_comp (dpi, d_left (dc)); in d_print_comp()
2875 d_print_comp (dpi, d_right (dc)); in d_print_comp()
2891 typed_name = d_left (dc); in d_print_comp()
2956 d_print_comp (dpi, d_right (dc)); in d_print_comp()
2990 dcl = d_left (dc); in d_print_comp()
3000 d_print_comp (dpi, d_right (dc)); in d_print_comp()
3009 d_print_comp (dpi, d_right (dc)); in d_print_comp()
3033 i = dc->u.s_number.number; in d_print_comp()
3069 d_print_comp (dpi, dc->u.s_ctor.name); in d_print_comp()
3074 d_print_comp (dpi, dc->u.s_dtor.name); in d_print_comp()
3079 d_print_comp (dpi, d_left (dc)); in d_print_comp()
3084 d_print_comp (dpi, d_left (dc)); in d_print_comp()
3089 d_print_comp (dpi, d_left (dc)); in d_print_comp()
3091 d_print_comp (dpi, d_right (dc)); in d_print_comp()
3096 d_print_comp (dpi, d_left (dc)); in d_print_comp()
3101 d_print_comp (dpi, d_left (dc)); in d_print_comp()
3106 d_print_comp (dpi, d_left (dc)); in d_print_comp()
3111 d_print_comp (dpi, d_left (dc)); in d_print_comp()
3116 d_print_comp (dpi, d_left (dc)); in d_print_comp()
3121 d_print_comp (dpi, d_left (dc)); in d_print_comp()
3126 d_print_comp (dpi, d_left (dc)); in d_print_comp()
3131 d_print_comp (dpi, d_left (dc)); in d_print_comp()
3136 d_print_comp (dpi, d_left (dc)); in d_print_comp()
3141 d_print_comp (dpi, d_left (dc)); in d_print_comp()
3145 d_append_buffer (dpi, dc->u.s_string.string, dc->u.s_string.len); in d_print_comp()
3166 if (pdpm->mod->type == dc->type) in d_print_comp()
3168 d_print_comp (dpi, d_left (dc)); in d_print_comp()
3189 dpm.mod = dc; in d_print_comp()
3193 d_print_comp (dpi, d_left (dc)); in d_print_comp()
3198 d_print_mod (dpi, dc); in d_print_comp()
3207 d_append_buffer (dpi, dc->u.s_builtin.type->name, in d_print_comp()
3208 dc->u.s_builtin.type->len); in d_print_comp()
3210 d_append_buffer (dpi, dc->u.s_builtin.type->java_name, in d_print_comp()
3211 dc->u.s_builtin.type->java_len); in d_print_comp()
3215 d_print_comp (dpi, d_left (dc)); in d_print_comp()
3221 d_print_function_type (dpi, dc, dpi->modifiers); in d_print_comp()
3224 if (d_left (dc) != NULL) in d_print_comp()
3232 dpm.mod = dc; in d_print_comp()
3236 d_print_comp (dpi, d_left (dc)); in d_print_comp()
3250 d_print_function_type (dpi, dc, dpi->modifiers); in d_print_comp()
3274 adpm[0].mod = dc; in d_print_comp()
3303 d_print_comp (dpi, d_right (dc)); in d_print_comp()
3316 d_print_array_type (dpi, dc, dpi->modifiers); in d_print_comp()
3327 dpm.mod = dc; in d_print_comp()
3331 d_print_comp (dpi, d_right (dc)); in d_print_comp()
3338 d_print_comp (dpi, d_left (dc)); in d_print_comp()
3349 d_print_comp (dpi, d_left (dc)); in d_print_comp()
3350 if (d_right (dc) != NULL) in d_print_comp()
3353 d_print_comp (dpi, d_right (dc)); in d_print_comp()
3362 c = dc->u.s_operator.op->name[0]; in d_print_comp()
3365 d_append_buffer (dpi, dc->u.s_operator.op->name, in d_print_comp()
3366 dc->u.s_operator.op->len); in d_print_comp()
3372 d_print_comp (dpi, dc->u.s_extended_operator.name); in d_print_comp()
3377 d_print_cast (dpi, dc); in d_print_comp()
3381 if (d_left (dc)->type != DEMANGLE_COMPONENT_CAST) in d_print_comp()
3382 d_print_expr_op (dpi, d_left (dc)); in d_print_comp()
3386 d_print_cast (dpi, d_left (dc)); in d_print_comp()
3390 d_print_comp (dpi, d_right (dc)); in d_print_comp()
3395 if (d_right (dc)->type != DEMANGLE_COMPONENT_BINARY_ARGS) in d_print_comp()
3404 if (d_left (dc)->type == DEMANGLE_COMPONENT_OPERATOR in d_print_comp()
3405 && d_left (dc)->u.s_operator.op->len == 1 in d_print_comp()
3406 && d_left (dc)->u.s_operator.op->name[0] == '>') in d_print_comp()
3410 d_print_comp (dpi, d_left (d_right (dc))); in d_print_comp()
3412 d_print_expr_op (dpi, d_left (dc)); in d_print_comp()
3414 d_print_comp (dpi, d_right (d_right (dc))); in d_print_comp()
3417 if (d_left (dc)->type == DEMANGLE_COMPONENT_OPERATOR in d_print_comp()
3418 && d_left (dc)->u.s_operator.op->len == 1 in d_print_comp()
3419 && d_left (dc)->u.s_operator.op->name[0] == '>') in d_print_comp()
3430 if (d_right (dc)->type != DEMANGLE_COMPONENT_TRINARY_ARG1 in d_print_comp()
3431 || d_right (d_right (dc))->type != DEMANGLE_COMPONENT_TRINARY_ARG2) in d_print_comp()
3437 d_print_comp (dpi, d_left (d_right (dc))); in d_print_comp()
3439 d_print_expr_op (dpi, d_left (dc)); in d_print_comp()
3441 d_print_comp (dpi, d_left (d_right (d_right (dc)))); in d_print_comp()
3443 d_print_comp (dpi, d_right (d_right (d_right (dc)))); in d_print_comp()
3460 if (d_left (dc)->type == DEMANGLE_COMPONENT_BUILTIN_TYPE) in d_print_comp()
3462 tp = d_left (dc)->u.s_builtin.type->print; in d_print_comp()
3471 if (d_right (dc)->type == DEMANGLE_COMPONENT_NAME) in d_print_comp()
3473 if (dc->type == DEMANGLE_COMPONENT_LITERAL_NEG) in d_print_comp()
3475 d_print_comp (dpi, d_right (dc)); in d_print_comp()
3501 if (d_right (dc)->type == DEMANGLE_COMPONENT_NAME in d_print_comp()
3502 && d_right (dc)->u.s_name.len == 1 in d_print_comp()
3503 && dc->type == DEMANGLE_COMPONENT_LITERAL) in d_print_comp()
3505 switch (d_right (dc)->u.s_name.s[0]) in d_print_comp()
3525 d_print_comp (dpi, d_left (dc)); in d_print_comp()
3527 if (dc->type == DEMANGLE_COMPONENT_LITERAL_NEG) in d_print_comp()
3531 d_print_comp (dpi, d_right (dc)); in d_print_comp()
3637 struct demangle_component *dc; in d_print_mod_list() local
3654 dc = d_right (mods->mod); in d_print_mod_list()
3655 while (dc->type == DEMANGLE_COMPONENT_RESTRICT_THIS in d_print_mod_list()
3656 || dc->type == DEMANGLE_COMPONENT_VOLATILE_THIS in d_print_mod_list()
3657 || dc->type == DEMANGLE_COMPONENT_CONST_THIS) in d_print_mod_list()
3658 dc = d_left (dc); in d_print_mod_list()
3660 d_print_comp (dpi, dc); in d_print_mod_list()
3732 const struct demangle_component *dc, in d_print_function_type() argument
3777 if (d_left (dc) != NULL && ! saw_mod) in d_print_function_type()
3803 if (d_right (dc) != NULL) in d_print_function_type()
3804 d_print_comp (dpi, d_right (dc)); in d_print_function_type()
3817 const struct demangle_component *dc, in d_print_array_type() argument
3861 if (d_left (dc) != NULL) in d_print_array_type()
3862 d_print_comp (dpi, d_left (dc)); in d_print_array_type()
3871 const struct demangle_component *dc) in d_print_expr_op() argument
3873 if (dc->type == DEMANGLE_COMPONENT_OPERATOR) in d_print_expr_op()
3874 d_append_buffer (dpi, dc->u.s_operator.op->name, in d_print_expr_op()
3875 dc->u.s_operator.op->len); in d_print_expr_op()
3877 d_print_comp (dpi, dc); in d_print_expr_op()
3884 const struct demangle_component *dc) in d_print_cast() argument
3886 if (d_left (dc)->type != DEMANGLE_COMPONENT_TEMPLATE) in d_print_cast()
3887 d_print_comp (dpi, d_left (dc)); in d_print_cast()
3903 dpt.template_decl = d_left (dc); in d_print_cast()
3905 d_print_comp (dpi, d_left (d_left (dc))); in d_print_cast()
3912 d_print_comp (dpi, d_right (d_left (dc))); in d_print_cast()
3965 struct demangle_component *dc; in d_demangle_callback() local
4007 dc = cplus_demangle_type (&di); in d_demangle_callback()
4009 dc = cplus_demangle_mangled_name (&di, 1); in d_demangle_callback()
4016 dc = NULL; in d_demangle_callback()
4019 d_dump (dc, 0); in d_demangle_callback()
4022 status = (dc != NULL) in d_demangle_callback()
4023 ? cplus_demangle_print_callback (options, dc, callback, opaque) in d_demangle_callback()
4249 struct demangle_component *dc; in is_ctor_or_dtor() local
4269 dc = cplus_demangle_mangled_name (&di, 1); in is_ctor_or_dtor()
4275 while (dc != NULL) in is_ctor_or_dtor()
4277 switch (dc->type) in is_ctor_or_dtor()
4280 dc = NULL; in is_ctor_or_dtor()
4287 dc = d_left (dc); in is_ctor_or_dtor()
4291 dc = d_right (dc); in is_ctor_or_dtor()
4294 *ctor_kind = dc->u.s_ctor.kind; in is_ctor_or_dtor()
4296 dc = NULL; in is_ctor_or_dtor()
4299 *dtor_kind = dc->u.s_dtor.kind; in is_ctor_or_dtor()
4301 dc = NULL; in is_ctor_or_dtor()