22#ifndef ATTRIBUTE_MAPPER_AST_DEP_EVAL_HPP
23#define ATTRIBUTE_MAPPER_AST_DEP_EVAL_HPP
117 operator()(
const std::vector<attribute_path_element> &paths);
attribute store C++ wrapper.
uint32_t attribute_store_type_t
Definition: attribute_store.h:50
Attribute path evaluator.
Definition: attribute_mapper_ast_dep_eval.hpp:93
const dependencies_t & operator()(attribute_store_type_t type)
just given by type
const dependencies_t & operator()(const std::vector< attribute_path_element > &paths)
parse a path list,
const dependencies_t & operator()(const nil &nul)
hat operator ^ (parent)
Definition: attribute_mapper_ast_dep_eval.hpp:105
dep_eval_path(value_type_t value_type)
Construct a new dep eval path object.
const dependencies_t & operator()(const attribute_path_subscript &subscript)
Subscript operator.
const dependencies_t & get_dependencies() const
Get the dependencies list.
const dependencies_t & operator()(const operand &operand)
operand, usually a literal constant number
const dependencies_t & operator()(const attribute_path_element &path_element)
One path element.
value_type_t value_type
Definition: attribute_mapper_ast_dep_eval.hpp:128
dependencies_t dependencies
Definition: attribute_mapper_ast_dep_eval.hpp:127
Dependency evaluator.
Definition: attribute_mapper_ast_dep_eval.hpp:46
dependencies_t dependencies
Definition: attribute_mapper_ast_dep_eval.hpp:83
const dependencies_t & operator()(const condition &x)
const dependencies_t & operator()(const function_invokation &f)
const dependencies_t & operator()(uint32_t)
Definition: attribute_mapper_ast_dep_eval.hpp:52
const dependencies_t & operator()(float)
Definition: attribute_mapper_ast_dep_eval.hpp:57
const dependencies_t & operator()(const operation &x)
const dependencies_t & operator()(const expression &x)
This is the normal entry point of the evaluator.
const dependencies_t & operator()(const signed_ &x)
const dependencies_t & operator()(const attribute &a)
const dependencies_t & get_dependencies() const
Get the list of dependencies.
const dependencies_t & operator()(nil)
Definition: attribute_mapper_ast_dep_eval.hpp:48
Definition: attribute_mapper_ast.hpp:39
boost::variant< ast::nil, ast::operand, uint32_t, attribute_path_subscript > attribute_path_element
Attribute path element.
Definition: attribute_mapper_ast.hpp:104
std::vector< attribute_dependency_t > dependencies_t
Definition: attribute_mapper_ast_dep_eval.hpp:33
x3::variant< ast::nil, uint32_t, float, x3::forward_ast< attribute >, x3::forward_ast< signed_ >, x3::forward_ast< expression >, x3::forward_ast< condition >, x3::forward_ast< function_invokation > > operand
Operands.
Definition: attribute_mapper_ast.hpp:95
char value_type_t
Definition: attribute_mapper_ast_dep_eval.hpp:31
std::pair< attribute_store_type_t, value_type_t > attribute_dependency_t
Definition: attribute_mapper_ast_dep_eval.hpp:32
Attribute path subscript.
Definition: attribute_mapper_ast.hpp:160
Attribute.
Definition: attribute_mapper_ast.hpp:177
Condition.
Definition: attribute_mapper_ast.hpp:147
Expression.
Definition: attribute_mapper_ast.hpp:134
Built-in function invokation Example : fn_min_value(r'3, 5, d'5 or 20)
Definition: attribute_mapper_ast.hpp:209
Definition: attribute_mapper_ast.hpp:42
Operation An operation consists of an operator and an right hand side operand. When operations are ev...
Definition: attribute_mapper_ast.hpp:123
Uniary signed operand.
Definition: attribute_mapper_ast.hpp:111