*
* if it needs to be created, then create it and just mash the results in place
* otherwise apply the edits (+=, etc.) to an existing attribute.
+ *
+ * @todo - move to using dcursors for all of the values. The dcursor should exist in current->rhs. It
+ * should be used even for TMPL_DATA and single value-boxes. Once that's done, it becomes easier to use
+ * dcursors for xlats, too.
*/
static int apply_edits_to_leaf(request_t *request, unlang_frame_state_edit_t *state, edit_map_t *current)
{
* well as the original fmt string.
*/
if ((node->type == XLAT_FUNC) && !xlat_is_literal(node->call.args)) {
- RDEBUG2("(%%%c%s:%pM%c)",
+ RDEBUG2("| %%%c%s:%pM%c",
(node->call.func->input_type == XLAT_INPUT_ARGS) ? '(' : '{',
node->call.func->name, args,
(node->call.func->input_type == XLAT_INPUT_ARGS) ? ')' : '}');
char *str;
str = xlat_fmt_aprint(NULL, node);
- RDEBUG2("%s", str); /* print line number here for debugging */
+ RDEBUG2("| %s", str); /* print line number here for debugging */
talloc_free(str);
}
}
if (!RDEBUG_ENABLED2) return;
- RDEBUG2("--> %pM", result);
+ RDEBUG2("| --> %pM", result);
}
/** Output the result of an expansion
if (!RDEBUG_ENABLED2) return;
- RDEBUG2("--> %pV", result);
+ RDEBUG2("| --> %pV", result);
}
/** Process an individual xlat argument value box group
xa = resume(ctx, out, XLAT_CTX(exp->call.inst->data, t->data, t->mctx, rctx), request, result);
VALUE_BOX_TALLOC_LIST_VERIFY(result);
- RDEBUG2("%%%c%s:...%c",
+ RDEBUG2("| %%%c%s:...%c",
(exp->call.func->input_type == XLAT_INPUT_ARGS) ? '(' : '{',
exp->call.func->name,
(exp->call.func->input_type == XLAT_INPUT_ARGS) ? ')' : '}');
break;
case XLAT_ACTION_YIELD:
- RDEBUG2("(YIELD)");
+ RDEBUG2("| (YIELD)");
break;
case XLAT_ACTION_DONE:
fr_dcursor_next(out); /* Wind to the start of this functions output */
- RDEBUG2("--> %pV", fr_dcursor_current(out));
+ RDEBUG2("| --> %pV", fr_dcursor_current(out));
break;
case XLAT_ACTION_FAIL:
return xa;
case XLAT_ACTION_PUSH_CHILD:
- RDEBUG3(" -- CHILD");
+ RDEBUG3("| -- CHILD");
return xa;
case XLAT_ACTION_PUSH_UNLANG:
- RDEBUG3(" -- UNLANG");
+ RDEBUG3("| -- UNLANG");
return xa;
case XLAT_ACTION_YIELD:
- RDEBUG3(" -- YIELD");
+ RDEBUG3("| -- YIELD");
return xa;
case XLAT_ACTION_DONE: /* Process the result */