expr: More consistent and easier to read printing

This commit is contained in:
Laria 2021-12-15 21:25:40 +01:00
parent ade0972d67
commit fd3c5702ca

View file

@ -576,7 +576,7 @@ print_param(struct apfl_expr_param *param, unsigned indent, FILE *f)
{
switch (param->type) {
case APFL_EXPR_PARAM_VAR:
print_indented(indent, f, "Var \"" APFL_STR_FMT "\"\n", APFL_STR_FMT_ARGS(param->var));
print_indented(indent, f, "Var (" APFL_STR_FMT ")\n", APFL_STR_FMT_ARGS(param->var));
break;
case APFL_EXPR_PARAM_CONSTANT:
print_constant(param->constant, indent, f);
@ -674,13 +674,14 @@ print_expr(struct apfl_expr *expr, unsigned indent, FILE *f)
case APFL_EXPR_COMPLEX_FUNC:
print_indented(indent, f, "Complex function @ " POSFMT "\n", POSARGS(expr->position));
for (size_t i = 0; i < expr->complex_func.len; i++) {
print_indented(indent+1, f, "Subfunction\n");
struct apfl_expr_subfunc *sub = &expr->complex_func.subfuncs[i];
print_indented(indent+1, f, "Parameters\n");
print_indented(indent+2, f, "Parameters\n");
for (size_t j = 0; j < sub->params.len; j++) {
print_param(&sub->params.params[j], indent+2, f);
print_param(&sub->params.params[j], indent+3, f);
}
print_indented(indent+1, f, "Body\n");
print_body(&sub->body, indent+2, f);
print_indented(indent+2, f, "Body\n");
print_body(&sub->body, indent+3, f);
}
break;
case APFL_EXPR_ASSIGNMENT: