diff options
Diffstat (limited to 'src/uscxml/plugins/DataModelImpl.h')
-rw-r--r-- | src/uscxml/plugins/DataModelImpl.h | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/uscxml/plugins/DataModelImpl.h b/src/uscxml/plugins/DataModelImpl.h index e3db75a..b378a96 100644 --- a/src/uscxml/plugins/DataModelImpl.h +++ b/src/uscxml/plugins/DataModelImpl.h @@ -116,7 +116,8 @@ public: /** * Determine whether a given string constitutes valid syntax in the - * data-model's language. + * data-model's language. This is only used to identify InterpreterIssues + * but may be useful to implement isLegalDataValue() as well. * @param expr A string, supposedly containing an expression of the data-model. * @return Whether expr is in L(DM). */ @@ -124,6 +125,17 @@ public: return true; // overwrite when datamodel supports it } + /** + * Determine whether a given string constitutes a legal data value that can appear + * at the right-hand side of an assignment. + * + * @param expr A string, supposedly containing a legal data value. + * @return Whether expr is a legal data value. + */ + virtual bool isLegalDataValue(const std::string& expr) { + return true; // overwrite when datamodel supports it + } + /** * Set the given event as `_event` in the data-model's global scope. * @param event The event as it was dequeued from either the internal or external queue. |