Lines Matching refs:dc

208 #define d_left(dc) ((dc)->u.s_binary.left)
209 #define d_right(dc) ((dc)->u.s_binary.right)
467 d_dump (dc, indent)
468 struct demangle_component *dc;
473 if (dc == NULL)
479 switch (dc->type)
482 printf ("name '%.*s'\n", dc->u.s_name.len, dc->u.s_name.s);
485 printf ("template parameter %ld\n", dc->u.s_number.number);
488 printf ("constructor %d\n", (int) dc->u.s_ctor.kind);
489 d_dump (dc->u.s_ctor.name, indent + 2);
492 printf ("destructor %d\n", (int) dc->u.s_dtor.kind);
493 d_dump (dc->u.s_dtor.name, indent + 2);
496 printf ("standard substitution %s\n", dc->u.s_string.string);
499 printf ("builtin type %s\n", dc->u.s_builtin.type->name);
502 printf ("operator %s\n", dc->u.s_operator.op->name);
506 dc->u.s_extended_operator.args);
507 d_dump (dc->u.s_extended_operator.name, indent + 2);
638 d_dump (d_left (dc), indent + 2);
639 d_dump (d_right (dc), indent + 2);
993 has_return_type (dc)
994 struct demangle_component *dc;
996 if (dc == NULL)
998 switch (dc->type)
1003 return ! is_ctor_dtor_or_conversion (d_left (dc));
1007 return has_return_type (d_left (dc));
1015 is_ctor_dtor_or_conversion (dc)
1016 struct demangle_component *dc;
1018 if (dc == NULL)
1020 switch (dc->type)
1026 return is_ctor_dtor_or_conversion (d_right (dc));
1054 struct demangle_component *dc;
1056 dc = d_name (di);
1058 if (dc != NULL && top_level && (di->options & DMGL_PARAMS) == 0)
1063 while (dc->type == DEMANGLE_COMPONENT_RESTRICT_THIS
1064 || dc->type == DEMANGLE_COMPONENT_VOLATILE_THIS
1065 || dc->type == DEMANGLE_COMPONENT_CONST_THIS)
1066 dc = d_left (dc);
1072 if (dc->type == DEMANGLE_COMPONENT_LOCAL_NAME)
1076 dcr = d_right (dc);
1081 dc->u.s_binary.right = dcr;
1084 return dc;
1089 return dc;
1090 return d_make_comp (di, DEMANGLE_COMPONENT_TYPED_NAME, dc,
1091 d_bare_function_type (di, has_return_type (dc)));
1112 struct demangle_component *dc;
1128 dc = d_substitution (di, 0);
1134 dc = d_make_comp (di, DEMANGLE_COMPONENT_QUAL_NAME,
1155 if (! d_add_substitution (di, dc))
1158 dc = d_make_comp (di, DEMANGLE_COMPONENT_TEMPLATE, dc,
1162 return dc;
1166 dc = d_unqualified_name (di);
1172 if (! d_add_substitution (di, dc))
1174 dc = d_make_comp (di, DEMANGLE_COMPONENT_TEMPLATE, dc,
1177 return dc;
1230 struct demangle_component *dc;
1245 dc = d_unqualified_name (di);
1247 dc = d_substitution (di, 1);
1253 dc = d_template_args (di);
1256 dc = d_template_param (di);
1263 ret = dc;
1265 ret = d_make_comp (di, comb_type, ret, dc);
2498 d_add_substitution (di, dc)
2500 struct demangle_component *dc;
2502 if (dc == NULL)
2506 di->subs[di->next_sub] = dc;
2736 cplus_demangle_print (options, dc, estimate, palc)
2738 const struct demangle_component *dc;
2760 d_print_comp (&dpi, dc);
2775 d_print_comp (dpi, dc)
2777 const struct demangle_component *dc;
2779 if (dc == NULL)
2787 switch (dc->type)
2791 d_append_buffer (dpi, dc->u.s_name.s, dc->u.s_name.len);
2793 d_print_java_identifier (dpi, dc->u.s_name.s, dc->u.s_name.len);
2798 d_print_comp (dpi, d_left (dc));
2803 d_print_comp (dpi, d_right (dc));
2819 typed_name = d_left (dc);
2884 d_print_comp (dpi, d_right (dc));
2917 d_print_comp (dpi, d_left (dc));
2921 d_print_comp (dpi, d_right (dc));
2944 i = dc->u.s_number.number;
2980 d_print_comp (dpi, dc->u.s_ctor.name);
2985 d_print_comp (dpi, dc->u.s_dtor.name);
2990 d_print_comp (dpi, d_left (dc));
2995 d_print_comp (dpi, d_left (dc));
3000 d_print_comp (dpi, d_left (dc));
3002 d_print_comp (dpi, d_right (dc));
3007 d_print_comp (dpi, d_left (dc));
3012 d_print_comp (dpi, d_left (dc));
3017 d_print_comp (dpi, d_left (dc));
3022 d_print_comp (dpi, d_left (dc));
3027 d_print_comp (dpi, d_left (dc));
3032 d_print_comp (dpi, d_left (dc));
3037 d_print_comp (dpi, d_left (dc));
3042 d_print_comp (dpi, d_left (dc));
3047 d_print_comp (dpi, d_left (dc));
3051 d_append_buffer (dpi, dc->u.s_string.string, dc->u.s_string.len);
3072 if (pdpm->mod->type == dc->type)
3074 d_print_comp (dpi, d_left (dc));
3095 dpm.mod = dc;
3099 d_print_comp (dpi, d_left (dc));
3104 d_print_mod (dpi, dc);
3113 d_append_buffer (dpi, dc->u.s_builtin.type->name,
3114 dc->u.s_builtin.type->len);
3116 d_append_buffer (dpi, dc->u.s_builtin.type->java_name,
3117 dc->u.s_builtin.type->java_len);
3121 d_print_comp (dpi, d_left (dc));
3126 if (d_left (dc) != NULL)
3135 dpm.mod = dc;
3139 d_print_comp (dpi, d_left (dc));
3149 d_print_function_type (dpi, dc, dpi->modifiers);
3173 adpm[0].mod = dc;
3202 d_print_comp (dpi, d_right (dc));
3215 d_print_array_type (dpi, dc, dpi->modifiers);
3226 dpm.mod = dc;
3230 d_print_comp (dpi, d_right (dc));
3237 d_print_comp (dpi, d_left (dc));
3248 d_print_comp (dpi, d_left (dc));
3249 if (d_right (dc) != NULL)
3252 d_print_comp (dpi, d_right (dc));
3261 c = dc->u.s_operator.op->name[0];
3264 d_append_buffer (dpi, dc->u.s_operator.op->name,
3265 dc->u.s_operator.op->len);
3271 d_print_comp (dpi, dc->u.s_extended_operator.name);
3276 d_print_cast (dpi, dc);
3280 if (d_left (dc)->type != DEMANGLE_COMPONENT_CAST)
3281 d_print_expr_op (dpi, d_left (dc));
3285 d_print_cast (dpi, d_left (dc));
3289 d_print_comp (dpi, d_right (dc));
3294 if (d_right (dc)->type != DEMANGLE_COMPONENT_BINARY_ARGS)
3303 if (d_left (dc)->type == DEMANGLE_COMPONENT_OPERATOR
3304 && d_left (dc)->u.s_operator.op->len == 1
3305 && d_left (dc)->u.s_operator.op->name[0] == '>')
3309 d_print_comp (dpi, d_left (d_right (dc)));
3311 d_print_expr_op (dpi, d_left (dc));
3313 d_print_comp (dpi, d_right (d_right (dc)));
3316 if (d_left (dc)->type == DEMANGLE_COMPONENT_OPERATOR
3317 && d_left (dc)->u.s_operator.op->len == 1
3318 && d_left (dc)->u.s_operator.op->name[0] == '>')
3329 if (d_right (dc)->type != DEMANGLE_COMPONENT_TRINARY_ARG1
3330 || d_right (d_right (dc))->type != DEMANGLE_COMPONENT_TRINARY_ARG2)
3336 d_print_comp (dpi, d_left (d_right (dc)));
3338 d_print_expr_op (dpi, d_left (dc));
3340 d_print_comp (dpi, d_left (d_right (d_right (dc))));
3342 d_print_comp (dpi, d_right (d_right (d_right (dc))));
3359 if (d_left (dc)->type == DEMANGLE_COMPONENT_BUILTIN_TYPE)
3361 tp = d_left (dc)->u.s_builtin.type->print;
3370 if (d_right (dc)->type == DEMANGLE_COMPONENT_NAME)
3372 if (dc->type == DEMANGLE_COMPONENT_LITERAL_NEG)
3374 d_print_comp (dpi, d_right (dc));
3400 if (d_right (dc)->type == DEMANGLE_COMPONENT_NAME
3401 && d_right (dc)->u.s_name.len == 1
3402 && dc->type == DEMANGLE_COMPONENT_LITERAL)
3404 switch (d_right (dc)->u.s_name.s[0])
3424 d_print_comp (dpi, d_left (dc));
3426 if (dc->type == DEMANGLE_COMPONENT_LITERAL_NEG)
3430 d_print_comp (dpi, d_right (dc));
3541 struct demangle_component *dc;
3558 dc = d_right (mods->mod);
3559 while (dc->type == DEMANGLE_COMPONENT_RESTRICT_THIS
3560 || dc->type == DEMANGLE_COMPONENT_VOLATILE_THIS
3561 || dc->type == DEMANGLE_COMPONENT_CONST_THIS)
3562 dc = d_left (dc);
3564 d_print_comp (dpi, dc);
3636 d_print_function_type (dpi, dc, mods)
3638 const struct demangle_component *dc;
3683 if (d_left (dc) != NULL && ! saw_mod)
3709 if (d_right (dc) != NULL)
3710 d_print_comp (dpi, d_right (dc));
3722 d_print_array_type (dpi, dc, mods)
3724 const struct demangle_component *dc;
3768 if (d_left (dc) != NULL)
3769 d_print_comp (dpi, d_left (dc));
3777 d_print_expr_op (dpi, dc)
3779 const struct demangle_component *dc;
3781 if (dc->type == DEMANGLE_COMPONENT_OPERATOR)
3782 d_append_buffer (dpi, dc->u.s_operator.op->name,
3783 dc->u.s_operator.op->len);
3785 d_print_comp (dpi, dc);
3791 d_print_cast (dpi, dc)
3793 const struct demangle_component *dc;
3795 if (d_left (dc)->type != DEMANGLE_COMPONENT_TEMPLATE)
3796 d_print_comp (dpi, d_left (dc));
3812 dpt.template = d_left (dc);
3814 d_print_comp (dpi, d_left (d_left (dc)));
3821 d_print_comp (dpi, d_right (d_left (dc)));
3882 struct demangle_component *dc;
3945 dc = cplus_demangle_mangled_name (&di, 1);
3947 dc = cplus_demangle_type (&di);
3954 dc = NULL;
3957 if (dc == NULL)
3960 d_dump (dc, 0);
3969 if (dc != NULL)
3970 ret = cplus_demangle_print (options, dc, estimate, palc);
4189 struct demangle_component *dc;
4219 dc = cplus_demangle_mangled_name (&di, 1);
4225 while (dc != NULL)
4227 switch (dc->type)
4230 dc = NULL;
4237 dc = d_left (dc);
4241 dc = d_right (dc);
4244 *ctor_kind = dc->u.s_ctor.kind;
4246 dc = NULL;
4249 *dtor_kind = dc->u.s_dtor.kind;
4251 dc = NULL;