7#include "skeleton_node.hpp"
12 statement_vector children;
25 if (std::ssize(children) > 0) {
26 children.back()->left_align();
29 for (ttlet &child: children) {
30 child->post_process(context);
36 return evaluate_children(context, children);
39 auto error_location = location;
40 if (
auto formula_location = error_info::peek<parse_location, "parse_location">()) {
41 error_location += *formula_location;
49 ttlet children_str = transform<std::vector<std::string>>(children, [](ttlet &x) {
return x->string(); });
50 return fmt::format(
"<top {}>", join(children_str));
Error information passed alongside an error code or exception.
Definition error_info.hpp:81
error_info & set(Arg &&value) noexcept
Set an information for a given tag.
Definition error_info.hpp:144
Definition formula_evaluation_context.hpp:16
Definition formula_post_process_context.hpp:18
Definition parse_location.hpp:16
Definition skeleton_node.hpp:16
Definition skeleton_top_node.hpp:11
datum evaluate(formula_evaluation_context &context) override
Evaluate the template.
Definition skeleton_top_node.hpp:34
bool append(std::unique_ptr< skeleton_node > x) noexcept override
Append a template-piece to the current template.
Definition skeleton_top_node.hpp:19