41 #include <lifev/core/util/LifeDebug.hpp> 42 #include <lifev/core/util/ParserSpiritGrammar.hpp> 113 explicit Parser (
const std::string& string );
157 UInt countSubstring (
const std::string& substring )
const;
173 void setString (
const std::string& string,
const std::string& stringSeparator =
";" );
180 void setVariable (
const std::string& name,
const Real& value );
193 const Real& variable (
const std::string& name );
Parser(const Parser &parser)
Copy constructor.
void clearVariables()
Clear all the variables.
Parser & operator=(const Parser &parser)
Operator =.
calculator_Type M_calculator
stringsVector_Type M_strings
Parser()
Empty constructor (it needs a manual call to setString)
void updateInverseJacobian(const UInt &iQuadPt)
std::string::const_iterator stringIterator_Type
Type definition for the iterator over the strings.
std::vector< std::string > stringsVector_Type
Type definition for the vector containing the string segments.
Parser - A string parser for algebraic expressions.
virtual ~Parser()
Destructor.
ParserSpiritGrammar< stringIterator_Type > calculator_Type
Type definition for the parser interpreter.
double Real
Generic real data.
calculator_Type::results_Type results_Type
Type definition for the results.
const Real & evaluate(const ID &id=0)
Evaluate the expression.
uint32_type UInt
generic unsigned integer (used mainly for addressing)