Zigbee Protocol Controller 1.6.0
|
Dependency evaluator. More...
#include <attribute_mapper_ast_dep_eval.hpp>
Public Member Functions | |
const dependencies_t & | operator() (nil) |
const dependencies_t & | operator() (uint32_t) |
const dependencies_t & | operator() (float) |
const dependencies_t & | operator() (const attribute &a) |
const dependencies_t & | operator() (const operation &x) |
const dependencies_t & | operator() (const signed_ &x) |
const dependencies_t & | operator() (const condition &x) |
const dependencies_t & | operator() (const function_invokation &f) |
const dependencies_t & | operator() (const expression &x) |
This is the normal entry point of the evaluator. More... | |
const dependencies_t & | get_dependencies () const |
Get the list of dependencies. More... | |
Private Attributes | |
dependencies_t | dependencies |
Dependency evaluator.
This evaluator goes through an AST starting with an expression and builds a list of attribute id's that are used if the expression is to be evaluated. Note that this evaluator accumulates a list of dependencies. Ie. each instance of this class should only be used once. Otherwise the result will be a combined set of dependencies for each expression this evaluator has been applied on.
const dependencies_t & ast::dep_eval::get_dependencies | ( | ) | const |
Get the list of dependencies.
const dependencies_t & ast::dep_eval::operator() | ( | const attribute & | a | ) |
const dependencies_t & ast::dep_eval::operator() | ( | const condition & | x | ) |
const dependencies_t & ast::dep_eval::operator() | ( | const expression & | x | ) |
This is the normal entry point of the evaluator.
x | Top level expression to start from |
const dependencies_t & ast::dep_eval::operator() | ( | const function_invokation & | f | ) |
const dependencies_t & ast::dep_eval::operator() | ( | const operation & | x | ) |
const dependencies_t & ast::dep_eval::operator() | ( | const signed_ & | x | ) |
|
inline |
|
inline |
|
inline |
|
private |