Storm
1.14.0.1
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
HashVisitor.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <cstddef>
4
5
#include "
storm/storage/expressions/ExpressionVisitor.h
"
6
7
namespace
storm
{
8
namespace
expressions
{
9
10
class
Expression
;
11
class
BaseExpression
;
12
21
class
HashVisitor
:
public
ExpressionVisitor
{
22
private
:
27
std::size_t hashExpression(
BaseExpression
const
& expression);
28
29
public
:
33
std::size_t
hash
(
storm::expressions::Expression
const
& expression);
34
35
virtual
boost::any
visit
(
IfThenElseExpression
const
& expression, boost::any
const
& data)
override
;
36
virtual
boost::any
visit
(
BinaryBooleanFunctionExpression
const
& expression, boost::any
const
& data)
override
;
37
virtual
boost::any
visit
(
BinaryNumericalFunctionExpression
const
& expression, boost::any
const
& data)
override
;
38
virtual
boost::any
visit
(
BinaryRelationExpression
const
& expression, boost::any
const
& data)
override
;
39
virtual
boost::any
visit
(
VariableExpression
const
& expression, boost::any
const
& data)
override
;
40
virtual
boost::any
visit
(
UnaryBooleanFunctionExpression
const
& expression, boost::any
const
& data)
override
;
41
virtual
boost::any
visit
(
UnaryNumericalFunctionExpression
const
& expression, boost::any
const
& data)
override
;
42
virtual
boost::any
visit
(
BooleanLiteralExpression
const
& expression, boost::any
const
& data)
override
;
43
virtual
boost::any
visit
(
IntegerLiteralExpression
const
& expression, boost::any
const
& data)
override
;
44
virtual
boost::any
visit
(
RationalLiteralExpression
const
& expression, boost::any
const
& data)
override
;
45
virtual
boost::any
visit
(
PredicateExpression
const
& expression, boost::any
const
& data)
override
;
46
};
47
48
}
// namespace expressions
49
}
// namespace storm
ExpressionVisitor.h
storm::expressions::BaseExpression
The base class of all expression classes.
Definition
BaseExpression.h:42
storm::expressions::BinaryBooleanFunctionExpression
Definition
BinaryBooleanFunctionExpression.h:8
storm::expressions::BinaryNumericalFunctionExpression
Definition
BinaryNumericalFunctionExpression.h:8
storm::expressions::BinaryRelationExpression
Definition
BinaryRelationExpression.h:8
storm::expressions::BooleanLiteralExpression
Definition
BooleanLiteralExpression.h:8
storm::expressions::Expression
Definition
Expression.h:23
storm::expressions::ExpressionVisitor
Definition
ExpressionVisitor.h:21
storm::expressions::HashVisitor
Computes a hash of an expression such that syntactically equal expressions hash to the same value.
Definition
HashVisitor.h:21
storm::expressions::HashVisitor::visit
virtual boost::any visit(IfThenElseExpression const &expression, boost::any const &data) override
Definition
HashVisitor.cpp:42
storm::expressions::HashVisitor::hash
std::size_t hash(storm::expressions::Expression const &expression)
Computes the hash of the given expression.
Definition
HashVisitor.cpp:34
storm::expressions::IfThenElseExpression
Definition
IfThenElseExpression.h:8
storm::expressions::IntegerLiteralExpression
Definition
IntegerLiteralExpression.h:8
storm::expressions::PredicateExpression
The base class of all binary expressions.
Definition
PredicateExpression.h:11
storm::expressions::RationalLiteralExpression
Definition
RationalLiteralExpression.h:8
storm::expressions::UnaryBooleanFunctionExpression
Definition
UnaryBooleanFunctionExpression.h:8
storm::expressions::UnaryNumericalFunctionExpression
Definition
UnaryNumericalFunctionExpression.h:8
storm::expressions::VariableExpression
Definition
VariableExpression.h:9
storm::expressions
Definition
AbstractionInformation.h:17
storm
Definition
AutomaticSettings.cpp:13
src
storm
storage
expressions
HashVisitor.h
Generated by
1.15.0