STORM_LOG_THROW(locEntry.count("name")==1,storm::exceptions::InvalidJaniException,"Locations for automaton '"<<name<<"' must have exactly one name");
STORM_LOG_THROW(locEntry.count("name")==1,storm::exceptions::InvalidJaniException,"Locations for automaton '"<<name<<"' must have exactly one name");
std::stringlocName=getString(locEntry.at("name"),"location of automaton "+name);
std::stringlocName=getString(locEntry.at("name"),"location of automaton "+name);
STORM_LOG_THROW(locIds.count(locName)==0,storm::exceptions::InvalidJaniException,"Location with name '"+locName+"' already exists in automaton '"+name+"'");
STORM_LOG_THROW(locIds.count(locName)==0,storm::exceptions::InvalidJaniException,"Location with name '"+locName+"' already exists in automaton '"+name+"'");
STORM_LOG_THROW(locEntry.count("invariant")>0,storm::exceptions::InvalidJaniException,"Invariants in locations as in '"+locName+"' are not supported");
//STORM_LOG_THROW(locEntry.count("invariant") > 0 && !supportsInvariants(parentModel.getModelType()), storm::exceptions::InvalidJaniException, "Invariants are not supported in the model type " + to_string(parentModel.getModelType()));
//STORM_LOG_THROW(locEntry.count("invariant") > 0 && !supportsInvariants(parentModel.getModelType()), storm::exceptions::InvalidJaniException, "Invariants are not supported in the model type " + to_string(parentModel.getModelType()));
automaton.addInitialLocation(getString(initLocStruct,"Initial locations for automaton '"+name+"'."));
automaton.addInitialLocation(getString(initLocStruct,"Initial locations for automaton '"+name+"'."));
}
}
STORM_LOG_THROW(automatonStructure.count("restrict-initial")<2,storm::exceptions::InvalidJaniException,"Automaton '"<<name<<"' has multiple initial value restrictions");