Storm 1.14.0.1
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
storm::parser::ExpressionCreator Class Reference

#include <ExpressionCreator.h>

Public Member Functions

 ExpressionCreator (storm::expressions::ExpressionManager const &manager)
 ~ExpressionCreator ()
void setIdentifierMapping (qi::symbols< char, storm::expressions::Expression > const *identifiers_)
 Sets an identifier mapping that is used to determine valid variables in the expression.
void setIdentifierMapping (std::unordered_map< std::string, storm::expressions::Expression > const &identifierMapping)
 Sets an identifier mapping that is used to determine valid variables in the expression.
void unsetIdentifierMapping ()
 Unsets a previously set identifier mapping.
bool getAcceptDoubleLiterals () const
void setAcceptDoubleLiterals (bool set=true)
storm::expressions::Expression createIteExpression (storm::expressions::Expression const &e1, storm::expressions::Expression const &e2, storm::expressions::Expression const &e3, bool &pass) const
storm::expressions::Expression createOrExpression (storm::expressions::Expression const &e1, storm::expressions::OperatorType const &operatorType, storm::expressions::Expression const &e2, bool &pass) const
storm::expressions::Expression createAndExpression (storm::expressions::Expression const &e1, storm::expressions::OperatorType const &operatorType, storm::expressions::Expression const &e2, bool &pass) const
storm::expressions::Expression createRelationalExpression (storm::expressions::Expression const &e1, storm::expressions::OperatorType const &operatorType, storm::expressions::Expression const &e2, bool &pass) const
storm::expressions::Expression createEqualsExpression (storm::expressions::Expression const &e1, storm::expressions::OperatorType const &operatorType, storm::expressions::Expression const &e2, bool &pass) const
storm::expressions::Expression createPlusExpression (storm::expressions::Expression const &e1, storm::expressions::OperatorType const &operatorType, storm::expressions::Expression const &e2, bool &pass) const
storm::expressions::Expression createMultExpression (storm::expressions::Expression const &e1, storm::expressions::OperatorType const &operatorType, storm::expressions::Expression const &e2, bool &pass) const
storm::expressions::Expression createPowerModuloLogarithmExpression (storm::expressions::Expression const &e1, storm::expressions::OperatorType const &operatorType, storm::expressions::Expression const &e2, bool &pass) const
storm::expressions::Expression createUnaryExpression (std::vector< storm::expressions::OperatorType > const &operatorType, storm::expressions::Expression const &e1, bool &pass) const
storm::expressions::Expression createRationalLiteralExpression (storm::RationalNumber const &value, bool &pass) const
storm::expressions::Expression createIntegerLiteralExpression (storm::RationalNumber const &value, bool &pass, bool &overflow) const
storm::expressions::Expression createBooleanLiteralExpression (bool value, bool &pass) const
storm::expressions::Expression createMinimumMaximumExpression (storm::expressions::Expression const &e1, storm::expressions::OperatorType const &operatorType, storm::expressions::Expression const &e2, bool &pass) const
storm::expressions::Expression createFloorCeilExpression (storm::expressions::OperatorType const &operatorType, storm::expressions::Expression const &e1, bool &pass) const
storm::expressions::Expression createRoundExpression (storm::expressions::Expression const &e1, bool &pass) const
storm::expressions::Expression getIdentifierExpression (std::string const &identifier, bool &pass) const
storm::expressions::Expression createPredicateExpression (storm::expressions::OperatorType const &opTyp, std::vector< storm::expressions::Expression > const &operands, bool &pass) const

Detailed Description

Definition at line 17 of file ExpressionCreator.h.

Constructor & Destructor Documentation

◆ ExpressionCreator()

storm::parser::ExpressionCreator::ExpressionCreator ( storm::expressions::ExpressionManager const & manager)

Definition at line 15 of file ExpressionCreator.cpp.

◆ ~ExpressionCreator()

storm::parser::ExpressionCreator::~ExpressionCreator ( )

Definition at line 19 of file ExpressionCreator.cpp.

Member Function Documentation

◆ createAndExpression()

storm::expressions::Expression storm::parser::ExpressionCreator::createAndExpression ( storm::expressions::Expression const & e1,
storm::expressions::OperatorType const & operatorType,
storm::expressions::Expression const & e2,
bool & pass ) const

Definition at line 60 of file ExpressionCreator.cpp.

◆ createBooleanLiteralExpression()

storm::expressions::Expression storm::parser::ExpressionCreator::createBooleanLiteralExpression ( bool value,
bool & pass ) const

Definition at line 246 of file ExpressionCreator.cpp.

◆ createEqualsExpression()

storm::expressions::Expression storm::parser::ExpressionCreator::createEqualsExpression ( storm::expressions::Expression const & e1,
storm::expressions::OperatorType const & operatorType,
storm::expressions::Expression const & e2,
bool & pass ) const

Definition at line 104 of file ExpressionCreator.cpp.

◆ createFloorCeilExpression()

storm::expressions::Expression storm::parser::ExpressionCreator::createFloorCeilExpression ( storm::expressions::OperatorType const & operatorType,
storm::expressions::Expression const & e1,
bool & pass ) const

Definition at line 275 of file ExpressionCreator.cpp.

◆ createIntegerLiteralExpression()

storm::expressions::Expression storm::parser::ExpressionCreator::createIntegerLiteralExpression ( storm::RationalNumber const & value,
bool & pass,
bool & overflow ) const

