24 virtual void gatherVariables(std::set<storm::expressions::Variable>& variables)
const override;
26 virtual std::shared_ptr<BaseExpression const>
simplify()
const override;
30 virtual std::shared_ptr<BaseExpression const>
size()
const override;
33 virtual std::shared_ptr<BaseExpression const>
at(uint64_t i)
const override;
39 virtual void printToStream(std::ostream& stream)
const override;
42 std::shared_ptr<BaseExpression const> sizeExpression;
44 std::shared_ptr<BaseExpression const> elementExpression;
The base class of all array expressions.
Represents an array of the given size, where the i'th entry is determined by the elementExpression,...
virtual std::shared_ptr< BaseExpression const > size() const override
virtual void printToStream(std::ostream &stream) const override
Prints the expression to the given stream.
ConstructorArrayExpression(ConstructorArrayExpression 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 std::shared_ptr< BaseExpression const > at(uint64_t i) const override
virtual ~ConstructorArrayExpression()=default
virtual bool containsVariables() const override
Retrieves whether the expression contains a variable.
virtual void gatherVariables(std::set< storm::expressions::Variable > &variables) const override
Retrieves the set of all variables that appear in the expression.
ConstructorArrayExpression(ConstructorArrayExpression &&)=default
ConstructorArrayExpression & operator=(ConstructorArrayExpression const &other)=delete
virtual std::shared_ptr< BaseExpression const > simplify() const override
Simplifies the expression according to some simple rules.
std::shared_ptr< BaseExpression const > const & getElementExpression() const
ConstructorArrayExpression & operator=(ConstructorArrayExpression &&)=delete
storm::expressions::Variable const & getIndexVar() const
This class is responsible for managing a set of typed variables and all expressions using these varia...