Browse Source

JANI: parse assignment index/level

tempestpy_adaptions
Sebastian Junges 8 years ago
parent
commit
d3774f9958
  1. 7
      src/storm/parser/JaniParser.cpp

7
src/storm/parser/JaniParser.cpp

@ -1074,7 +1074,12 @@ namespace storm {
STORM_LOG_THROW(assignmentEntry.count("value") == 1, storm::exceptions::InvalidJaniException, "Assignment in edge from '" << sourceLoc << "' to '" << targetLoc << "' in automaton '" << name << "' must have one value field"); STORM_LOG_THROW(assignmentEntry.count("value") == 1, storm::exceptions::InvalidJaniException, "Assignment in edge from '" << sourceLoc << "' to '" << targetLoc << "' in automaton '" << name << "' must have one value field");
storm::expressions::Expression assignmentExpr = parseExpression(assignmentEntry.at("value"), "assignment in edge from '" + sourceLoc + "' to '" + targetLoc + "' in automaton '" + name + "'", localVars); storm::expressions::Expression assignmentExpr = parseExpression(assignmentEntry.at("value"), "assignment in edge from '" + sourceLoc + "' to '" + targetLoc + "' in automaton '" + name + "'", localVars);
// TODO check types // TODO check types
assignments.emplace_back(lhs, assignmentExpr);
// index
uint64_t assignmentIndex = 0; // default.
if(assignmentEntry.count("index") > 0) {
assignmentIndex = getUnsignedInt(assignmentEntry.at("index"), "assignment index in edge from '" + sourceLoc + "' to '" + targetLoc + "' in automaton '" + name + "'");
}
assignments.emplace_back(lhs, assignmentExpr, assignmentIndex);
} }
} }
destinationLocationsAndProbabilities.emplace_back(locIds.at(targetLoc), probExpr); destinationLocationsAndProbabilities.emplace_back(locIds.at(targetLoc), probExpr);

Loading…
Cancel
Save