Definition at line 229 of file ExpressionCreator.cpp.

◆ createIteExpression()

storm::expressions::Expression storm::parser::ExpressionCreator::createIteExpression ( storm::expressions::Expression const & e1,
storm::expressions::Expression const & e2,
storm::expressions::Expression const & e3,
bool & pass ) const

Definition at line 25 of file ExpressionCreator.cpp.

◆ createMinimumMaximumExpression()

storm::expressions::Expression storm::parser::ExpressionCreator::createMinimumMaximumExpression ( storm::expressions::Expression const & e1,
storm::expressions::OperatorType const & operatorType,
storm::expressions::Expression const & e2,
bool & pass ) const

Definition at line 254 of file ExpressionCreator.cpp.

◆ createMultExpression()

storm::expressions::Expression storm::parser::ExpressionCreator::createMultExpression ( storm::expressions::Expression const & e1,
storm::expressions::OperatorType const & operatorType,
storm::expressions::Expression const & e2,
bool & pass ) const

Definition at line 146 of file ExpressionCreator.cpp.

◆ createOrExpression()

storm::expressions::Expression storm::parser::ExpressionCreator::createOrExpression ( storm::expressions::Expression const & e1,
storm::expressions::OperatorType const & operatorType,
storm::expressions::Expression const & e2,
bool & pass ) const

Definition at line 39 of file ExpressionCreator.cpp.

◆ createPlusExpression()

storm::expressions::Expression storm::parser::ExpressionCreator::createPlusExpression ( storm::expressions::Expression const & e1,
storm::expressions::OperatorType const & operatorType,
storm::expressions::Expression const & e2,
bool & pass ) const

Definition at line 125 of file ExpressionCreator.cpp.

◆ createPowerModuloLogarithmExpression()

storm::expressions::Expression storm::parser::ExpressionCreator::createPowerModuloLogarithmExpression ( storm::expressions::Expression const & e1,
storm::expressions::OperatorType const & operatorType,
storm::expressions::Expression const & e2,
bool & pass ) const

Definition at line 167 of file ExpressionCreator.cpp.

◆ createPredicateExpression()

storm::expressions::Expression storm::parser::ExpressionCreator::createPredicateExpression ( storm::expressions::OperatorType const & opTyp,
std::vector< storm::expressions::Expression > const & operands,
bool & pass ) const

Definition at line 306 of file ExpressionCreator.cpp.

◆ createRationalLiteralExpression()

storm::expressions::Expression storm::parser::ExpressionCreator::createRationalLiteralExpression ( storm::RationalNumber const & value,
bool & pass ) const

Definition at line 216 of file ExpressionCreator.cpp.

◆ createRelationalExpression()

storm::expressions::Expression storm::parser::ExpressionCreator::createRelationalExpression ( storm::expressions::Expression const & e1,
storm::expressions::OperatorType const & operatorType,
storm::expressions::Expression const & e2,
bool & pass ) const

Definition at line 79 of file ExpressionCreator.cpp.

◆ createRoundExpression()

storm::expressions::Expression storm::parser::ExpressionCreator::createRoundExpression ( storm::expressions::Expression const & e1,
bool & pass ) const

Definition at line 295 of file ExpressionCreator.cpp.

◆ createUnaryExpression()

storm::expressions::Expression storm::parser::ExpressionCreator::createUnaryExpression ( std::vector< storm::expressions::OperatorType > const & operatorType,
storm::expressions::Expression const & e1,
bool & pass ) const

Definition at line 190 of file ExpressionCreator.cpp.

◆ getAcceptDoubleLiterals()

bool storm::parser::ExpressionCreator::getAcceptDoubleLiterals ( ) const
inline

Definition at line 47 of file ExpressionCreator.h.

◆ getIdentifierExpression()

storm::expressions::Expression storm::parser::ExpressionCreator::getIdentifierExpression ( std::string const & identifier,
bool & pass ) const

Definition at line 327 of file ExpressionCreator.cpp.

◆ setAcceptDoubleLiterals()

void storm::parser::ExpressionCreator::setAcceptDoubleLiterals ( bool set = true)
inline

Definition at line 51 of file ExpressionCreator.h.

◆ setIdentifierMapping() [1/2]

void storm::parser::ExpressionCreator::setIdentifierMapping ( qi::symbols< char, storm::expressions::Expression > const * identifiers_)

Sets an identifier mapping that is used to determine valid variables in the expression.

The mapped-to expressions will be substituted wherever the key value appears in the parsed expression. After setting this, the parser will generate expressions.

Parameters
identifiers_A pointer to a mapping from identifiers to expressions.

Definition at line 342 of file ExpressionCreator.cpp.

◆ setIdentifierMapping() [2/2]

void storm::parser::ExpressionCreator::setIdentifierMapping ( std::unordered_map< std::string, storm::expressions::Expression > const & identifierMapping)

Sets an identifier mapping that is used to determine valid variables in the expression.

The mapped-to expressions will be substituted wherever the key value appears in the parsed expression. After setting this, the parser will generate expressions.

Parameters
identifierMappingA mapping from identifiers to expressions.

Definition at line 352 of file ExpressionCreator.cpp.

◆ unsetIdentifierMapping()

void storm::parser::ExpressionCreator::unsetIdentifierMapping ( )

Unsets a previously set identifier mapping.

This will make the parser not generate expressions any more but merely check for syntactic correctness of an expression.

Definition at line 363 of file ExpressionCreator.cpp.


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