Storm
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
SubstitutionVisitor.h
Go to the documentation of this file.
1
#ifndef STORM_STORAGE_EXPRESSIONS_SUBSTITUTIONVISITOR_H_
2
#define STORM_STORAGE_EXPRESSIONS_SUBSTITUTIONVISITOR_H_
3
4
#include <stack>
5
6
#include "
storm/storage/expressions/Expression.h
"
7
#include "
storm/storage/expressions/ExpressionVisitor.h
"
8
9
namespace
storm
{
10
namespace
expressions {
11
template
<
typename
MapType>
12
class
SubstitutionVisitor
:
public
ExpressionVisitor
{
13
public
:
19
SubstitutionVisitor
(MapType
const
&
variableToExpressionMapping
);
20
29
Expression
substitute
(
Expression
const
& expression);
30
31
virtual
boost::any
visit
(
IfThenElseExpression
const
& expression, boost::any
const
& data)
override
;
32
virtual
boost::any
visit
(
BinaryBooleanFunctionExpression
const
& expression, boost::any
const
& data)
override
;
33
virtual
boost::any
visit
(
BinaryNumericalFunctionExpression
const
& expression, boost::any
const
& data)
override
;
34
virtual
boost::any
visit
(
BinaryRelationExpression
const
& expression, boost::any
const
& data)
override
;
35
virtual
boost::any
visit
(
VariableExpression
const
& expression, boost::any
const
& data)
override
;
36
virtual
boost::any
visit
(
UnaryBooleanFunctionExpression
const
& expression, boost::any
const
& data)
override
;
37
virtual
boost::any
visit
(
UnaryNumericalFunctionExpression
const
& expression, boost::any
const
& data)
override
;
38
virtual
boost::any
visit
(
BooleanLiteralExpression
const
& expression, boost::any
const
& data)
override
;
39
virtual
boost::any
visit
(
IntegerLiteralExpression
const
& expression, boost::any
const
& data)
override
;
40
virtual
boost::any
visit
(
RationalLiteralExpression
const
& expression, boost::any
const
& data)
override
;
41
virtual
boost::any
visit
(
PredicateExpression
const
& expression, boost::any
const
& data)
override
;
42
43
protected
:
44
// A mapping of variables to expressions with which they shall be replaced.
45
MapType
const
&
variableToExpressionMapping
;
46
};
47
}
// namespace expressions
48
}
// namespace storm
49
50
#endif
/* STORM_STORAGE_EXPRESSIONS_SUBSTITUTIONVISITOR_H_ */
Expression.h
ExpressionVisitor.h
storm::expressions::BinaryBooleanFunctionExpression
Definition
BinaryBooleanFunctionExpression.h:9
storm::expressions::BinaryNumericalFunctionExpression
Definition
BinaryNumericalFunctionExpression.h:9
storm::expressions::BinaryRelationExpression
Definition
BinaryRelationExpression.h:10
storm::expressions::BooleanLiteralExpression
Definition
BooleanLiteralExpression.h:9
storm::expressions::Expression
Definition
Expression.h:22
storm::expressions::ExpressionVisitor
Definition
ExpressionVisitor.h:22
storm::expressions::IfThenElseExpression
Definition
IfThenElseExpression.h:9
storm::expressions::IntegerLiteralExpression
Definition
IntegerLiteralExpression.h:9
storm::expressions::PredicateExpression
The base class of all binary expressions.
Definition
PredicateExpression.h:11
storm::expressions::RationalLiteralExpression
Definition
RationalLiteralExpression.h:11
storm::expressions::SubstitutionVisitor
Definition
SubstitutionVisitor.h:12
storm::expressions::SubstitutionVisitor::variableToExpressionMapping
MapType const & variableToExpressionMapping
Definition
SubstitutionVisitor.h:45
storm::expressions::SubstitutionVisitor::substitute
Expression substitute(Expression const &expression)
Substitutes the identifiers in the given expression according to the previously given map and returns...
Definition
SubstitutionVisitor.cpp:16
storm::expressions::SubstitutionVisitor::visit
virtual boost::any visit(IfThenElseExpression const &expression, boost::any const &data) override
Definition
SubstitutionVisitor.cpp:21
storm::expressions::UnaryBooleanFunctionExpression
Definition
UnaryBooleanFunctionExpression.h:9
storm::expressions::UnaryNumericalFunctionExpression
Definition
UnaryNumericalFunctionExpression.h:9
storm::expressions::VariableExpression
Definition
VariableExpression.h:10
storm
LabParser.cpp.
Definition
cli.cpp:18
src
storm
storage
expressions
SubstitutionVisitor.h
Generated by
1.9.8