summaryrefslogtreecommitdiffstats
path: root/src/uscxml/messages/Event.h
diff options
context:
space:
mode:
authorStefan Radomski <github@mintwerk.de>2017-05-14 10:13:53 (GMT)
committerGitHub <noreply@github.com>2017-05-14 10:13:53 (GMT)
commit1c4f3c8ccf362429ad6c80a9291fc7534e0691ab (patch)
tree693d22f22ffb75eaa144500fc6db146a3e5c2d42 /src/uscxml/messages/Event.h
parent43370419fb7a9f14d85f96f39ffff86a337756d4 (diff)
parent673701710475dd1b9b4d06b8d5db99fa656306e8 (diff)
downloaduscxml-1c4f3c8ccf362429ad6c80a9291fc7534e0691ab.zip
uscxml-1c4f3c8ccf362429ad6c80a9291fc7534e0691ab.tar.gz
uscxml-1c4f3c8ccf362429ad6c80a9291fc7534e0691ab.tar.bz2
Merge pull request #129 from alexzhornyak/Explicit-Eval
Implementation of eval function
Diffstat (limited to 'src/uscxml/messages/Event.h')
-rw-r--r--src/uscxml/messages/Event.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/uscxml/messages/Event.h b/src/uscxml/messages/Event.h
index b774f8a..fd9dd42 100644
--- a/src/uscxml/messages/Event.h
+++ b/src/uscxml/messages/Event.h
@@ -77,6 +77,14 @@
throw exc;\
}
+#define ERROR_EXECUTION_THROW3(evt,caption,node) \
+{\
+ auto it = evt.data.compound.find("cause"); \
+ ERROR_EXECUTION2(exc,it!=evt.data.compound.end() ? it->second.atom : "",node); \
+ exc.data.compound["caption"] = uscxml::Data(caption, uscxml::Data::VERBATIM); \
+ throw exc;\
+}
+
#define ERROR_COMMUNICATION_THROW(cause) \
{\
ERROR_COMMUNICATION(exc, cause); \