diff options
author | Stefan Radomski <radomski@tk.informatik.tu-darmstadt.de> | 2014-11-13 15:57:53 (GMT) |
---|---|---|
committer | Stefan Radomski <radomski@tk.informatik.tu-darmstadt.de> | 2014-11-13 15:57:53 (GMT) |
commit | afec6e2f8bd472da1d9170bdaf102b5a572bcd2a (patch) | |
tree | 843aa6434a0379a53638eccd20f9ea7a8bff85f3 /src/uscxml/transform | |
parent | 2b3fb554e90793670a6ec384c22c89f005142c55 (diff) | |
download | uscxml-afec6e2f8bd472da1d9170bdaf102b5a572bcd2a.zip uscxml-afec6e2f8bd472da1d9170bdaf102b5a572bcd2a.tar.gz uscxml-afec6e2f8bd472da1d9170bdaf102b5a572bcd2a.tar.bz2 |
Support for Proxies via USCXML_PROXY environment variable, check CURL_PROXY syntax for examples
Diffstat (limited to 'src/uscxml/transform')
-rw-r--r-- | src/uscxml/transform/ChartToPromela.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/uscxml/transform/ChartToPromela.cpp b/src/uscxml/transform/ChartToPromela.cpp index ea83784..9b6674d 100644 --- a/src/uscxml/transform/ChartToPromela.cpp +++ b/src/uscxml/transform/ChartToPromela.cpp @@ -2267,6 +2267,21 @@ void ChartToPromela::initNodes() { _analyzer.addCode(*codeIter); } + // add all namelist entries to the _event structure + { + NodeSet<std::string> withNamelist; + withNamelist.push_back(filterChildElements(_nsInfo.xmlNSPrefix + "send", _scxml, true)); + withNamelist.push_back(filterChildElements(_nsInfo.xmlNSPrefix + "invoke", _scxml, true)); + for (int i = 0; i < withNamelist.size(); i++) { + if (HAS_ATTR_CAST(withNamelist[i], "namelist")) { + std::string namelist = ATTR_CAST(withNamelist[i], "namelist"); + std::list<std::string> names = tokenizeIdRefs(namelist); + for (std::list<std::string>::iterator nameIter = names.begin(); nameIter != names.end(); nameIter++) { + _analyzer.addCode("_event.data." + *nameIter + " = 0;"); // introduce for _event_t typedef + } + } + } + } } std::string ChartToPromela::sanitizeCode(const std::string& code) { |