MADARA  3.4.1
madara::expression::Function Class Reference

Function node of the parse tree. More...

Inheritance diagram for madara::expression::Function:
madara::expression::TernaryOperator madara::expression::Operator madara::expression::Symbol

Public Member Functions

 Function (const std::string &name, madara::knowledge::ThreadSafeContext &context)
 constructor More...
 
virtual ~Function (void)
 destructor More...
 
virtual int add_precedence (int accumulated_precedence)
 returns the precedence level More...
 
virtual ComponentNodebuild (void)
 builds an equivalent ExpressionTree node More...
 
virtual int precedence (void)
 abstract method for returning precedence level (higher value means higher precedence More...
 

Public Attributes

madara::knowledge::ThreadSafeContextcontext_
 
Symbolleft_
 
logger::Loggerlogger_
 left and right pointers More...
 
std::string name_
 
ComponentNodes nodes_
 
int precedence_
 
Symbolright_
 

Detailed Description

Function node of the parse tree.

Definition at line 1547 of file Interpreter.cpp.

Constructor & Destructor Documentation

◆ Function()

madara::expression::Function::Function ( const std::string &  name,
madara::knowledge::ThreadSafeContext context 
)

constructor

Definition at line 2032 of file Interpreter.cpp.

◆ ~Function()

madara::expression::Function::~Function ( void  )
virtual

destructor

Definition at line 2041 of file Interpreter.cpp.

Member Function Documentation

◆ add_precedence()

int madara::expression::Function::add_precedence ( int  accumulated_precedence)
virtual

returns the precedence level

Implements madara::expression::Symbol.

Definition at line 2044 of file Interpreter.cpp.

◆ build()

madara::expression::ComponentNode * madara::expression::Function::build ( void  )
virtual

builds an equivalent ExpressionTree node

Implements madara::expression::Symbol.

Definition at line 2050 of file Interpreter.cpp.

◆ precedence()

virtual int madara::expression::Symbol::precedence ( void  )
inlinevirtualinherited

abstract method for returning precedence level (higher value means higher precedence

Definition at line 132 of file Interpreter.cpp.

Member Data Documentation

◆ context_

madara::knowledge::ThreadSafeContext& madara::expression::Function::context_

Definition at line 1565 of file Interpreter.cpp.

◆ left_

Symbol* madara::expression::Symbol::left_
inherited

Definition at line 146 of file Interpreter.cpp.

◆ logger_

logger::Logger* madara::expression::Symbol::logger_
inherited

left and right pointers

Definition at line 145 of file Interpreter.cpp.

◆ name_

std::string madara::expression::Function::name_

Definition at line 1564 of file Interpreter.cpp.

◆ nodes_

ComponentNodes madara::expression::TernaryOperator::nodes_
inherited

Definition at line 184 of file Interpreter.cpp.

◆ precedence_

int madara::expression::Symbol::precedence_
inherited

Definition at line 148 of file Interpreter.cpp.

◆ right_

Symbol* madara::expression::Symbol::right_
inherited

Definition at line 147 of file Interpreter.cpp.


The documentation for this class was generated from the following file: