Expression Evaluation

API: Expression Evaluation
API
Expression Evaluation

Classes

class  cDynamicExpression
 A stack-based expression evaluator class, for dynamically created expressions. More...
class  cOwnedDynamicExpression
 An "owned" version cDynamicExpression to allow it to be assigned to module parameters of the type "object". More...
class  cExpression
 Abstract base class for expression evaluators. More...
class  cMatchExpression
 Decides whether an object matches an expression. More...
class  cMatchExpression::Matchable
 Objects to be matched must implement this interface. More...
class  cMatchableString
 Wrapper to make a string matchable with cMatchExpression. More...
class  cValue
 A variant-like value class used during evaluating NED expressions. More...
class  cValueArray
 Container class based on std::vector<cValue> objects. More...
class  cValueContainer
 Common base class for cValue-based containers. More...
class  cValueHolder
 cOwnedObject-based container/wrapper to hold a single cValue. More...
class  cValueMap
 Key-value container class based on std::map<std::string,cValue>. More...
class  cXMLElement
 Represents an XML element in an XML configuration file. More...

Description

Classes related to evaluating generic/arithmetic expressions and match expressions.

  • cExpression encapsulates an expression that can be evaluated. This is an abstract base class.
  • cDynamicExpression subclasses cExpression, and implements an expression parsed at runtime
  • cMatchExpression allows matching objects against a filter expression
  • cValue is a variant-style value class for representing intermediate results during expression evaluation
  • cValueMap, cValueArray, cValueHolder are container classes that represent elements in a JSON-style data structure that certain expressions may produce as result
  • cXmlElement represents an XML element