| 
    MADARA
    3.1.8
    
   | 
 
Defines a terminal node of that references the current value stored in a variable. More...
#include <VariableIncrementNode.h>


Public Member Functions | |
| VariableIncrementNode (ComponentNode *lhs, madara::knowledge::KnowledgeRecord value, ComponentNode *rhs, madara::knowledge::ThreadSafeContext &context) | |
| Ctor.  More... | |
| virtual | ~VariableIncrementNode (void) | 
| Dtor.  More... | |
| virtual void | accept (Visitor &visitor) const | 
| Define the accept() operation used for the Visitor pattern.  More... | |
| virtual madara::knowledge::KnowledgeRecord | evaluate (const madara::knowledge::KnowledgeUpdateSettings &settings) | 
| Evaluates the node and its children.  More... | |
| std::string | expand_key (void) const | 
| Expands the key (if necessary).  More... | |
| virtual madara::knowledge::KnowledgeRecord | item (void) const | 
| Return the item stored in the node.  More... | |
| const std::string & | key (void) const | 
| Return the variable key.  More... | |
| virtual ComponentNode * | left (void) const | 
| Returns the left expression.  More... | |
| virtual madara::knowledge::KnowledgeRecord | prune (bool &can_change) | 
| Prune the tree of unnecessary nodes.  More... | |
| virtual ComponentNode * | right (void) const | 
| Returns the right expression.  More... | |
| void | set_logger (logger::Logger &logger) | 
| Sets the logger for printing errors and debugging info.  More... | |
Protected Attributes | |
| logger::Logger * | logger_ | 
| handle the context  More... | |
Private Attributes | |
| CompositeArrayReference * | array_ | 
| variable index holder  More... | |
| madara::knowledge::ThreadSafeContext & | context_ | 
| ComponentNode * | rhs_ | 
| holds a right hand side argument if it is not value_  More... | |
| madara::knowledge::KnowledgeRecord | value_ | 
| amount to increment by. Note that this can also do decrement.  More... | |
| VariableNode * | var_ | 
| variable holder  More... | |
Defines a terminal node of that references the current value stored in a variable.
Definition at line 29 of file VariableIncrementNode.h.
| madara::expression::VariableIncrementNode::VariableIncrementNode | ( | ComponentNode * | lhs, | 
| madara::knowledge::KnowledgeRecord | value, | ||
| ComponentNode * | rhs, | ||
| madara::knowledge::ThreadSafeContext & | context | ||
| ) | 
Ctor.
Definition at line 12 of file VariableIncrementNode.cpp.
      
  | 
  virtual | 
Dtor.
Definition at line 25 of file VariableIncrementNode.cpp.
      
  | 
  virtual | 
Define the accept() operation used for the Visitor pattern.
Reimplemented from madara::expression::ComponentNode.
Definition at line 31 of file VariableIncrementNode.cpp.
      
  | 
  virtual | 
Evaluates the node and its children.
This does not prune any of the expression tree, and is much faster than the prune function
Implements madara::expression::ComponentNode.
Definition at line 94 of file VariableIncrementNode.cpp.
| std::string madara::expression::VariableIncrementNode::expand_key | ( | void | ) | const | 
Expands the key (if necessary).
This allow for keys to be defined with other variables inserted (e.g. var{.id} with .id = 2 expands to var2)
      
  | 
  virtual | 
Return the item stored in the node.
Reimplemented from madara::expression::ComponentNode.
Definition at line 37 of file VariableIncrementNode.cpp.
| const std::string& madara::expression::VariableIncrementNode::key | ( | void | ) | const | 
Return the variable key.
      
  | 
  virtualinherited | 
Returns the left expression.
Reimplemented in madara::expression::CompositeBinaryNode.
Definition at line 34 of file ComponentNode.cpp.
      
  | 
  virtual | 
Prune the tree of unnecessary nodes.
Returns evaluation of the node and sets can_change appropriately. if this node can be changed, that means it shouldn't be pruned.
Implements madara::expression::ComponentNode.
Definition at line 53 of file VariableIncrementNode.cpp.
      
  | 
  virtualinherited | 
Returns the right expression.
Reimplemented in madara::expression::CompositeUnaryNode.
Definition at line 41 of file ComponentNode.cpp.
      
  | 
  inherited | 
Sets the logger for printing errors and debugging info.
| logger | the logger to use | 
Definition at line 53 of file ComponentNode.cpp.
      
  | 
  private | 
variable index holder
Definition at line 70 of file VariableIncrementNode.h.
      
  | 
  private | 
Definition at line 78 of file VariableIncrementNode.h.
      
  | 
  protectedinherited | 
handle the context
Definition at line 96 of file ComponentNode.h.
      
  | 
  private | 
holds a right hand side argument if it is not value_
Definition at line 76 of file VariableIncrementNode.h.
      
  | 
  private | 
amount to increment by. Note that this can also do decrement.
Definition at line 73 of file VariableIncrementNode.h.
      
  | 
  private | 
variable holder
Definition at line 67 of file VariableIncrementNode.h.