7#include "skeleton_node.hpp"
27 expression->post_process(context);
30 auto error_location = location;
31 if (ttlet expression_location = error_info::peek<parse_location, "parse_location">()) {
32 error_location += *expression_location;
34 error_info(
true).set<
"parse_location">(error_location);
41 return fmt::format(
"<placeholder {}>", *expression);
48 ttlet tmp = evaluate_expression(context, *expression, location);
50 tt_error_info().set<
"parse_location">(location);
53 }
else if (tmp.is_continue()) {
54 tt_error_info().set<
"parse_location">(location);
57 }
else if (tmp.is_undefined()) {
Exception thrown during execution of a dynamic operation.
Definition exception.hpp:37
Definition formula_evaluation_context.hpp:16
void write(std::string_view text) noexcept
Write data to the output.
Definition formula_evaluation_context.hpp:51
void set_output_size(ssize_t new_size) noexcept
Set the size of the output.
Definition formula_evaluation_context.hpp:67
ssize_t output_size() const noexcept
Get the size of the output.
Definition formula_evaluation_context.hpp:60
Definition formula_post_process_context.hpp:18
Definition parse_location.hpp:16
Definition skeleton_node.hpp:16
Definition skeleton_placeholder_node.hpp:11
bool should_left_align() const noexcept override
Should any spaces on the left side of a statement be removed?
Definition skeleton_placeholder_node.hpp:19
datum evaluate(formula_evaluation_context &context) override
Evaluate the template.
Definition skeleton_placeholder_node.hpp:44