summaryrefslogtreecommitdiffstats
path: root/classuscxml_1_1_v8_data_model.html
diff options
context:
space:
mode:
authorStefan Radomski <github@mintwerk.de>2016-05-19 08:13:16 (GMT)
committerStefan Radomski <github@mintwerk.de>2016-05-19 08:13:16 (GMT)
commit9020080d7f198a79551a6f8568e6ff9db41633b8 (patch)
tree4a03eaa046637d151035b1fa83ac4c962178b3c5 /classuscxml_1_1_v8_data_model.html
parent39cefeb7d311a11303d135a1c579f74ca3830ab8 (diff)
downloaduscxml-9020080d7f198a79551a6f8568e6ff9db41633b8.zip
uscxml-9020080d7f198a79551a6f8568e6ff9db41633b8.tar.gz
uscxml-9020080d7f198a79551a6f8568e6ff9db41633b8.tar.bz2
Initial commit
Diffstat (limited to 'classuscxml_1_1_v8_data_model.html')
-rw-r--r--classuscxml_1_1_v8_data_model.html615
1 files changed, 615 insertions, 0 deletions
diff --git a/classuscxml_1_1_v8_data_model.html b/classuscxml_1_1_v8_data_model.html
new file mode 100644
index 0000000..70dd772
--- /dev/null
+++ b/classuscxml_1_1_v8_data_model.html
@@ -0,0 +1,615 @@
+<!-- HTML header for doxygen 1.8.8-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
+ <!-- For Mobile Devices -->
+ <meta name="viewport" content="width=device-width, initial-scale=1">
+ <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+ <meta name="generator" content="Doxygen 1.8.10"/>
+ <script type="text/javascript" src="https://code.jquery.com/jquery-2.1.1.min.js"></script>
+ <title>uSCXML: uscxml::V8DataModel Class Reference</title>
+ <!--<link href="tabs.css" rel="stylesheet" type="text/css"/>-->
+ <script type="text/javascript" src="dynsections.js"></script>
+ <link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { init_search(); });
+</script>
+ <link href='https://fonts.googleapis.com/css?family=Roboto+Slab' rel='stylesheet' type='text/css'>
+ <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.min.css">
+ <link href="doxygen.css" rel="stylesheet" type="text/css" />
+ <link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
+ <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/js/bootstrap.min.js"></script>
+ <script type="text/javascript" src="doxy-boot.js"></script>
+ </head>
+ <body>
+ <nav class="navbar navbar-default" role="navigation">
+ <div class="container">
+ <div class="navbar-header">
+ <a class="navbar-brand">uSCXML 2.0.0</a>
+ </div>
+ </div>
+ </nav>
+ <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+ <div class="content" id="content">
+ <div class="container">
+ <div class="row">
+ <div class="col-sm-12 panel " style="padding-bottom: 15px;">
+ <div style="margin-bottom: 15px;">
+<!-- end header part --><!-- Generated by Doxygen 1.8.10 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+ <li><a href="modules.html"><span>Modules</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+ <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+ <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><b>uscxml</b></li><li class="navelem"><a class="el" href="classuscxml_1_1_v8_data_model.html">V8DataModel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-methods">Protected Member Functions</a> &#124;
+<a href="#pro-static-methods">Static Protected Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="#pro-static-attribs">Static Protected Attributes</a> &#124;
+<a href="classuscxml_1_1_v8_data_model-members.html">List of all members</a> </div>
+ <div class="headertitle">
+<div class="title">uscxml::V8DataModel Class Reference<div class="ingroups"><a class="el" href="group__extension.html">Extension Points</a> &raquo; <a class="el" href="group__datamodel.html">Data-Models</a></div></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>ECMAScript data-model via Google's V8.
+ <a href="classuscxml_1_1_v8_data_model.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_v8_data_model_8h_source.html">V8DataModel.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for uscxml::V8DataModel:</div>
+<div class="dyncontent">
+<div class="center"><iframe scrolling="no" frameborder="0" src="classuscxml_1_1_v8_data_model__inherit__graph.svg" width="171" height="112"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
+</div>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<div class="dynheader">
+Collaboration diagram for uscxml::V8DataModel:</div>
+<div class="dyncontent">
+<div class="center"><iframe scrolling="no" frameborder="0" src="classuscxml_1_1_v8_data_model__coll__graph.svg" width="204" height="203"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
+</div>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a5d4c429529f0766e6753e49f1a7c3328"><td class="memItemLeft" align="right" valign="top">virtual std::shared_ptr&lt; <a class="el" href="classuscxml_1_1_data_model_impl.html">DataModelImpl</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuscxml_1_1_v8_data_model.html#a5d4c429529f0766e6753e49f1a7c3328">create</a> (<a class="el" href="classuscxml_1_1_data_model_callbacks.html">DataModelCallbacks</a> *callbacks)</td></tr>
+<tr class="memdesc:a5d4c429529f0766e6753e49f1a7c3328"><td class="mdescLeft">&#160;</td><td class="mdescRight">The <a class="el" href="classuscxml_1_1_factory.html">Factory</a> wants to instantiate a new instance. <a href="#a5d4c429529f0766e6753e49f1a7c3328">More...</a><br /></td></tr>
+<tr class="separator:a5d4c429529f0766e6753e49f1a7c3328"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a80b6996f821dc498f3a748e3eb584fac"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a80b6996f821dc498f3a748e3eb584fac"></a>
+virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>addExtension</b> (<a class="el" href="classuscxml_1_1_data_model_extension.html">DataModelExtension</a> *ext)</td></tr>
+<tr class="separator:a80b6996f821dc498f3a748e3eb584fac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a67050c4a81559a5713357c1baafda11b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a67050c4a81559a5713357c1baafda11b"></a>
+virtual std::list&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuscxml_1_1_v8_data_model.html#a67050c4a81559a5713357c1baafda11b">getNames</a> ()</td></tr>
+<tr class="memdesc:a67050c4a81559a5713357c1baafda11b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a list of names to be matched by the <code>datamodel</code> attribute in SCXML. <br /></td></tr>
+<tr class="separator:a67050c4a81559a5713357c1baafda11b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a47c0fe25310c1a8874a8a59102f8f7ff"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuscxml_1_1_v8_data_model.html#a47c0fe25310c1a8874a8a59102f8f7ff">isValidSyntax</a> (const std::string &amp;expr)</td></tr>
+<tr class="memdesc:a47c0fe25310c1a8874a8a59102f8f7ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determine whether a given string constitutes valid syntax in the data-model's language. <a href="#a47c0fe25310c1a8874a8a59102f8f7ff">More...</a><br /></td></tr>
+<tr class="separator:a47c0fe25310c1a8874a8a59102f8f7ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac1a84d66b79e796d3bbb8b5e4708f74b"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuscxml_1_1_v8_data_model.html#ac1a84d66b79e796d3bbb8b5e4708f74b">setEvent</a> (const <a class="el" href="classuscxml_1_1_event.html">Event</a> &amp;event)</td></tr>
+<tr class="memdesc:ac1a84d66b79e796d3bbb8b5e4708f74b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the given event as <code>_event</code> in the data-model's global scope. <a href="#ac1a84d66b79e796d3bbb8b5e4708f74b">More...</a><br /></td></tr>
+<tr class="separator:ac1a84d66b79e796d3bbb8b5e4708f74b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acf1dbda331af4b39213ee83e2e2d78e8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acf1dbda331af4b39213ee83e2e2d78e8"></a>
+virtual uint32_t&#160;</td><td class="memItemRight" valign="bottom"><b>getLength</b> (const std::string &amp;expr)</td></tr>
+<tr class="separator:acf1dbda331af4b39213ee83e2e2d78e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1da68ace4ce1f7cda0991fb74d9cecee"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1da68ace4ce1f7cda0991fb74d9cecee"></a>
+virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>setForeach</b> (const std::string &amp;item, const std::string &amp;array, const std::string &amp;index, uint32_t iteration)</td></tr>
+<tr class="separator:a1da68ace4ce1f7cda0991fb74d9cecee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a57590880c152ce6b8f1c8c34a2345af0"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuscxml_1_1_v8_data_model.html#a57590880c152ce6b8f1c8c34a2345af0">evalAsBool</a> (const std::string &amp;expr)</td></tr>
+<tr class="memdesc:a57590880c152ce6b8f1c8c34a2345af0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Evaluate a given expression as a boolean. <a href="#a57590880c152ce6b8f1c8c34a2345af0">More...</a><br /></td></tr>
+<tr class="separator:a57590880c152ce6b8f1c8c34a2345af0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a47e633052cfc449a3116eb72556f6d15"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classuscxml_1_1_data.html">Data</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuscxml_1_1_v8_data_model.html#a47e633052cfc449a3116eb72556f6d15">evalAsData</a> (const std::string &amp;expr)</td></tr>
+<tr class="memdesc:a47e633052cfc449a3116eb72556f6d15"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a string as an <em>evaluated</em> <a class="el" href="classuscxml_1_1_data.html">Data</a> object. <a href="#a47e633052cfc449a3116eb72556f6d15">More...</a><br /></td></tr>
+<tr class="separator:a47e633052cfc449a3116eb72556f6d15"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a38d43851bf64b0f7db4e7bfdebc07229"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classuscxml_1_1_data.html">Data</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuscxml_1_1_v8_data_model.html#a38d43851bf64b0f7db4e7bfdebc07229">getAsData</a> (const std::string &amp;content)</td></tr>
+<tr class="memdesc:a38d43851bf64b0f7db4e7bfdebc07229"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a string as an <em>unevaluated</em> <a class="el" href="classuscxml_1_1_data.html">Data</a> object. <a href="#a38d43851bf64b0f7db4e7bfdebc07229">More...</a><br /></td></tr>
+<tr class="separator:a38d43851bf64b0f7db4e7bfdebc07229"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a83fc5468dabd75fc367240a23e711e65"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuscxml_1_1_v8_data_model.html#a83fc5468dabd75fc367240a23e711e65">isDeclared</a> (const std::string &amp;expr)</td></tr>
+<tr class="memdesc:a83fc5468dabd75fc367240a23e711e65"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determine whether a given variable / location is declared. <a href="#a83fc5468dabd75fc367240a23e711e65">More...</a><br /></td></tr>
+<tr class="separator:a83fc5468dabd75fc367240a23e711e65"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7b4a30def4ee34acfb1499815722134d"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuscxml_1_1_v8_data_model.html#a7b4a30def4ee34acfb1499815722134d">assign</a> (const std::string &amp;location, const <a class="el" href="classuscxml_1_1_data.html">Data</a> &amp;data)</td></tr>
+<tr class="memdesc:a7b4a30def4ee34acfb1499815722134d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Assign a data object to a location in the data-model. <a href="#a7b4a30def4ee34acfb1499815722134d">More...</a><br /></td></tr>
+<tr class="separator:a7b4a30def4ee34acfb1499815722134d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3bc27a5e7a63b13b63b0d3ebe628034b"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuscxml_1_1_v8_data_model.html#a3bc27a5e7a63b13b63b0d3ebe628034b">init</a> (const std::string &amp;location, const <a class="el" href="classuscxml_1_1_data.html">Data</a> &amp;data)</td></tr>
+<tr class="memdesc:a3bc27a5e7a63b13b63b0d3ebe628034b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize a variable / location in the data-model with a given data object. <a href="#a3bc27a5e7a63b13b63b0d3ebe628034b">More...</a><br /></td></tr>
+<tr class="separator:a3bc27a5e7a63b13b63b0d3ebe628034b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9f6c5835f6be0b4a2c3675be1c45c188"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9f6c5835f6be0b4a2c3675be1c45c188"></a>
+virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><b>andExpressions</b> (std::list&lt; std::string &gt;)</td></tr>
+<tr class="separator:a9f6c5835f6be0b4a2c3675be1c45c188"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classuscxml_1_1_data_model_impl"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classuscxml_1_1_data_model_impl')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classuscxml_1_1_data_model_impl.html">uscxml::DataModelImpl</a></td></tr>
+<tr class="memitem:acc27a4123c53055a24000dfd9a9cbc57 inherit pub_methods_classuscxml_1_1_data_model_impl"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuscxml_1_1_data_model_impl.html#acc27a4123c53055a24000dfd9a9cbc57">replaceExpressions</a> (std::string &amp;content)</td></tr>
+<tr class="memdesc:acc27a4123c53055a24000dfd9a9cbc57 inherit pub_methods_classuscxml_1_1_data_model_impl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Experimental extension to have dynamic content in string literals. <a href="#acc27a4123c53055a24000dfd9a9cbc57">More...</a><br /></td></tr>
+<tr class="separator:acc27a4123c53055a24000dfd9a9cbc57 inherit pub_methods_classuscxml_1_1_data_model_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
+Protected Member Functions</h2></td></tr>
+<tr class="memitem:a23e63c8425732d086ba80746bb27c8ce"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a23e63c8425732d086ba80746bb27c8ce"></a>
+v8::Local&lt; v8::Value &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>evalAsValue</b> (const std::string &amp;expr, bool dontThrow=false)</td></tr>
+<tr class="separator:a23e63c8425732d086ba80746bb27c8ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3e1c0d22926414d16dfe7620f3b25e95"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3e1c0d22926414d16dfe7620f3b25e95"></a>
+v8::Local&lt; v8::Value &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>getDataAsValue</b> (const <a class="el" href="classuscxml_1_1_data.html">Data</a> &amp;data)</td></tr>
+<tr class="separator:a3e1c0d22926414d16dfe7620f3b25e95"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a353973874bf687a57c7ed3f8bb675c58"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a353973874bf687a57c7ed3f8bb675c58"></a>
+<a class="el" href="classuscxml_1_1_data.html">Data</a>&#160;</td><td class="memItemRight" valign="bottom"><b>getValueAsData</b> (const v8::Local&lt; v8::Value &gt; &amp;value)</td></tr>
+<tr class="separator:a353973874bf687a57c7ed3f8bb675c58"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa2dd61aadb586afc6babf0fb49593491"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa2dd61aadb586afc6babf0fb49593491"></a>
+v8::Local&lt; v8::Value &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>getNodeAsValue</b> (const XERCESC_NS::DOMNode *node)</td></tr>
+<tr class="separator:aa2dd61aadb586afc6babf0fb49593491"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adecd7c0c4dc8b585d62d33e2e7cfea65"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adecd7c0c4dc8b585d62d33e2e7cfea65"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>throwExceptionEvent</b> (const v8::TryCatch &amp;tryCatch)</td></tr>
+<tr class="separator:adecd7c0c4dc8b585d62d33e2e7cfea65"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-static-methods"></a>
+Static Protected Member Functions</h2></td></tr>
+<tr class="memitem:ad61672c33046333ccb9d9bdbab0b5732"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad61672c33046333ccb9d9bdbab0b5732"></a>
+static void&#160;</td><td class="memItemRight" valign="bottom"><b>jsExtension</b> (const v8::FunctionCallbackInfo&lt; v8::Value &gt; &amp;info)</td></tr>
+<tr class="separator:ad61672c33046333ccb9d9bdbab0b5732"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a06de818bb340719d87fa3a9ffe4eb4ad"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a06de818bb340719d87fa3a9ffe4eb4ad"></a>
+static void&#160;</td><td class="memItemRight" valign="bottom"><b>jsIn</b> (const v8::FunctionCallbackInfo&lt; v8::Value &gt; &amp;info)</td></tr>
+<tr class="separator:a06de818bb340719d87fa3a9ffe4eb4ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a84450f076a3167e015f45c0b7f1d95c4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a84450f076a3167e015f45c0b7f1d95c4"></a>
+static void&#160;</td><td class="memItemRight" valign="bottom"><b>jsPrint</b> (const v8::FunctionCallbackInfo&lt; v8::Value &gt; &amp;info)</td></tr>
+<tr class="separator:a84450f076a3167e015f45c0b7f1d95c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d5c6d5db2178889512092a52f0110f2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0d5c6d5db2178889512092a52f0110f2"></a>
+static void&#160;</td><td class="memItemRight" valign="bottom"><b>getIOProcessors</b> (v8::Local&lt; v8::String &gt; property, const v8::PropertyCallbackInfo&lt; v8::Value &gt; &amp;info)</td></tr>
+<tr class="separator:a0d5c6d5db2178889512092a52f0110f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0ecf515150bbb2d087fc0d262ca68be5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0ecf515150bbb2d087fc0d262ca68be5"></a>
+static void&#160;</td><td class="memItemRight" valign="bottom"><b>getInvokers</b> (v8::Local&lt; v8::String &gt; property, const v8::PropertyCallbackInfo&lt; v8::Value &gt; &amp;info)</td></tr>
+<tr class="separator:a0ecf515150bbb2d087fc0d262ca68be5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8f437fdc97966b32bd1652f2298ca571"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8f437fdc97966b32bd1652f2298ca571"></a>
+static void&#160;</td><td class="memItemRight" valign="bottom"><b>getAttribute</b> (v8::Local&lt; v8::String &gt; property, const v8::PropertyCallbackInfo&lt; v8::Value &gt; &amp;info)</td></tr>
+<tr class="separator:a8f437fdc97966b32bd1652f2298ca571"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3205b286018aa2bd9719de67a72325eb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3205b286018aa2bd9719de67a72325eb"></a>
+static void&#160;</td><td class="memItemRight" valign="bottom"><b>setWithException</b> (v8::Local&lt; v8::String &gt; property, v8::Local&lt; v8::Value &gt; value, const v8::PropertyCallbackInfo&lt; void &gt; &amp;info)</td></tr>
+<tr class="separator:a3205b286018aa2bd9719de67a72325eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:a40e60b367cbc5133a0dd15530de4c524"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a40e60b367cbc5133a0dd15530de4c524"></a>
+v8::Persistent&lt; v8::Object &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>_event</b></td></tr>
+<tr class="separator:a40e60b367cbc5133a0dd15530de4c524"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0389f1f03ce2caa64eece230d3434864"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0389f1f03ce2caa64eece230d3434864"></a>
+v8::Persistent&lt; v8::Context &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>_context</b></td></tr>
+<tr class="separator:a0389f1f03ce2caa64eece230d3434864"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa5ca3675c97d058dcd60f60e77edc29f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa5ca3675c97d058dcd60f60e77edc29f"></a>
+v8::Persistent&lt; v8::Object &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>_ioProcessors</b></td></tr>
+<tr class="separator:aa5ca3675c97d058dcd60f60e77edc29f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a27ed5802edef15965226de40a2b36c81"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a27ed5802edef15965226de40a2b36c81"></a>
+v8::Persistent&lt; v8::Object &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>_invokers</b></td></tr>
+<tr class="separator:a27ed5802edef15965226de40a2b36c81"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4bc453eea3b544002d8c6709c5f36ea4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4bc453eea3b544002d8c6709c5f36ea4"></a>
+std::set&lt; <a class="el" href="classuscxml_1_1_data_model_extension.html">DataModelExtension</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>_extensions</b></td></tr>
+<tr class="separator:a4bc453eea3b544002d8c6709c5f36ea4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classuscxml_1_1_data_model_impl"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classuscxml_1_1_data_model_impl')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classuscxml_1_1_data_model_impl.html">uscxml::DataModelImpl</a></td></tr>
+<tr class="memitem:aa5aed42d77aac94ea28561aebf6ee7c8 inherit pro_attribs_classuscxml_1_1_data_model_impl"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa5aed42d77aac94ea28561aebf6ee7c8"></a>
+<a class="el" href="classuscxml_1_1_data_model_callbacks.html">DataModelCallbacks</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>_callbacks</b></td></tr>
+<tr class="separator:aa5aed42d77aac94ea28561aebf6ee7c8 inherit pro_attribs_classuscxml_1_1_data_model_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-static-attribs"></a>
+Static Protected Attributes</h2></td></tr>
+<tr class="memitem:ab47538118103c4ee24620e21471e64da"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab47538118103c4ee24620e21471e64da"></a>
+static v8::Isolate *&#160;</td><td class="memItemRight" valign="bottom"><b>_isolate</b> = NULL</td></tr>
+<tr class="separator:ab47538118103c4ee24620e21471e64da"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>ECMAScript data-model via Google's V8. </p>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a7b4a30def4ee34acfb1499815722134d"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void uscxml::V8DataModel::assign </td>
+ <td>(</td>
+ <td class="paramtype">const std::string &amp;&#160;</td>
+ <td class="paramname"><em>location</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classuscxml_1_1_data.html">Data</a> &amp;&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Assign a data object to a location in the data-model. </p>
+<p>There are different occurences in the SCXML IRP tests, e.g. </p><pre class="fragment">test147:
+ &lt;data id="Var1" expr="0"/&gt;
+
+test150:
+ &lt;data id="Var3"&gt;
+ [1,2,3]
+ &lt;/data&gt;
+
+test277:
+ &lt;data id="Var1" expr="return"/&gt;
+</pre> <dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">location</td><td>A variable or locatio to assign to. </td></tr>
+ <tr><td class="paramname">data</td><td>The <a class="el" href="classuscxml_1_1_data.html">Data</a> object with the respective data. </td></tr>
+ </table>
+ </dd>
+</dl>
+
+<p>Implements <a class="el" href="classuscxml_1_1_data_model_impl.html#a39bd9eaf711d1a8240f559da41649bfb">uscxml::DataModelImpl</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a5d4c429529f0766e6753e49f1a7c3328"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::shared_ptr&lt; <a class="el" href="classuscxml_1_1_data_model_impl.html">DataModelImpl</a> &gt; uscxml::V8DataModel::create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classuscxml_1_1_data_model_callbacks.html">DataModelCallbacks</a> *&#160;</td>
+ <td class="paramname"><em>callbacks</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>The <a class="el" href="classuscxml_1_1_factory.html">Factory</a> wants to instantiate a new instance. </p>
+<p>This function will have to initialize the object. The actual constructor is called from within here. The only one who calls the constructor directly is the <a class="el" href="classuscxml_1_1_factory.html">Factory</a> for the prototype object.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">callbacks</td><td>The callbacks available to the datamodel </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>A shared pointer with an initialized instance </dd></dl>
+
+<p>Implements <a class="el" href="classuscxml_1_1_data_model_impl.html#ab495cc41fdc14950bd3ff830b71c6d57">uscxml::DataModelImpl</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a57590880c152ce6b8f1c8c34a2345af0"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool uscxml::V8DataModel::evalAsBool </td>
+ <td>(</td>
+ <td class="paramtype">const std::string &amp;&#160;</td>
+ <td class="paramname"><em>expr</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Evaluate a given expression as a boolean. </p>
+<p>This function is a subset of <a class="el" href="classuscxml_1_1_v8_data_model.html#a47e633052cfc449a3116eb72556f6d15" title="Return a string as an evaluated Data object. ">evalAsData()</a> but saves on creating and copying a <a class="el" href="classuscxml_1_1_data.html">Data</a> object. </p><dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">expr</td><td>An expression in the data-model's language. </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Whether the expression evaluates as <code>true</code> </dd></dl>
+
+<p>Implements <a class="el" href="classuscxml_1_1_data_model_impl.html#a7bf03276de0ee069a55981599d476b18">uscxml::DataModelImpl</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a47e633052cfc449a3116eb72556f6d15"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classuscxml_1_1_data.html">Data</a> uscxml::V8DataModel::evalAsData </td>
+ <td>(</td>
+ <td class="paramtype">const std::string &amp;&#160;</td>
+ <td class="paramname"><em>content</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Return a string as an <em>evaluated</em> <a class="el" href="classuscxml_1_1_data.html">Data</a> object. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">content</td><td>A string with a literal, eppression or compound data-structure in the data-model's language. </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>An evaluated structure representing the given compound or literal. </dd></dl>
+
+<p>Implements <a class="el" href="classuscxml_1_1_data_model_impl.html#a041d1fdf8830f923d960ac4a6cf09e57">uscxml::DataModelImpl</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a38d43851bf64b0f7db4e7bfdebc07229"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classuscxml_1_1_data.html">Data</a> uscxml::V8DataModel::getAsData </td>
+ <td>(</td>
+ <td class="paramtype">const std::string &amp;&#160;</td>
+ <td class="paramname"><em>content</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Return a string as an <em>unevaluated</em> <a class="el" href="classuscxml_1_1_data.html">Data</a> object. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">content</td><td>A string with a literal, eppression or compound data-structure in the data-model's language. </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>An unevaluated structure representing the given compound or literal. </dd></dl>
+
+<p>Implements <a class="el" href="classuscxml_1_1_data_model_impl.html#ac026678fef708090caba851bc9681dfc">uscxml::DataModelImpl</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a3bc27a5e7a63b13b63b0d3ebe628034b"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void uscxml::V8DataModel::init </td>
+ <td>(</td>
+ <td class="paramtype">const std::string &amp;&#160;</td>
+ <td class="paramname"><em>location</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classuscxml_1_1_data.html">Data</a> &amp;&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Initialize a variable / location in the data-model with a given data object. </p>
+<p>This is, semantically, very close to <a class="el" href="classuscxml_1_1_v8_data_model.html#a7b4a30def4ee34acfb1499815722134d" title="Assign a data object to a location in the data-model. ">assign()</a> but does not assume the location to be declared first.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">location</td><td>A variable or locatio to assign to. </td></tr>
+ <tr><td class="paramname">data</td><td>The <a class="el" href="classuscxml_1_1_data.html">Data</a> object with the respective data. </td></tr>
+ </table>
+ </dd>
+</dl>
+
+<p>Implements <a class="el" href="classuscxml_1_1_data_model_impl.html#af5ab40ac509e86f071bee27a9080f4c1">uscxml::DataModelImpl</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a83fc5468dabd75fc367240a23e711e65"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool uscxml::V8DataModel::isDeclared </td>
+ <td>(</td>
+ <td class="paramtype">const std::string &amp;&#160;</td>
+ <td class="paramname"><em>expr</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Determine whether a given variable / location is declared. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">expr</td><td>The variable / location to check. </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000002">Todo:</a></b></dt><dd>Is this still used? </dd></dl>
+<p>Undeclared variables can be checked by trying to access them and catching a reference error.</p>
+
+<p>Implements <a class="el" href="classuscxml_1_1_data_model_impl.html#a83a8684b45f509a1180fb41ebb42192e">uscxml::DataModelImpl</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a47c0fe25310c1a8874a8a59102f8f7ff"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool uscxml::V8DataModel::isValidSyntax </td>
+ <td>(</td>
+ <td class="paramtype">const std::string &amp;&#160;</td>
+ <td class="paramname"><em>expr</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Determine whether a given string constitutes valid syntax in the data-model's language. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">expr</td><td>A string, supposedly containing an expression of the data-model. </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Whether expr is in L(DM). </dd></dl>
+
+<p>Reimplemented from <a class="el" href="classuscxml_1_1_data_model_impl.html#a6758e7946232dce852814d71886b1078">uscxml::DataModelImpl</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="ac1a84d66b79e796d3bbb8b5e4708f74b"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void uscxml::V8DataModel::setEvent </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classuscxml_1_1_event.html">Event</a> &amp;&#160;</td>
+ <td class="paramname"><em>event</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Set the given event as <code>_event</code> in the data-model's global scope. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">event</td><td>The event as it was dequeued from either the internal or external queue. </td></tr>
+ </table>
+ </dd>
+</dl>
+
+<p>Implements <a class="el" href="classuscxml_1_1_data_model_impl.html#a1d3ef74ba677d7224d7320d7980c757c">uscxml::DataModelImpl</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>plugins/datamodel/ecmascript/v8/<a class="el" href="_v8_data_model_8h_source.html">V8DataModel.h</a></li>
+<li>plugins/datamodel/ecmascript/v8/<a class="el" href="_v8_data_model_8cpp.html">V8DataModel.cpp</a></li>
+</ul>
+</div><!-- contents -->
+<!-- HTML footer for doxygen 1.8.8-->
+<!-- start footer part -->
+</div>
+</div>
+</div>
+</div>
+</div>
+<!-- <hr class="footer"/><address class="footer"><small>
+Generated on Thu May 19 2016 10:05:26 for uSCXML by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.10
+</small></address> -->
+</body>
+</html>