diff options
author | azhornyak <alexander.zhornyak@gmail.com> | 2017-05-13 15:43:52 (GMT) |
---|---|---|
committer | azhornyak <alexander.zhornyak@gmail.com> | 2017-05-13 15:43:52 (GMT) |
commit | 82087b37adc295d1aab5afd51f855f8d9f0923f8 (patch) | |
tree | b4fe19d3abafa2e0ef4905bfb45b47d24c3bff15 /src/uscxml/messages/Event.h | |
parent | dacba30880611af98b40ed908797da935a185d81 (diff) | |
download | uscxml-82087b37adc295d1aab5afd51f855f8d9f0923f8.zip uscxml-82087b37adc295d1aab5afd51f855f8d9f0923f8.tar.gz uscxml-82087b37adc295d1aab5afd51f855f8d9f0923f8.tar.bz2 |
Fixes issue #126
Fixes issue #128
Fixes issue #124
Fixes issue #118
Diffstat (limited to 'src/uscxml/messages/Event.h')
-rw-r--r-- | src/uscxml/messages/Event.h | 8 |
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); \ |