Storm
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
UnaryBooleanFunctionExpression.h
Go to the documentation of this file.
1#ifndef STORM_STORAGE_EXPRESSIONS_UNARYBOOLEANFUNCTIONEXPRESSION_H_
2#define STORM_STORAGE_EXPRESSIONS_UNARYBOOLEANFUNCTIONEXPRESSION_H_
3
6
7namespace storm {
8namespace expressions {
10 public:
14 enum class OperatorType { Not };
15
24 UnaryBooleanFunctionExpression(ExpressionManager const& manager, Type const& type, std::shared_ptr<BaseExpression const> const& operand,
25 OperatorType operatorType);
26
27 // Instantiate constructors and assignments with their default implementations.
33
34 // Override base class methods.
35 virtual storm::expressions::OperatorType getOperator() const override;
36 virtual bool evaluateAsBool(Valuation const* valuation = nullptr) const override;
37 virtual std::shared_ptr<BaseExpression const> simplify() const override;
38 virtual boost::any accept(ExpressionVisitor& visitor, boost::any const& data) const override;
39 virtual bool isUnaryBooleanFunctionExpression() const override;
40
47
48 protected:
49 // Override base class method.
50 virtual void printToStream(std::ostream& stream) const override;
51
52 private:
53 // The operator of this expression.
54 OperatorType operatorType;
55};
56} // namespace expressions
57} // namespace storm
58
59#endif /* STORM_STORAGE_EXPRESSIONS_UNARYBOOLEANFUNCTIONEXPRESSION_H_ */
This class is responsible for managing a set of typed variables and all expressions using these varia...
UnaryBooleanFunctionExpression(UnaryBooleanFunctionExpression &&)=default
virtual std::shared_ptr< BaseExpression const > simplify() const override
Simplifies the expression according to some simple rules.
OperatorType getOperatorType() const
Retrieves the operator associated with this expression.
UnaryBooleanFunctionExpression & operator=(UnaryBooleanFunctionExpression const &other)=delete
OperatorType
An enum type specifying the different functions applicable.
UnaryBooleanFunctionExpression(UnaryBooleanFunctionExpression const &other)=default
virtual boost::any accept(ExpressionVisitor &visitor, boost::any const &data) const override
Accepts the given visitor by calling its visit method.
virtual bool evaluateAsBool(Valuation const *valuation=nullptr) const override
Evaluates the expression under the valuation of unknowns (variables and constants) given by the valua...
virtual storm::expressions::OperatorType getOperator() const override
Retrieves the operator of a function application.
UnaryBooleanFunctionExpression & operator=(UnaryBooleanFunctionExpression &&)=delete
virtual void printToStream(std::ostream &stream) const override
Prints the expression to the given stream.
The base class of all valuations of variables.
Definition Valuation.h:16
LabParser.cpp.
Definition cli.cpp:18