Storm 1.14.0.1
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
SubstitutionVisitor.h
Go to the documentation of this file.
1#pragma once
2
3#include <stack>
4
7
8namespace storm {
9namespace expressions {
10template<typename MapType>
12 public:
19
28 Expression substitute(Expression const& expression);
29
30 virtual boost::any visit(IfThenElseExpression const& expression, boost::any const& data) override;
31 virtual boost::any visit(BinaryBooleanFunctionExpression const& expression, boost::any const& data) override;
32 virtual boost::any visit(BinaryNumericalFunctionExpression const& expression, boost::any const& data) override;
33 virtual boost::any visit(BinaryRelationExpression const& expression, boost::any const& data) override;
34 virtual boost::any visit(VariableExpression const& expression, boost::any const& data) override;
35 virtual boost::any visit(UnaryBooleanFunctionExpression const& expression, boost::any const& data) override;
36 virtual boost::any visit(UnaryNumericalFunctionExpression const& expression, boost::any const& data) override;
37 virtual boost::any visit(BooleanLiteralExpression const& expression, boost::any const& data) override;
38 virtual boost::any visit(IntegerLiteralExpression const& expression, boost::any const& data) override;
39 virtual boost::any visit(RationalLiteralExpression const& expression, boost::any const& data) override;
40 virtual boost::any visit(PredicateExpression const& expression, boost::any const& data) override;
41
42 protected:
43 // A mapping of variables to expressions with which they shall be replaced.
45};
46} // namespace expressions
47} // namespace storm
The base class of all binary expressions.
Expression substitute(Expression const &expression)
Substitutes the identifiers in the given expression according to the previously given map and returns...
virtual boost::any visit(IfThenElseExpression const &expression, boost::any const &data) override
SubstitutionVisitor(MapType const &variableToExpressionMapping)
Creates a new substitution visitor that uses the given map to replace variables.