|
|
| skeleton_node (parse_location location) |
| virtual bool | append (std::unique_ptr< skeleton_node > x) noexcept |
| | Append a template-piece to the current template.
|
| virtual bool | should_left_align () const noexcept |
| | Should any spaces on the left side of a statement be removed?
|
| virtual void | left_align () noexcept |
| | Remove any trailing spaces or tabs after a new-line.
|
|
virtual bool | found_elif (parse_location _location, std::unique_ptr< formula_node > expression) noexcept |
|
virtual bool | found_else (parse_location _location) noexcept |
|
virtual bool | found_while (parse_location _location, std::unique_ptr< formula_node > expression) noexcept |
|
virtual void | post_process (formula_post_process_context &context) |
| virtual datum | evaluate (formula_evaluation_context &context) |
| | Evaluate the template.
|
|
std::string | evaluate_output (formula_evaluation_context &context) |
|
std::string | evaluate_output () |
|
virtual std::string | string () const noexcept |
|
|
static void | append_child (statement_vector &children, std::unique_ptr< skeleton_node > new_child) |
|
static datum | evaluate_formula_without_output (formula_evaluation_context &context, formula_node const &expression, parse_location const &location) |
|
static datum | evaluate_expression (formula_evaluation_context &context, formula_node const &expression, parse_location const &location) |
|
static void | post_process_expression (formula_post_process_context &context, formula_node &expression, parse_location const &location) |
|
static datum | evaluate_children (formula_evaluation_context &context, statement_vector const &children) |
◆ append()
| virtual bool v1::skeleton_node::append |
( |
std::unique_ptr< skeleton_node > | x | ) |
|
|
inlinenodiscardvirtualnoexcept |
◆ evaluate()
| virtual datum v1::skeleton_node::evaluate |
( |
formula_evaluation_context & | context | ) |
|
|
inlinenodiscardvirtual |
Evaluate the template.
Text in the template is added to the context.output_text.
- Parameters
-
| context | Data used by expressions inside the template statements. .output_text will contain textual data from the template. |
- Returns
- datum::undefined when the skeleton_node generated textual data into context.output_text. datum::break when a #break statement was encountered. datum::continue when a #continue statement was encountered. Otherwise data returned from a #return statement.
Reimplemented in v1::skeleton_block_node, v1::skeleton_break_node, v1::skeleton_continue_node, v1::skeleton_do_node, v1::skeleton_expression_node, v1::skeleton_for_node, v1::skeleton_function_node, v1::skeleton_if_node, v1::skeleton_placeholder_node, v1::skeleton_return_node, v1::skeleton_string_node, v1::skeleton_top_node, and v1::skeleton_while_node.
◆ left_align()
| virtual void v1::skeleton_node::left_align |
( |
| ) |
|
|
inlinevirtualnoexcept |
◆ should_left_align()
| virtual bool v1::skeleton_node::should_left_align |
( |
| ) |
const |
|
inlinenodiscardvirtualnoexcept |
The documentation for this struct was generated from the following file: