summaryrefslogtreecommitdiffstats
path: root/src/uscxml/plugins/datamodel/ecmascript/v8/V8DataModel.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/uscxml/plugins/datamodel/ecmascript/v8/V8DataModel.h')
-rw-r--r--src/uscxml/plugins/datamodel/ecmascript/v8/V8DataModel.h30
1 files changed, 27 insertions, 3 deletions
diff --git a/src/uscxml/plugins/datamodel/ecmascript/v8/V8DataModel.h b/src/uscxml/plugins/datamodel/ecmascript/v8/V8DataModel.h
index 760b638..7bea50c 100644
--- a/src/uscxml/plugins/datamodel/ecmascript/v8/V8DataModel.h
+++ b/src/uscxml/plugins/datamodel/ecmascript/v8/V8DataModel.h
@@ -39,10 +39,34 @@ public:
virtual void pushContext();
virtual void popContext();
+ virtual bool supportsJSON() { return true; }
+
virtual void eval(const std::string& expr);
- virtual void assign(const std::string& location, const Arabica::DOM::Document<std::string>& doc);
- virtual void assign(const std::string& location, const std::string& expr);
- virtual void assign(const std::string& location, const Data& data);
+ virtual void assign(const std::string& location,
+ const Arabica::DOM::Document<std::string>& doc,
+ const Arabica::DOM::Element<std::string>& assignElem);
+ virtual void assign(const std::string& location,
+ const std::string& expr,
+ const Arabica::DOM::Element<std::string>& assignElem);
+ virtual void assign(const std::string& location,
+ const Data& data,
+ const Arabica::DOM::Element<std::string>& assignElem);
+
+ virtual void init(const std::string& location,
+ const Arabica::DOM::Document<std::string>& doc,
+ const Arabica::DOM::Element<std::string>& dataElem) {
+ assign(location, doc, dataElem);
+ };
+ virtual void init(const std::string& location,
+ const std::string& expr,
+ const Arabica::DOM::Element<std::string>& dataElem) {
+ assign(location, expr, dataElem);
+ }
+ virtual void init(const std::string& location,
+ const Data& data,
+ const Arabica::DOM::Element<std::string>& dataElem) {
+ assign(location, data, dataElem);
+ }
virtual Data getStringAsData(const std::string& content);
virtual Data getValueAsData(const v8::Handle<v8::Value>& value);