Rosetta  2020.37
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Private Attributes | List of all members
numeric::CalculatorParser Class Reference
Inheritance diagram for numeric::CalculatorParser:
Inheritance graph
[legend]

Public Types

typedef qi::rule
< std::string::iterator,
double(), ascii::space_type > 
Rule
 
typedef qi::rule
< std::string::iterator,
std::string(),
ascii::space_type > 
RuleS
 
typedef qi::rule
< std::string::iterator, void(),
ascii::space_type > 
RuleX
 
typedef std::map< std::string,
numeric::Real
Varmap
 

Public Member Functions

 CalculatorParser (Varmap const &variables)
 
void add_symbol (std::string name, double value)
 
Rule parser ()
 

Private Attributes

RuleS varname
 
RuleX assignment
 
Rule expression
 
Rule term
 
Rule exponent
 
Rule factor
 
Rule function
 
Rule parser_
 
qi::symbols< char, doublelocal_vars_
 

Member Typedef Documentation

typedef qi::rule<std::string::iterator, double(), ascii::space_type> numeric::CalculatorParser::Rule
typedef qi::rule<std::string::iterator, std::string(), ascii::space_type> numeric::CalculatorParser::RuleS
typedef qi::rule<std::string::iterator, void(), ascii::space_type> numeric::CalculatorParser::RuleX

Constructor & Destructor Documentation

numeric::CalculatorParser::CalculatorParser ( Varmap const &  variables)
inlineexplicit

Member Function Documentation

void numeric::CalculatorParser::add_symbol ( std::string  name,
double  value 
)
inline

References local_vars_.

Referenced by CalculatorParser(), and numeric::do_add_symbol().

Rule numeric::CalculatorParser::parser ( )
inline

References parser_.

Referenced by numeric::Calculator::compute().

Member Data Documentation

RuleX numeric::CalculatorParser::assignment
private

Referenced by CalculatorParser().

Rule numeric::CalculatorParser::exponent
private

Referenced by CalculatorParser().

Rule numeric::CalculatorParser::expression
private

Referenced by CalculatorParser().

Rule numeric::CalculatorParser::factor
private
Rule numeric::CalculatorParser::function
private
qi::symbols<char, double> numeric::CalculatorParser::local_vars_
private

Referenced by add_symbol(), and CalculatorParser().

Rule numeric::CalculatorParser::parser_
private

Referenced by CalculatorParser(), and parser().

Rule numeric::CalculatorParser::term
private

Referenced by CalculatorParser().

RuleS numeric::CalculatorParser::varname
private

Referenced by CalculatorParser().


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