Storm
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
ArrayExpression.h
Go to the documentation of this file.
1#pragma once
2
4
5namespace storm {
6namespace expressions {
11 public:
12 ArrayExpression(ExpressionManager const& manager, Type const& type);
13
14 // Instantiate constructors and assignments with their default implementations.
15 ArrayExpression(ArrayExpression const& other) = default;
16 ArrayExpression& operator=(ArrayExpression const& other) = delete;
19
20 virtual ~ArrayExpression() = default;
21
22 // Returns the size of the array
23 virtual std::shared_ptr<BaseExpression const> size() const = 0;
24
25 // Returns the element at position i
26 virtual std::shared_ptr<BaseExpression const> at(uint64_t i) const = 0;
27};
28} // namespace expressions
29} // namespace storm
The base class of all array expressions.
virtual std::shared_ptr< BaseExpression const > size() const =0
virtual std::shared_ptr< BaseExpression const > at(uint64_t i) const =0
ArrayExpression(ArrayExpression const &other)=default
ArrayExpression & operator=(ArrayExpression &&)=delete
ArrayExpression(ArrayExpression &&)=default
ArrayExpression & operator=(ArrayExpression const &other)=delete
The base class of all expression classes.
This class is responsible for managing a set of typed variables and all expressions using these varia...
LabParser.cpp.
Definition cli.cpp:18