Nektar++
Classes | Public Member Functions | Static Public Attributes | Private Attributes | List of all members
Nektar::LibUtilities::Interpreter::ExpressionEvaluator::AnalyticExpression Class Reference
Inheritance diagram for Nektar::LibUtilities::Interpreter::ExpressionEvaluator::AnalyticExpression:
[legend]

Classes

struct  definition
 
struct  variables
 

Public Member Functions

 AnalyticExpression (const bsp::symbols< NekDouble > *constants, const std::vector< std::string > &variables)
 
 ~AnalyticExpression ()
 

Static Public Attributes

static const int constantID = 1
 
static const int numberID = 2
 
static const int variableID = 3
 
static const int parameterID = 4
 
static const int functionID = 5
 
static const int unaryID = 6
 
static const int operatorID = 7
 

Private Attributes

const bsp::symbols< NekDouble > * constants_p
 
Nektar::LibUtilities::Interpreter::ExpressionEvaluator::AnalyticExpression::variables variables_p
 

Detailed Description

This is the class that is used as the grammar parser for the spirit engine.

Definition at line 1104 of file Interpreter/Interpreter.cpp.

Constructor & Destructor Documentation

◆ AnalyticExpression()

Nektar::LibUtilities::Interpreter::ExpressionEvaluator::AnalyticExpression::AnalyticExpression ( const bsp::symbols< NekDouble > *  constants,
const std::vector< std::string > &  variables 
)
inline

Definition at line 1134 of file Interpreter/Interpreter.cpp.

1136 : bsp::grammar<AnalyticExpression>(), constants_p(constants),
1137 variables_p(variables)
1138 {
1139 }
Nektar::LibUtilities::Interpreter::ExpressionEvaluator::AnalyticExpression::variables variables_p

◆ ~AnalyticExpression()

Nektar::LibUtilities::Interpreter::ExpressionEvaluator::AnalyticExpression::~AnalyticExpression ( )
inline

Definition at line 1143 of file Interpreter/Interpreter.cpp.

1144 {
1145 constants_p = nullptr;
1146 }

References constants_p.

Member Data Documentation

◆ constantID

const int Nektar::LibUtilities::Interpreter::ExpressionEvaluator::AnalyticExpression::constantID = 1
static

These constants are used to determine what parser was used to parse what value, which allows for type identification when analyzing the parsed AST.

Definition at line 1126 of file Interpreter/Interpreter.cpp.

Referenced by Nektar::LibUtilities::Interpreter::ExpressionEvaluator::PrepareExecutionAsYouParse().

◆ constants_p

const bsp::symbols<NekDouble>* Nektar::LibUtilities::Interpreter::ExpressionEvaluator::AnalyticExpression::constants_p
private

◆ functionID

const int Nektar::LibUtilities::Interpreter::ExpressionEvaluator::AnalyticExpression::functionID = 5
static

◆ numberID

const int Nektar::LibUtilities::Interpreter::ExpressionEvaluator::AnalyticExpression::numberID = 2
static

◆ operatorID

const int Nektar::LibUtilities::Interpreter::ExpressionEvaluator::AnalyticExpression::operatorID = 7
static

◆ parameterID

const int Nektar::LibUtilities::Interpreter::ExpressionEvaluator::AnalyticExpression::parameterID = 4
static

◆ unaryID

const int Nektar::LibUtilities::Interpreter::ExpressionEvaluator::AnalyticExpression::unaryID = 6
static

◆ variableID

const int Nektar::LibUtilities::Interpreter::ExpressionEvaluator::AnalyticExpression::variableID = 3
static

◆ variables_p

Nektar::LibUtilities::Interpreter::ExpressionEvaluator::AnalyticExpression::variables Nektar::LibUtilities::Interpreter::ExpressionEvaluator::AnalyticExpression::variables_p
private