3#include <boost/variant.hpp>
24 boost::variant<uint64_t, std::vector<ArrayVariableReplacementInformation>> data;
27template<
typename InfoType>
29 InfoType
const& relevantVariableInfo) {
33 for (
auto const& info : relevantVariableInfo) {
34 if (info.variable == replVar) {
40 "Could not find a basic variable for replacement of array variable " << replVar.getName() <<
" .");
42 std::vector<ArrayVariableReplacementInformation> result;
43 result.reserve(replacement.
size());
std::vector< Replacement > const & getReplacements() const
storm::jani::Variable const & getVariable() const
std::size_t size() const
equivalent to .at(i_1).at(i_2). ... .at(i_n) if indices = {i_1,i_2, ... i_n}
storm::expressions::Variable const & getExpressionVariable() const
Retrieves the associated expression variable.
#define STORM_LOG_THROW(cond, exception, message)
ArrayVariableReplacementInformation convertArrayReplacement(typename storm::jani::ArrayEliminatorData::Replacement const &replacement, InfoType const &relevantVariableInfo)