summaryrefslogtreecommitdiffstats
path: root/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore
diff options
context:
space:
mode:
authorStefan Radomski <github@mintwerk.de>2017-07-19 14:40:15 (GMT)
committerStefan Radomski <github@mintwerk.de>2017-07-19 14:40:15 (GMT)
commit9db80409b3ca048c4b404a43d2c224f374c0090a (patch)
tree09967edf3ce8cc89c541cdbe342fb60784f559ac /src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore
parent04b04aa6624caf73ffe4fc33f918e7f48b27da37 (diff)
downloaduscxml-9db80409b3ca048c4b404a43d2c224f374c0090a.zip
uscxml-9db80409b3ca048c4b404a43d2c224f374c0090a.tar.gz
uscxml-9db80409b3ca048c4b404a43d2c224f374c0090a.tar.bz2
DOM with Lua DataModel and dropped V8
Diffstat (limited to 'src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore')
-rw-r--r--src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/JSCDataModel.cpp4
-rw-r--r--src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/JSCDataModel.h1
2 files changed, 5 insertions, 0 deletions
diff --git a/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/JSCDataModel.cpp b/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/JSCDataModel.cpp
index 921f4cf..3932961 100644
--- a/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/JSCDataModel.cpp
+++ b/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/JSCDataModel.cpp
@@ -668,6 +668,10 @@ bool JSCDataModel::isValidSyntax(const std::string& expr) {
return true;
}
+bool JSCDataModel::isLegalDataValue(const std::string& expr) {
+ return isValidSyntax("var __tmp = " + expr);
+}
+
bool JSCDataModel::isDeclared(const std::string& expr) {
JSStringRef scriptJS = JSStringCreateWithUTF8CString(expr.c_str());
JSValueRef exception = NULL;
diff --git a/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/JSCDataModel.h b/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/JSCDataModel.h
index 977385c..38b0ca5 100644
--- a/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/JSCDataModel.h
+++ b/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/JSCDataModel.h
@@ -64,6 +64,7 @@ public:
return names;
}
+ virtual bool isLegalDataValue(const std::string& expr);
virtual bool isValidSyntax(const std::string& expr);
virtual void setEvent(const Event& event);