瀏覽代碼

docs: Update 'Basics' section

Ole 9 年之前
父節點
當前提交
0af8abb804

+ 58 - 48
docs/mkdocs/basics.md

@@ -1,49 +1,46 @@
 # Integration
 Luwra does not provide a standalone version of Lua nor does it isolate its features. This means that
-all functions and classes operate on
-[lua_State](http://www.lua.org/manual/5.3/manual.html#lua_State) (or the alias
-[State](/reference/namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d)). Doing this allows you to
-integrate Luwra however you like.
+all functions and classes can operate on [lua_State][lua-state] (or the alias [State][luwra-state]).
+Doing this allows you to integrate Luwra however you like.
 
 # Stack Interaction
-Although Luwra provides a variety of features, its main concern is efficient and safe interaction
-with the Lua stack.
-
-A fundamental aspect of this is the abstract template [Value](/reference/structluwra_1_1Value.html).
+A fundamental aspect of this is the abstract template [Value][luwra-value].
 Every type which can be pushed onto or read from the stack has a specialization of it.
 Useful implementations are provided out of the box:
 
-C++ type               | Pushable | Readable | Lua type
------------------------|----------|----------|----------------------------
-bool                   | yes      | yes      | boolean
-signed char            | yes      | yes      | number (integer since 5.3)
-signed short           | yes      | yes      | number (integer since 5.3)
-signed int             | yes      | yes      | number (integer since 5.3)
-signed long int        | yes      | yes      | number (integer since 5.3)
-signed long long int   | yes      | yes      | number (integer since 5.3)
-unsigned char          | yes      | yes      | number (integer since 5.3)
-unsigned short         | yes      | yes      | number (integer since 5.3)
-unsigned int           | yes      | yes      | number (integer since 5.3)
-unsigned long int      | yes      | yes      | number (integer since 5.3)
-unsigned long long int | yes      | yes      | number (integer since 5.3)
-float                  | yes      | yes      | number
-double                 | yes      | yes      | number
-long double            | yes      | yes      | number
-const char*            | yes      | yes      | string
-std::string            | yes      | yes      | string
-std::nullptr_t         | yes      | yes      | nil
-std::tuple<T>    | yes      | no       | *depends on the tuple contents*
-[lua_CFunction](http://www.lua.org/manual/5.3/manual.html#lua_CFunction) | yes | no | function
-[NativeFunction<R(A...)>](/reference/structluwra_1_1NativeFunction_3_01R_07A_8_8_8_08_4.html) | no | yes | function
-[FieldVector](/reference/namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2) | yes | no | table
+C++ type                               | Pushable | Readable | Lua type
+---------------------------------------|----------|----------|----------------------------
+bool                                   | yes      | yes      | boolean
+signed char                            | yes      | yes      | number (integer since 5.3)
+signed short                           | yes      | yes      | number (integer since 5.3)
+signed int                             | yes      | yes      | number (integer since 5.3)
+signed long int                        | yes      | yes      | number (integer since 5.3)
+signed long long int                   | yes      | yes      | number (integer since 5.3)
+unsigned char                          | yes      | yes      | number (integer since 5.3)
+unsigned short                         | yes      | yes      | number (integer since 5.3)
+unsigned int                           | yes      | yes      | number (integer since 5.3)
+unsigned long int                      | yes      | yes      | number (integer since 5.3)
+unsigned long long int                 | yes      | yes      | number (integer since 5.3)
+float                                  | yes      | yes      | number
+double                                 | yes      | yes      | number
+long double                            | yes      | yes      | number
+const char*                            | yes      | yes      | string
+std::string                            | yes      | yes      | string
+std::nullptr_t                         | yes      | yes      | nil
+std::tuple<T...>                 | yes      | no       | *depends on the tuple contents*
+std::vector<T>                   | yes      | yes      | table
+std::list<T>                     | yes      | yes      | table
+std::map<K, V>                   | yes      | yes      | table
+[lua_CFunction][lua-cfunction]         | yes      | no       | function, table or userdata
+[NativeFunction][luwra-nativefunction] | yes      | yes      | function
+[Table][luwra-table]                   | yes      | yes      | table
 
 **Note:** Some numeric types have a different size than their matching Lua type - they will be
 truncated during push or read operations.
 
 ## Pushing C++ values
-When pushing values onto the stack you can either use
-[Value<T>::push](/reference/structluwra_1_1Value.html#aa376d68285606c206562b822e8187384) or the more
-convenient [push](/reference/namespaceluwra.html#ae8e7eab11fc2cf3f258ffd81571066fa).
+When pushing values onto the stack you can either use [Value<T>::push][luwra-value-push] or
+the more convenient [push][luwra-push].
 
 ```c++
 // Push an integer
@@ -59,15 +56,18 @@ luwra::push(lua, false);
 luwra::push(lua, "Hello World");
 
 // Push a table
-luwra::push(lua, luwra::FieldVector {
+luwra::push(lua, luwra::MemberMap {
 	{"one", 1},
 	{1, "one"},
-	{"nested", luwra::FieldVector {
+	{"nested", luwra::MemberMap {
 		{"more", "fields"}
 	}}
 });
 ```
 
+**Note:** `luwra::MemberMap` is an alias for `std:map<luwra::Pushable, luwra::Pushable>`. Its keys
+and values are constructible using any pushable type.
+
 This produces the following stack layout:
 
 Absolute Position | Relative Position | Value
@@ -82,9 +82,8 @@ It is possible to provide a template parameter to `push` to enforce pushing a sp
 In most cases you are probably better off by letting the compiler infer the template parameter.
 
 ## Reading Lua values
-Simple retrieval of Lua values is done using
-[read&lt;T&gt;](/reference/namespaceluwra.html#a4fe4e574680cf54a0f8d958740eb90ab). Consider the
-stack layout from the previous example. This is how you would retrieve a value from the stack.
+Simple retrieval of Lua values is done using [read&lt;T&gt;][luwra-read]. Consider the stack layout
+from the previous example. This is how you would retrieve a value from the stack.
 
 ```c++
 // Retrieve the integer at position 1
@@ -95,17 +94,15 @@ int value = luwra::read<int>(lua, -5);
 ```
 
 ## Read and type errors
-What happens when a value which you are trying to read mismatches the expected type or cannot be
-converted to it? Most `Value<T>` specializations use Lua's `luaL_check*` functions to retrieve
-the values from the stack. This means that no exceptions will be thrown - instead the error handling
-is delegated to the Lua VM. Have a look at the
-[error handling documentation](http://www.lua.org/manual/5.3/manual.html#4.6) for more information.
+What happens when a value mismatches the expected type or cannot be converted to it? Most
+[Value][luwra-value] specializations use Lua's `luaL_check*` functions to retrieve the values from
+the stack. This means that no exceptions will be thrown - instead the error handling is delegated to
+the Lua VM. Have a look at the [error handling documentation][lua-errorhandling] for more
+information.
 
 # Globals
-In order to convenient register values in the global namespace, Luwra provides
-[setGlobal](/reference/namespaceluwra.html#afed27900ff117638937ad92e0217258d) and
-[getGlobal](/reference/namespaceluwra.html#af0a7dbbbdb339227c6ecaaa46422e05b).
-
+In order to conveniently register values in the global namespace, Luwra provides
+[setGlobal][luwra-setglobal] and [getGlobal][luwra-global].
 
 ```c++
 // Register in the global namespace
@@ -114,3 +111,16 @@ luwra::setGlobal(lua, "almostPi", 3.14);
 // Retrieve from globals
 double almostPi = luwra::getGlobal<double>(lua, "almostPi");
 ```
+
+[lua-state]: http://www.lua.org/manual/5.3/manual.html#lua_State
+[lua-cfunction]: http://www.lua.org/manual/5.3/manual.html#lua_CFunction
+[lua-errorhandling]: http://www.lua.org/manual/5.3/manual.html#4.6
+[luwra-state]: /reference/namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d
+[luwra-value]: /reference/structluwra_1_1Value.html
+[luwra-nativefunction]: /reference/structluwra_1_1NativeFunction_3_01R_07A_8_8_8_08_4.html
+[luwra-table]: /reference/structluwra_1_1Table.html
+[luwra-read]: /reference/namespaceluwra.html#a4fe4e574680cf54a0f8d958740eb90ab
+[luwra-value-push]: /reference/structluwra_1_1Value.html#aa376d68285606c206562b822e8187384
+[luwra-push]: /reference/namespaceluwra.html#ae8e7eab11fc2cf3f258ffd81571066fa
+[luwra-setglobal]: /reference/namespaceluwra.html#afed27900ff117638937ad92e0217258d
+[luwra-getglobal]: /reference/namespaceluwra.html#af0a7dbbbdb339227c6ecaaa46422e05b

+ 41 - 28
docs/output/basics/index.html

@@ -146,13 +146,9 @@
               
                 <h1 id="integration">Integration</h1>
 <p>Luwra does not provide a standalone version of Lua nor does it isolate its features. This means that
-all functions and classes operate on
-<a href="http://www.lua.org/manual/5.3/manual.html#lua_State">lua_State</a> (or the alias
-<a href="../reference/namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a>). Doing this allows you to
-integrate Luwra however you like.</p>
+all functions and classes can operate on <a href="http://www.lua.org/manual/5.3/manual.html#lua_State">lua_State</a> (or the alias <a href="../reference/namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a>).
+Doing this allows you to integrate Luwra however you like.</p>
 <h1 id="stack-interaction">Stack Interaction</h1>
-<p>Although Luwra provides a variety of features, its main concern is efficient and safe interaction
-with the Lua stack.</p>
 <p>A fundamental aspect of this is the abstract template <a href="../reference/structluwra_1_1Value.html">Value</a>.
 Every type which can be pushed onto or read from the stack has a specialization of it.
 Useful implementations are provided out of the box:</p>
@@ -269,27 +265,45 @@ Useful implementations are provided out of the box:</p>
 <td>nil</td>
 </tr>
 <tr>
-<td>std::tuple&lt;T&gt;</td>
+<td>std::tuple&lt;T...&gt;</td>
 <td>yes</td>
 <td>no</td>
 <td><em>depends on the tuple contents</em></td>
 </tr>
 <tr>
+<td>std::vector&lt;T&gt;</td>
+<td>yes</td>
+<td>yes</td>
+<td>table</td>
+</tr>
+<tr>
+<td>std::list&lt;T&gt;</td>
+<td>yes</td>
+<td>yes</td>
+<td>table</td>
+</tr>
+<tr>
+<td>std::map&lt;K, V&gt;</td>
+<td>yes</td>
+<td>yes</td>
+<td>table</td>
+</tr>
+<tr>
 <td><a href="http://www.lua.org/manual/5.3/manual.html#lua_CFunction">lua_CFunction</a></td>
 <td>yes</td>
 <td>no</td>
-<td>function</td>
+<td>function, table or userdata</td>
 </tr>
 <tr>
-<td><a href="../reference/structluwra_1_1NativeFunction_3_01R_07A_8_8_8_08_4.html">NativeFunction&lt;R(A...)&gt;</a></td>
-<td>no</td>
+<td><a href="../reference/structluwra_1_1NativeFunction_3_01R_07A_8_8_8_08_4.html">NativeFunction</a></td>
+<td>yes</td>
 <td>yes</td>
 <td>function</td>
 </tr>
 <tr>
-<td><a href="../reference/namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a></td>
+<td><a href="../reference/structluwra_1_1Table.html">Table</a></td>
+<td>yes</td>
 <td>yes</td>
-<td>no</td>
 <td>table</td>
 </tr>
 </tbody>
@@ -297,9 +311,8 @@ Useful implementations are provided out of the box:</p>
 <p><strong>Note:</strong> Some numeric types have a different size than their matching Lua type - they will be
 truncated during push or read operations.</p>
 <h2 id="pushing-c-values">Pushing C++ values</h2>
-<p>When pushing values onto the stack you can either use
-<a href="../reference/structluwra_1_1Value.html#aa376d68285606c206562b822e8187384">Value&lt;T&gt;::push</a> or the more
-convenient <a href="../reference/namespaceluwra.html#ae8e7eab11fc2cf3f258ffd81571066fa">push</a>.</p>
+<p>When pushing values onto the stack you can either use <a href="../reference/structluwra_1_1Value.html#aa376d68285606c206562b822e8187384">Value&lt;T&gt;::push</a> or
+the more convenient <a href="../reference/namespaceluwra.html#ae8e7eab11fc2cf3f258ffd81571066fa">push</a>.</p>
 <pre><code class="c++">// Push an integer
 luwra::push(lua, 1338);
 
@@ -313,15 +326,17 @@ luwra::push(lua, false);
 luwra::push(lua, &quot;Hello World&quot;);
 
 // Push a table
-luwra::push(lua, luwra::FieldVector {
+luwra::push(lua, luwra::MemberMap {
     {&quot;one&quot;, 1},
     {1, &quot;one&quot;},
-    {&quot;nested&quot;, luwra::FieldVector {
+    {&quot;nested&quot;, luwra::MemberMap {
         {&quot;more&quot;, &quot;fields&quot;}
     }}
 });
 </code></pre>
 
+<p><strong>Note:</strong> <code>luwra::MemberMap</code> is an alias for <code>std:map&lt;luwra::Pushable, luwra::Pushable&gt;</code>. Its keys
+and values are constructible using any pushable type.</p>
 <p>This produces the following stack layout:</p>
 <table>
 <thead>
@@ -362,9 +377,8 @@ luwra::push(lua, luwra::FieldVector {
 <p>It is possible to provide a template parameter to <code>push</code> to enforce pushing a specific type.
 In most cases you are probably better off by letting the compiler infer the template parameter.</p>
 <h2 id="reading-lua-values">Reading Lua values</h2>
-<p>Simple retrieval of Lua values is done using
-<a href="../reference/namespaceluwra.html#a4fe4e574680cf54a0f8d958740eb90ab">read&lt;T&gt;</a>. Consider the
-stack layout from the previous example. This is how you would retrieve a value from the stack.</p>
+<p>Simple retrieval of Lua values is done using <a href="../reference/namespaceluwra.html#a4fe4e574680cf54a0f8d958740eb90ab">read&lt;T&gt;</a>. Consider the stack layout
+from the previous example. This is how you would retrieve a value from the stack.</p>
 <pre><code class="c++">// Retrieve the integer at position 1
 int value = luwra::read&lt;int&gt;(lua, 1);
 
@@ -373,15 +387,14 @@ int value = luwra::read&lt;int&gt;(lua, -5);
 </code></pre>
 
 <h2 id="read-and-type-errors">Read and type errors</h2>
-<p>What happens when a value which you are trying to read mismatches the expected type or cannot be
-converted to it? Most <code>Value&lt;T&gt;</code> specializations use Lua's <code>luaL_check*</code> functions to retrieve
-the values from the stack. This means that no exceptions will be thrown - instead the error handling
-is delegated to the Lua VM. Have a look at the
-<a href="http://www.lua.org/manual/5.3/manual.html#4.6">error handling documentation</a> for more information.</p>
+<p>What happens when a value mismatches the expected type or cannot be converted to it? Most
+<a href="../reference/structluwra_1_1Value.html">Value</a> specializations use Lua's <code>luaL_check*</code> functions to retrieve the values from
+the stack. This means that no exceptions will be thrown - instead the error handling is delegated to
+the Lua VM. Have a look at the <a href="http://www.lua.org/manual/5.3/manual.html#4.6">error handling documentation</a> for more
+information.</p>
 <h1 id="globals">Globals</h1>
-<p>In order to convenient register values in the global namespace, Luwra provides
-<a href="../reference/namespaceluwra.html#afed27900ff117638937ad92e0217258d">setGlobal</a> and
-<a href="../reference/namespaceluwra.html#af0a7dbbbdb339227c6ecaaa46422e05b">getGlobal</a>.</p>
+<p>In order to conveniently register values in the global namespace, Luwra provides
+<a href="../reference/namespaceluwra.html#afed27900ff117638937ad92e0217258d">setGlobal</a> and [getGlobal][luwra-global].</p>
 <pre><code class="c++">// Register in the global namespace
 luwra::setGlobal(lua, &quot;almostPi&quot;, 3.14);
 

+ 1 - 1
docs/output/index.html

@@ -193,5 +193,5 @@ your preference.</p>
 
 <!--
 MkDocs version : 0.15.3
-Build Date UTC : 2016-05-20 15:20:19.074063
+Build Date UTC : 2016-05-20 20:38:19.958763
 -->

File diff suppressed because it is too large
+ 0 - 0
docs/output/mkdocs/search_index.json


+ 16 - 15
docs/output/reference/annotated.html

@@ -64,21 +64,22 @@
 <tr id="row_0_22_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01signedlong_01int_01_4.html" target="_self">Value&lt; signedlong int &gt;</a></td><td class="desc"></td></tr>
 <tr id="row_0_23_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01signedlong_01long_01int_01_4.html" target="_self">Value&lt; signedlong long int &gt;</a></td><td class="desc"></td></tr>
 <tr id="row_0_24_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01signedshort_01_4.html" target="_self">Value&lt; signedshort &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_0_25_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1list_3_01T_01_4_01_4.html" target="_self">Value&lt; std::list&lt; T &gt; &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_0_26_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1map_3_01K_00_01V_01_4_01_4.html" target="_self">Value&lt; std::map&lt; K, V &gt; &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_0_27_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1nullptr__t_01_4.html" target="_self">Value&lt; std::nullptr_t &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_0_28_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1string_01_4.html" target="_self">Value&lt; std::string &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_0_29_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1tuple_3_01A_8_8_8_01_4_01_4.html" target="_self">Value&lt; std::tuple&lt; A... &gt; &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_0_30_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1vector_3_01T_01_4_01_4.html" target="_self">Value&lt; std::vector&lt; T &gt; &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_0_31_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01Table_01_4.html" target="_self">Value&lt; Table &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_0_32_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01U_01_6_01_4.html" target="_self">Value&lt; U &amp; &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_0_33_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01U_01_5_01_4.html" target="_self">Value&lt; U * &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_0_34_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01unsigned_01char_01_4.html" target="_self">Value&lt; unsigned char &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_0_35_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01unsigned_01int_01_4.html" target="_self">Value&lt; unsigned int &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_0_36_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01unsigned_01long_01int_01_4.html" target="_self">Value&lt; unsigned long int &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_0_37_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01unsigned_01long_01long_01int_01_4.html" target="_self">Value&lt; unsigned long long int &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_0_38_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01unsigned_01short_01_4.html" target="_self">Value&lt; unsigned short &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_0_39_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01volatile_01T_01_4.html" target="_self">Value&lt; volatile T &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_0_25_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1function_3_01R_07A_8_8_8_08_4_01_4.html" target="_self">Value&lt; std::function&lt; R(A...)&gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_0_26_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1list_3_01T_01_4_01_4.html" target="_self">Value&lt; std::list&lt; T &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_0_27_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1map_3_01K_00_01V_01_4_01_4.html" target="_self">Value&lt; std::map&lt; K, V &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_0_28_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1nullptr__t_01_4.html" target="_self">Value&lt; std::nullptr_t &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_0_29_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1string_01_4.html" target="_self">Value&lt; std::string &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_0_30_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1tuple_3_01A_8_8_8_01_4_01_4.html" target="_self">Value&lt; std::tuple&lt; A... &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_0_31_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1vector_3_01T_01_4_01_4.html" target="_self">Value&lt; std::vector&lt; T &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_0_32_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01Table_01_4.html" target="_self">Value&lt; Table &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_0_33_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01U_01_6_01_4.html" target="_self">Value&lt; U &amp; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_0_34_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01U_01_5_01_4.html" target="_self">Value&lt; U * &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_0_35_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01unsigned_01char_01_4.html" target="_self">Value&lt; unsigned char &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_0_36_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01unsigned_01int_01_4.html" target="_self">Value&lt; unsigned int &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_0_37_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01unsigned_01long_01int_01_4.html" target="_self">Value&lt; unsigned long int &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_0_38_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01unsigned_01long_01long_01int_01_4.html" target="_self">Value&lt; unsigned long long int &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_0_39_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01unsigned_01short_01_4.html" target="_self">Value&lt; unsigned short &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_0_40_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01volatile_01T_01_4.html" target="_self">Value&lt; volatile T &gt;</a></td><td class="desc"></td></tr>
 </table>
 </div><!-- directory -->
 </div><!-- contents -->

File diff suppressed because it is too large
+ 0 - 0
docs/output/reference/classes.html


+ 6 - 3
docs/output/reference/functions.html

@@ -110,8 +110,8 @@
 
 <h3><a class="anchor" id="index_n"></a>- n -</h3><ul>
 <li>NativeFunction()
-: <a class="el" href="structluwra_1_1NativeFunction.html#a55d101f697ecd2e78253ee9b9bd25131">luwra::NativeFunction&lt; R &gt;</a>
-, <a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html#ab48036a688b99904adac5071d681bf4c">luwra::NativeFunction&lt; void &gt;</a>
+: <a class="el" href="structluwra_1_1NativeFunction.html#abbdc47fe7ee8ff4df594c34b2f333d73">luwra::NativeFunction&lt; R &gt;</a>
+, <a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html#a6c8d2de8e17430fee1805f6e46805fdd">luwra::NativeFunction&lt; void &gt;</a>
 </li>
 </ul>
 
@@ -169,6 +169,7 @@
 , <a class="el" href="structluwra_1_1Value_3_01const_01char_01_5_01_4.html#aa0d49a4e0e2f100b0fe122a44b255121">luwra::Value&lt; const char * &gt;</a>
 , <a class="el" href="structluwra_1_1Value_3_01NativeFunction_3_01R_01_4_01_4.html#a7df5cecbbd80629c5b80e7b11bf57165">luwra::Value&lt; NativeFunction&lt; R &gt; &gt;</a>
 , <a class="el" href="structluwra_1_1Value_3_01Reference_01_4.html#aa8002cc2bb31ad45d8e085f426a4e8ad">luwra::Value&lt; Reference &gt;</a>
+, <a class="el" href="structluwra_1_1Value_3_01std_1_1function_3_01R_07A_8_8_8_08_4_01_4.html#aeddd905d19e89a7e0acd19a94036952e">luwra::Value&lt; std::function&lt; R(A...)&gt; &gt;</a>
 , <a class="el" href="structluwra_1_1Value_3_01std_1_1nullptr__t_01_4.html#a1a7bba83cd98afa2a54eac6467a36ad8">luwra::Value&lt; std::nullptr_t &gt;</a>
 , <a class="el" href="structluwra_1_1Value_3_01std_1_1string_01_4.html#acb280c3a6aeb44f949fc8a21174dbcbe">luwra::Value&lt; std::string &gt;</a>
 , <a class="el" href="structluwra_1_1Value_3_01Table_01_4.html#af17f2f16983017d9be6678b046e8b135">luwra::Value&lt; Table &gt;</a>
@@ -176,7 +177,9 @@
 , <a class="el" href="structluwra_1_1Value_3_01U_01_5_01_4.html#a16bf696f51a4b2729ae9ca26c5fc040d">luwra::Value&lt; U * &gt;</a>
 </li>
 <li>ref
-: <a class="el" href="structluwra_1_1Table.html#a1f7698f2c363af4e8157748b1b4c9794">luwra::Table</a>
+: <a class="el" href="structluwra_1_1NativeFunction.html#a4961c57ece4dd1da80899e8391dd1c6b">luwra::NativeFunction&lt; R &gt;</a>
+, <a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html#ae7410fa66f3efc09fd5d27f0d1188e54">luwra::NativeFunction&lt; void &gt;</a>
+, <a class="el" href="structluwra_1_1Table.html#a1f7698f2c363af4e8157748b1b4c9794">luwra::Table</a>
 </li>
 <li>Reference()
 : <a class="el" href="structluwra_1_1Reference.html#a8f276276f86e76b7efb29a46a35a09ce">luwra::Reference</a>

+ 4 - 3
docs/output/reference/functions_func.html

@@ -96,8 +96,8 @@
 
 <h3><a class="anchor" id="index_n"></a>- n -</h3><ul>
 <li>NativeFunction()
-: <a class="el" href="structluwra_1_1NativeFunction.html#a55d101f697ecd2e78253ee9b9bd25131">luwra::NativeFunction&lt; R &gt;</a>
-, <a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html#ab48036a688b99904adac5071d681bf4c">luwra::NativeFunction&lt; void &gt;</a>
+: <a class="el" href="structluwra_1_1NativeFunction.html#abbdc47fe7ee8ff4df594c34b2f333d73">luwra::NativeFunction&lt; R &gt;</a>
+, <a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html#a6c8d2de8e17430fee1805f6e46805fdd">luwra::NativeFunction&lt; void &gt;</a>
 </li>
 </ul>
 
@@ -155,6 +155,7 @@
 , <a class="el" href="structluwra_1_1Value_3_01const_01char_01_5_01_4.html#aa0d49a4e0e2f100b0fe122a44b255121">luwra::Value&lt; const char * &gt;</a>
 , <a class="el" href="structluwra_1_1Value_3_01NativeFunction_3_01R_01_4_01_4.html#a7df5cecbbd80629c5b80e7b11bf57165">luwra::Value&lt; NativeFunction&lt; R &gt; &gt;</a>
 , <a class="el" href="structluwra_1_1Value_3_01Reference_01_4.html#aa8002cc2bb31ad45d8e085f426a4e8ad">luwra::Value&lt; Reference &gt;</a>
+, <a class="el" href="structluwra_1_1Value_3_01std_1_1function_3_01R_07A_8_8_8_08_4_01_4.html#aeddd905d19e89a7e0acd19a94036952e">luwra::Value&lt; std::function&lt; R(A...)&gt; &gt;</a>
 , <a class="el" href="structluwra_1_1Value_3_01std_1_1nullptr__t_01_4.html#a1a7bba83cd98afa2a54eac6467a36ad8">luwra::Value&lt; std::nullptr_t &gt;</a>
 , <a class="el" href="structluwra_1_1Value_3_01std_1_1string_01_4.html#acb280c3a6aeb44f949fc8a21174dbcbe">luwra::Value&lt; std::string &gt;</a>
 , <a class="el" href="structluwra_1_1Value_3_01Table_01_4.html#af17f2f16983017d9be6678b046e8b135">luwra::Value&lt; Table &gt;</a>
@@ -162,7 +163,7 @@
 , <a class="el" href="structluwra_1_1Value_3_01U_01_5_01_4.html#a16bf696f51a4b2729ae9ca26c5fc040d">luwra::Value&lt; U * &gt;</a>
 </li>
 <li>Reference()
-: <a class="el" href="structluwra_1_1Reference.html#a1b705c627c185727126a95f1999aabd9">luwra::Reference</a>
+: <a class="el" href="structluwra_1_1Reference.html#a8f276276f86e76b7efb29a46a35a09ce">luwra::Reference</a>
 </li>
 <li>registerUserType()
 : <a class="el" href="structluwra_1_1StateWrapper.html#af5b65a1575e106355cf9135f30f1346e">luwra::StateWrapper</a>

+ 3 - 1
docs/output/reference/functions_vars.html

@@ -51,7 +51,9 @@
 : <a class="el" href="structluwra_1_1Pushable.html#a63bcd97a5a4b5fe8b78409aff2449737">luwra::Pushable</a>
 </li>
 <li>ref
-: <a class="el" href="structluwra_1_1Table.html#a1f7698f2c363af4e8157748b1b4c9794">luwra::Table</a>
+: <a class="el" href="structluwra_1_1NativeFunction.html#a4961c57ece4dd1da80899e8391dd1c6b">luwra::NativeFunction&lt; R &gt;</a>
+, <a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html#ae7410fa66f3efc09fd5d27f0d1188e54">luwra::NativeFunction&lt; void &gt;</a>
+, <a class="el" href="structluwra_1_1Table.html#a1f7698f2c363af4e8157748b1b4c9794">luwra::Table</a>
 </li>
 <li>state
 : <a class="el" href="structluwra_1_1StateWrapper.html#ab5c6fb20675aec5710857c6962c598ff">luwra::StateWrapper</a>

+ 55 - 54
docs/output/reference/hierarchy.html

@@ -38,60 +38,61 @@
 <div class="contents">
 <div class="textblock">This inheritance list is sorted roughly, but not completely, alphabetically:</div><div class="directory">
 <div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span>]</div><table class="directory">
-<tr id="row_0_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_0_" class="arrow" onclick="toggleFolder('0_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; double, Number &gt;</b></td><td class="desc"></td></tr>
-<tr id="row_0_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01double_01_4.html" target="_self">luwra::Value&lt; double &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_1_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_1_" class="arrow" onclick="toggleFolder('1_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; float, Number &gt;</b></td><td class="desc"></td></tr>
-<tr id="row_1_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01float_01_4.html" target="_self">luwra::Value&lt; float &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_2_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_2_" class="arrow" onclick="toggleFolder('2_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; long double, Number &gt;</b></td><td class="desc"></td></tr>
-<tr id="row_2_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01long_01double_01_4.html" target="_self">luwra::Value&lt; long double &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_3_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_3_" class="arrow" onclick="toggleFolder('3_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; signed char, Integer &gt;</b></td><td class="desc"></td></tr>
-<tr id="row_3_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01signedchar_01_4.html" target="_self">luwra::Value&lt; signedchar &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_4_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_4_" class="arrow" onclick="toggleFolder('4_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; signed int, Integer &gt;</b></td><td class="desc"></td></tr>
-<tr id="row_4_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01signedint_01_4.html" target="_self">luwra::Value&lt; signedint &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_5_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_5_" class="arrow" onclick="toggleFolder('5_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; signed long int, Integer &gt;</b></td><td class="desc"></td></tr>
-<tr id="row_5_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01signedlong_01int_01_4.html" target="_self">luwra::Value&lt; signedlong int &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_6_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_6_" class="arrow" onclick="toggleFolder('6_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; signed long long int, Integer &gt;</b></td><td class="desc"></td></tr>
-<tr id="row_6_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01signedlong_01long_01int_01_4.html" target="_self">luwra::Value&lt; signedlong long int &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_7_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_7_" class="arrow" onclick="toggleFolder('7_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; signed short, Integer &gt;</b></td><td class="desc"></td></tr>
-<tr id="row_7_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01signedshort_01_4.html" target="_self">luwra::Value&lt; signedshort &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_8_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_8_" class="arrow" onclick="toggleFolder('8_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; unsigned char, Integer &gt;</b></td><td class="desc"></td></tr>
-<tr id="row_8_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01unsigned_01char_01_4.html" target="_self">luwra::Value&lt; unsigned char &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_9_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_9_" class="arrow" onclick="toggleFolder('9_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; unsigned int, Integer &gt;</b></td><td class="desc"></td></tr>
-<tr id="row_9_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01unsigned_01int_01_4.html" target="_self">luwra::Value&lt; unsigned int &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_10_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_10_" class="arrow" onclick="toggleFolder('10_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; unsigned long int, Integer &gt;</b></td><td class="desc"></td></tr>
-<tr id="row_10_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01unsigned_01long_01int_01_4.html" target="_self">luwra::Value&lt; unsigned long int &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_11_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_11_" class="arrow" onclick="toggleFolder('11_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; unsigned long long int, Integer &gt;</b></td><td class="desc"></td></tr>
-<tr id="row_11_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01unsigned_01long_01long_01int_01_4.html" target="_self">luwra::Value&lt; unsigned long long int &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_12_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_12_" class="arrow" onclick="toggleFolder('12_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; unsigned short, Integer &gt;</b></td><td class="desc"></td></tr>
-<tr id="row_12_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01unsigned_01short_01_4.html" target="_self">luwra::Value&lt; unsigned short &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_13_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_13_" class="arrow" onclick="toggleFolder('13_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::PushableI</b></td><td class="desc"></td></tr>
-<tr id="row_13_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Pushable.html" target="_self">luwra::Pushable</a></td><td class="desc"></td></tr>
-<tr id="row_14_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_14_" class="arrow" onclick="toggleFolder('14_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Reference.html" target="_self">luwra::Reference</a></td><td class="desc"></td></tr>
-<tr id="row_14_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1NativeFunction.html" target="_self">luwra::NativeFunction&lt; R &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_14_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html" target="_self">luwra::NativeFunction&lt; void &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_15_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_15_" class="arrow" onclick="toggleFolder('15_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Table.html" target="_self">luwra::Table</a></td><td class="desc"></td></tr>
-<tr id="row_15_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1StateWrapper.html" target="_self">luwra::StateWrapper</a></td><td class="desc"></td></tr>
-<tr id="row_16_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_16_" class="arrow" onclick="toggleFolder('16_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value.html" target="_self">luwra::Value&lt; T &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_16_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01const_01T_01_4.html" target="_self">luwra::Value&lt; const T &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_16_1_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01volatile_01T_01_4.html" target="_self">luwra::Value&lt; volatile T &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_17_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01bool_01_4.html" target="_self">luwra::Value&lt; bool &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_18_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01CFunction_01_4.html" target="_self">luwra::Value&lt; CFunction &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_19_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_19_" class="arrow" onclick="toggleFolder('19_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01const_01char_01_5_01_4.html" target="_self">luwra::Value&lt; const char * &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_19_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01char[n]_4.html" target="_self">luwra::Value&lt; char[n]&gt;</a></td><td class="desc"></td></tr>
-<tr id="row_19_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01const_01char[n]_4.html" target="_self">luwra::Value&lt; const char[n]&gt;</a></td><td class="desc"></td></tr>
-<tr id="row_20_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01internal_1_1Path_3_01P_00_01K_01_4_01_4.html" target="_self">luwra::Value&lt; internal::Path&lt; P, K &gt; &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_21_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01NativeFunction_3_01R_01_4_01_4.html" target="_self">luwra::Value&lt; NativeFunction&lt; R &gt; &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_22_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01Pushable_01_4.html" target="_self">luwra::Value&lt; Pushable &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_23_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01Reference_01_4.html" target="_self">luwra::Value&lt; Reference &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_24_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1list_3_01T_01_4_01_4.html" target="_self">luwra::Value&lt; std::list&lt; T &gt; &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_25_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1map_3_01K_00_01V_01_4_01_4.html" target="_self">luwra::Value&lt; std::map&lt; K, V &gt; &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_26_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1nullptr__t_01_4.html" target="_self">luwra::Value&lt; std::nullptr_t &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_27_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1string_01_4.html" target="_self">luwra::Value&lt; std::string &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_28_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1tuple_3_01A_8_8_8_01_4_01_4.html" target="_self">luwra::Value&lt; std::tuple&lt; A... &gt; &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_29_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1vector_3_01T_01_4_01_4.html" target="_self">luwra::Value&lt; std::vector&lt; T &gt; &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_30_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01Table_01_4.html" target="_self">luwra::Value&lt; Table &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_31_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01U_01_6_01_4.html" target="_self">luwra::Value&lt; U &amp; &gt;</a></td><td class="desc"></td></tr>
-<tr id="row_32_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01U_01_5_01_4.html" target="_self">luwra::Value&lt; U * &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1NativeFunction.html" target="_self">luwra::NativeFunction&lt; R &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html" target="_self">luwra::NativeFunction&lt; void &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_2_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_2_" class="arrow" onclick="toggleFolder('2_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; double, Number &gt;</b></td><td class="desc"></td></tr>
+<tr id="row_2_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01double_01_4.html" target="_self">luwra::Value&lt; double &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_3_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_3_" class="arrow" onclick="toggleFolder('3_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; float, Number &gt;</b></td><td class="desc"></td></tr>
+<tr id="row_3_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01float_01_4.html" target="_self">luwra::Value&lt; float &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_4_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_4_" class="arrow" onclick="toggleFolder('4_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; long double, Number &gt;</b></td><td class="desc"></td></tr>
+<tr id="row_4_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01long_01double_01_4.html" target="_self">luwra::Value&lt; long double &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_5_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_5_" class="arrow" onclick="toggleFolder('5_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; signed char, Integer &gt;</b></td><td class="desc"></td></tr>
+<tr id="row_5_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01signedchar_01_4.html" target="_self">luwra::Value&lt; signedchar &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_6_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_6_" class="arrow" onclick="toggleFolder('6_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; signed int, Integer &gt;</b></td><td class="desc"></td></tr>
+<tr id="row_6_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01signedint_01_4.html" target="_self">luwra::Value&lt; signedint &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_7_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_7_" class="arrow" onclick="toggleFolder('7_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; signed long int, Integer &gt;</b></td><td class="desc"></td></tr>
+<tr id="row_7_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01signedlong_01int_01_4.html" target="_self">luwra::Value&lt; signedlong int &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_8_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_8_" class="arrow" onclick="toggleFolder('8_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; signed long long int, Integer &gt;</b></td><td class="desc"></td></tr>
+<tr id="row_8_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01signedlong_01long_01int_01_4.html" target="_self">luwra::Value&lt; signedlong long int &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_9_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_9_" class="arrow" onclick="toggleFolder('9_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; signed short, Integer &gt;</b></td><td class="desc"></td></tr>
+<tr id="row_9_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01signedshort_01_4.html" target="_self">luwra::Value&lt; signedshort &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_10_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_10_" class="arrow" onclick="toggleFolder('10_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; unsigned char, Integer &gt;</b></td><td class="desc"></td></tr>
+<tr id="row_10_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01unsigned_01char_01_4.html" target="_self">luwra::Value&lt; unsigned char &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_11_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_11_" class="arrow" onclick="toggleFolder('11_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; unsigned int, Integer &gt;</b></td><td class="desc"></td></tr>
+<tr id="row_11_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01unsigned_01int_01_4.html" target="_self">luwra::Value&lt; unsigned int &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_12_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_12_" class="arrow" onclick="toggleFolder('12_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; unsigned long int, Integer &gt;</b></td><td class="desc"></td></tr>
+<tr id="row_12_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01unsigned_01long_01int_01_4.html" target="_self">luwra::Value&lt; unsigned long int &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_13_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_13_" class="arrow" onclick="toggleFolder('13_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; unsigned long long int, Integer &gt;</b></td><td class="desc"></td></tr>
+<tr id="row_13_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01unsigned_01long_01long_01int_01_4.html" target="_self">luwra::Value&lt; unsigned long long int &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_14_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_14_" class="arrow" onclick="toggleFolder('14_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::NumericValueBase&lt; unsigned short, Integer &gt;</b></td><td class="desc"></td></tr>
+<tr id="row_14_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01unsigned_01short_01_4.html" target="_self">luwra::Value&lt; unsigned short &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_15_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_15_" class="arrow" onclick="toggleFolder('15_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>luwra::internal::PushableI</b></td><td class="desc"></td></tr>
+<tr id="row_15_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Pushable.html" target="_self">luwra::Pushable</a></td><td class="desc"></td></tr>
+<tr id="row_16_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Reference.html" target="_self">luwra::Reference</a></td><td class="desc"></td></tr>
+<tr id="row_17_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_17_" class="arrow" onclick="toggleFolder('17_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Table.html" target="_self">luwra::Table</a></td><td class="desc"></td></tr>
+<tr id="row_17_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1StateWrapper.html" target="_self">luwra::StateWrapper</a></td><td class="desc"></td></tr>
+<tr id="row_18_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_18_" class="arrow" onclick="toggleFolder('18_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value.html" target="_self">luwra::Value&lt; T &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_18_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01const_01T_01_4.html" target="_self">luwra::Value&lt; const T &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_18_1_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01volatile_01T_01_4.html" target="_self">luwra::Value&lt; volatile T &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_19_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01bool_01_4.html" target="_self">luwra::Value&lt; bool &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_20_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01CFunction_01_4.html" target="_self">luwra::Value&lt; CFunction &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_21_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_21_" class="arrow" onclick="toggleFolder('21_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01const_01char_01_5_01_4.html" target="_self">luwra::Value&lt; const char * &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_21_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01char[n]_4.html" target="_self">luwra::Value&lt; char[n]&gt;</a></td><td class="desc"></td></tr>
+<tr id="row_21_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01const_01char[n]_4.html" target="_self">luwra::Value&lt; const char[n]&gt;</a></td><td class="desc"></td></tr>
+<tr id="row_22_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01internal_1_1Path_3_01P_00_01K_01_4_01_4.html" target="_self">luwra::Value&lt; internal::Path&lt; P, K &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_23_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01NativeFunction_3_01R_01_4_01_4.html" target="_self">luwra::Value&lt; NativeFunction&lt; R &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_24_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01Pushable_01_4.html" target="_self">luwra::Value&lt; Pushable &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_25_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01Reference_01_4.html" target="_self">luwra::Value&lt; Reference &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_26_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1function_3_01R_07A_8_8_8_08_4_01_4.html" target="_self">luwra::Value&lt; std::function&lt; R(A...)&gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_27_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1list_3_01T_01_4_01_4.html" target="_self">luwra::Value&lt; std::list&lt; T &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_28_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1map_3_01K_00_01V_01_4_01_4.html" target="_self">luwra::Value&lt; std::map&lt; K, V &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_29_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1nullptr__t_01_4.html" target="_self">luwra::Value&lt; std::nullptr_t &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_30_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1string_01_4.html" target="_self">luwra::Value&lt; std::string &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_31_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1tuple_3_01A_8_8_8_01_4_01_4.html" target="_self">luwra::Value&lt; std::tuple&lt; A... &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_32_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01std_1_1vector_3_01T_01_4_01_4.html" target="_self">luwra::Value&lt; std::vector&lt; T &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_33_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01Table_01_4.html" target="_self">luwra::Value&lt; Table &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_34_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01U_01_6_01_4.html" target="_self">luwra::Value&lt; U &amp; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_35_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structluwra_1_1Value_3_01U_01_5_01_4.html" target="_self">luwra::Value&lt; U * &gt;</a></td><td class="desc"></td></tr>
 </table>
 </div><!-- directory -->
 </div><!-- contents -->

+ 2 - 0
docs/output/reference/namespaceluwra.html

@@ -91,6 +91,8 @@ Classes</h2></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1Value_3_01signedshort_01_4.html">Value&lt; signedshort &gt;</a></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1Value_3_01std_1_1function_3_01R_07A_8_8_8_08_4_01_4.html">Value&lt; std::function&lt; R(A...)&gt; &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1Value_3_01std_1_1list_3_01T_01_4_01_4.html">Value&lt; std::list&lt; T &gt; &gt;</a></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1Value_3_01std_1_1map_3_01K_00_01V_01_4_01_4.html">Value&lt; std::map&lt; K, V &gt; &gt;</a></td></tr>

+ 3 - 5
docs/output/reference/structluwra_1_1NativeFunction-members.html

@@ -43,14 +43,12 @@
 
 <p>This is the complete list of members for <a class="el" href="structluwra_1_1NativeFunction.html">luwra::NativeFunction&lt; R &gt;</a>, including all inherited members.</p>
 <table class="directory">
-  <tr class="even"><td class="entry"><a class="el" href="structluwra_1_1Reference.html#aab7b0d5abad93dfae819d41853d93dd5">impl</a></td><td class="entry"><a class="el" href="structluwra_1_1Reference.html">luwra::Reference</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="structluwra_1_1NativeFunction.html#abbdc47fe7ee8ff4df594c34b2f333d73">NativeFunction</a>(const Reference &amp;ref)</td><td class="entry"><a class="el" href="structluwra_1_1NativeFunction.html">luwra::NativeFunction&lt; R &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
   <tr><td class="entry"><a class="el" href="structluwra_1_1NativeFunction.html#a55d101f697ecd2e78253ee9b9bd25131">NativeFunction</a>(State *state, int index)</td><td class="entry"><a class="el" href="structluwra_1_1NativeFunction.html">luwra::NativeFunction&lt; R &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="structluwra_1_1Reference.html#a4c1727cd133912186f078b0d67e890a3">operator T</a>() const </td><td class="entry"><a class="el" href="structluwra_1_1Reference.html">luwra::Reference</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="structluwra_1_1NativeFunction.html#abaf3a58268bbb034c95a1e7eac70842d">NativeFunction</a>(const NativeFunction&lt; T &gt; &amp;other)</td><td class="entry"><a class="el" href="structluwra_1_1NativeFunction.html">luwra::NativeFunction&lt; R &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
   <tr><td class="entry"><a class="el" href="structluwra_1_1NativeFunction.html#afac5fb27ff8a1d482b1e36e47fac364b">operator()</a>() const </td><td class="entry"><a class="el" href="structluwra_1_1NativeFunction.html">luwra::NativeFunction&lt; R &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="structluwra_1_1NativeFunction.html#a044767af6bd781766eb254d1cfdf90f5">operator()</a>(A &amp;&amp;...args) const </td><td class="entry"><a class="el" href="structluwra_1_1NativeFunction.html">luwra::NativeFunction&lt; R &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr><td class="entry"><a class="el" href="structluwra_1_1Reference.html#a7c5adb1c1ac53741215a418622f6aff7">read</a>() const </td><td class="entry"><a class="el" href="structluwra_1_1Reference.html">luwra::Reference</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="structluwra_1_1Reference.html#a8f276276f86e76b7efb29a46a35a09ce">Reference</a>(State *state, int indexOrRef, bool isIndex=true)</td><td class="entry"><a class="el" href="structluwra_1_1Reference.html">luwra::Reference</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr><td class="entry"><a class="el" href="structluwra_1_1Reference.html#a1b705c627c185727126a95f1999aabd9">Reference</a>(State *state)</td><td class="entry"><a class="el" href="structluwra_1_1Reference.html">luwra::Reference</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="structluwra_1_1NativeFunction.html#a4961c57ece4dd1da80899e8391dd1c6b">ref</a></td><td class="entry"><a class="el" href="structluwra_1_1NativeFunction.html">luwra::NativeFunction&lt; R &gt;</a></td><td class="entry"></td></tr>
 </table></div><!-- contents -->
 	</body>
 </html>

+ 79 - 18
docs/output/reference/structluwra_1_1NativeFunction.html

@@ -38,40 +38,32 @@
 <div class="header">
   <div class="summary">
 <a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-attribs">Public Attributes</a> &#124;
 <a href="structluwra_1_1NativeFunction-members.html">List of all members</a>  </div>
   <div class="headertitle">
 <div class="title">luwra::NativeFunction&lt; R &gt; Struct Template Reference</div>  </div>
 </div><!--header-->
 <div class="contents">
-
-<p>Inherits <a class="el" href="structluwra_1_1Reference.html">luwra::Reference</a>.</p>
 <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:abbdc47fe7ee8ff4df594c34b2f333d73"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1NativeFunction.html#abbdc47fe7ee8ff4df594c34b2f333d73">NativeFunction</a> (const <a class="el" href="structluwra_1_1Reference.html">Reference</a> &amp;<a class="el" href="structluwra_1_1NativeFunction.html#a4961c57ece4dd1da80899e8391dd1c6b">ref</a>)</td></tr>
+<tr class="separator:abbdc47fe7ee8ff4df594c34b2f333d73"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a55d101f697ecd2e78253ee9b9bd25131"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1NativeFunction.html#a55d101f697ecd2e78253ee9b9bd25131">NativeFunction</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, int index)</td></tr>
 <tr class="separator:a55d101f697ecd2e78253ee9b9bd25131"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abaf3a58268bbb034c95a1e7eac70842d"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr class="memitem:abaf3a58268bbb034c95a1e7eac70842d"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structluwra_1_1NativeFunction.html#abaf3a58268bbb034c95a1e7eac70842d">NativeFunction</a> (const <a class="el" href="structluwra_1_1NativeFunction.html">NativeFunction</a>&lt; T &gt; &amp;other)</td></tr>
+<tr class="separator:abaf3a58268bbb034c95a1e7eac70842d"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:afac5fb27ff8a1d482b1e36e47fac364b"><td class="memItemLeft" align="right" valign="top">R&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1NativeFunction.html#afac5fb27ff8a1d482b1e36e47fac364b">operator()</a> () const </td></tr>
 <tr class="separator:afac5fb27ff8a1d482b1e36e47fac364b"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a044767af6bd781766eb254d1cfdf90f5"><td class="memTemplParams" colspan="2">template&lt;typename... A&gt; </td></tr>
 <tr class="memitem:a044767af6bd781766eb254d1cfdf90f5"><td class="memTemplItemLeft" align="right" valign="top">R&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structluwra_1_1NativeFunction.html#a044767af6bd781766eb254d1cfdf90f5">operator()</a> (A &amp;&amp;...args) const </td></tr>
 <tr class="separator:a044767af6bd781766eb254d1cfdf90f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="inherit_header pub_methods_structluwra_1_1Reference"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_structluwra_1_1Reference')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="structluwra_1_1Reference.html">luwra::Reference</a></td></tr>
-<tr class="memitem:a8f276276f86e76b7efb29a46a35a09ce inherit pub_methods_structluwra_1_1Reference"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1Reference.html#a8f276276f86e76b7efb29a46a35a09ce">Reference</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, int indexOrRef, bool isIndex=true)</td></tr>
-<tr class="separator:a8f276276f86e76b7efb29a46a35a09ce inherit pub_methods_structluwra_1_1Reference"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a1b705c627c185727126a95f1999aabd9 inherit pub_methods_structluwra_1_1Reference"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1Reference.html#a1b705c627c185727126a95f1999aabd9">Reference</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state)</td></tr>
-<tr class="separator:a1b705c627c185727126a95f1999aabd9 inherit pub_methods_structluwra_1_1Reference"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a7c5adb1c1ac53741215a418622f6aff7 inherit pub_methods_structluwra_1_1Reference"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:a7c5adb1c1ac53741215a418622f6aff7 inherit pub_methods_structluwra_1_1Reference"><td class="memTemplItemLeft" align="right" valign="top">T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structluwra_1_1Reference.html#a7c5adb1c1ac53741215a418622f6aff7">read</a> () const </td></tr>
-<tr class="separator:a7c5adb1c1ac53741215a418622f6aff7 inherit pub_methods_structluwra_1_1Reference"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a4c1727cd133912186f078b0d67e890a3 inherit pub_methods_structluwra_1_1Reference"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:a4c1727cd133912186f078b0d67e890a3 inherit pub_methods_structluwra_1_1Reference"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structluwra_1_1Reference.html#a4c1727cd133912186f078b0d67e890a3">operator T</a> () const </td></tr>
-<tr class="separator:a4c1727cd133912186f078b0d67e890a3 inherit pub_methods_structluwra_1_1Reference"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
-Additional Inherited Members</h2></td></tr>
-<tr class="inherit_header pub_attribs_structluwra_1_1Reference"><td colspan="2" onclick="javascript:toggleInherit('pub_attribs_structluwra_1_1Reference')"><img src="closed.png" alt="-"/>&#160;Public Attributes inherited from <a class="el" href="structluwra_1_1Reference.html">luwra::Reference</a></td></tr>
-<tr class="memitem:aab7b0d5abad93dfae819d41853d93dd5 inherit pub_attribs_structluwra_1_1Reference"><td class="memItemLeft" align="right" valign="top">const internal::SharedReferenceImpl&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1Reference.html#aab7b0d5abad93dfae819d41853d93dd5">impl</a></td></tr>
-<tr class="separator:aab7b0d5abad93dfae819d41853d93dd5 inherit pub_attribs_structluwra_1_1Reference"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Public Attributes</h2></td></tr>
+<tr class="memitem:a4961c57ece4dd1da80899e8391dd1c6b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structluwra_1_1Reference.html">Reference</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1NativeFunction.html#a4961c57ece4dd1da80899e8391dd1c6b">ref</a></td></tr>
+<tr class="separator:a4961c57ece4dd1da80899e8391dd1c6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
 <div class="textblock"><h3>template&lt;typename R&gt;<br />
@@ -79,6 +71,32 @@ struct luwra::NativeFunction&lt; R &gt;</h3>
 
 <p>A callable native Lua function. </p>
 </div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="abbdc47fe7ee8ff4df594c34b2f333d73"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename R &gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="structluwra_1_1NativeFunction.html">luwra::NativeFunction</a>&lt; R &gt;::<a class="el" href="structluwra_1_1NativeFunction.html">NativeFunction</a> </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="structluwra_1_1Reference.html">Reference</a> &amp;&#160;</td>
+          <td class="paramname"><em>ref</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
 <a class="anchor" id="a55d101f697ecd2e78253ee9b9bd25131"></a>
 <div class="memitem">
 <div class="memproto">
@@ -113,6 +131,34 @@ template&lt;typename R &gt; </div>
 </table>
 </div><div class="memdoc">
 
+</div>
+</div>
+<a class="anchor" id="abaf3a58268bbb034c95a1e7eac70842d"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename R &gt; </div>
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="structluwra_1_1NativeFunction.html">luwra::NativeFunction</a>&lt; R &gt;::<a class="el" href="structluwra_1_1NativeFunction.html">NativeFunction</a> </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="structluwra_1_1NativeFunction.html">NativeFunction</a>&lt; T &gt; &amp;&#160;</td>
+          <td class="paramname"><em>other</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
 </div>
 </div>
 <h2 class="groupheader">Member Function Documentation</h2>
@@ -167,6 +213,21 @@ template&lt;typename... A&gt; </div>
 </table>
 </div><div class="memdoc">
 
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a class="anchor" id="a4961c57ece4dd1da80899e8391dd1c6b"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename R &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="structluwra_1_1Reference.html">Reference</a> <a class="el" href="structluwra_1_1NativeFunction.html">luwra::NativeFunction</a>&lt; R &gt;::ref</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
 </div>
 </div>
 </div><!-- contents -->

+ 4 - 7
docs/output/reference/structluwra_1_1NativeFunction_3_01void_01_4-members.html

@@ -43,14 +43,11 @@
 
 <p>This is the complete list of members for <a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html">luwra::NativeFunction&lt; void &gt;</a>, including all inherited members.</p>
 <table class="directory">
-  <tr class="even"><td class="entry"><a class="el" href="structluwra_1_1Reference.html#aab7b0d5abad93dfae819d41853d93dd5">impl</a></td><td class="entry"><a class="el" href="structluwra_1_1Reference.html">luwra::Reference</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html#a6c8d2de8e17430fee1805f6e46805fdd">NativeFunction</a>(const Reference &amp;ref)</td><td class="entry"><a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html">luwra::NativeFunction&lt; void &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
   <tr><td class="entry"><a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html#ab48036a688b99904adac5071d681bf4c">NativeFunction</a>(State *state, int index)</td><td class="entry"><a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html">luwra::NativeFunction&lt; void &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="structluwra_1_1Reference.html#a4c1727cd133912186f078b0d67e890a3">operator T</a>() const </td><td class="entry"><a class="el" href="structluwra_1_1Reference.html">luwra::Reference</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr><td class="entry"><a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html#a453d0b1b6caaf1a11b90a84f7aa902d8">operator()</a>() const </td><td class="entry"><a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html">luwra::NativeFunction&lt; void &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html#a9cbb0d9195902805a07d391979e1f337">operator()</a>(A &amp;&amp;...args) const </td><td class="entry"><a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html">luwra::NativeFunction&lt; void &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr><td class="entry"><a class="el" href="structluwra_1_1Reference.html#a7c5adb1c1ac53741215a418622f6aff7">read</a>() const </td><td class="entry"><a class="el" href="structluwra_1_1Reference.html">luwra::Reference</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="structluwra_1_1Reference.html#a8f276276f86e76b7efb29a46a35a09ce">Reference</a>(State *state, int indexOrRef, bool isIndex=true)</td><td class="entry"><a class="el" href="structluwra_1_1Reference.html">luwra::Reference</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr><td class="entry"><a class="el" href="structluwra_1_1Reference.html#a1b705c627c185727126a95f1999aabd9">Reference</a>(State *state)</td><td class="entry"><a class="el" href="structluwra_1_1Reference.html">luwra::Reference</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html#a453d0b1b6caaf1a11b90a84f7aa902d8">operator()</a>() const </td><td class="entry"><a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html">luwra::NativeFunction&lt; void &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html#a9cbb0d9195902805a07d391979e1f337">operator()</a>(A &amp;&amp;...args) const </td><td class="entry"><a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html">luwra::NativeFunction&lt; void &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html#ae7410fa66f3efc09fd5d27f0d1188e54">ref</a></td><td class="entry"><a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html">luwra::NativeFunction&lt; void &gt;</a></td><td class="entry"></td></tr>
 </table></div><!-- contents -->
 	</body>
 </html>

+ 44 - 18
docs/output/reference/structluwra_1_1NativeFunction_3_01void_01_4.html

@@ -38,16 +38,17 @@
 <div class="header">
   <div class="summary">
 <a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-attribs">Public Attributes</a> &#124;
 <a href="structluwra_1_1NativeFunction_3_01void_01_4-members.html">List of all members</a>  </div>
   <div class="headertitle">
 <div class="title">luwra::NativeFunction&lt; void &gt; Struct Template Reference</div>  </div>
 </div><!--header-->
 <div class="contents">
-
-<p>Inherits <a class="el" href="structluwra_1_1Reference.html">luwra::Reference</a>.</p>
 <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:a6c8d2de8e17430fee1805f6e46805fdd"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html#a6c8d2de8e17430fee1805f6e46805fdd">NativeFunction</a> (const <a class="el" href="structluwra_1_1Reference.html">Reference</a> &amp;<a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html#ae7410fa66f3efc09fd5d27f0d1188e54">ref</a>)</td></tr>
+<tr class="separator:a6c8d2de8e17430fee1805f6e46805fdd"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ab48036a688b99904adac5071d681bf4c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html#ab48036a688b99904adac5071d681bf4c">NativeFunction</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, int index)</td></tr>
 <tr class="separator:ab48036a688b99904adac5071d681bf4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a453d0b1b6caaf1a11b90a84f7aa902d8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html#a453d0b1b6caaf1a11b90a84f7aa902d8">operator()</a> () const </td></tr>
@@ -55,23 +56,11 @@ Public Member Functions</h2></td></tr>
 <tr class="memitem:a9cbb0d9195902805a07d391979e1f337"><td class="memTemplParams" colspan="2">template&lt;typename... A&gt; </td></tr>
 <tr class="memitem:a9cbb0d9195902805a07d391979e1f337"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html#a9cbb0d9195902805a07d391979e1f337">operator()</a> (A &amp;&amp;...args) const </td></tr>
 <tr class="separator:a9cbb0d9195902805a07d391979e1f337"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="inherit_header pub_methods_structluwra_1_1Reference"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_structluwra_1_1Reference')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="structluwra_1_1Reference.html">luwra::Reference</a></td></tr>
-<tr class="memitem:a8f276276f86e76b7efb29a46a35a09ce inherit pub_methods_structluwra_1_1Reference"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1Reference.html#a8f276276f86e76b7efb29a46a35a09ce">Reference</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, int indexOrRef, bool isIndex=true)</td></tr>
-<tr class="separator:a8f276276f86e76b7efb29a46a35a09ce inherit pub_methods_structluwra_1_1Reference"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a1b705c627c185727126a95f1999aabd9 inherit pub_methods_structluwra_1_1Reference"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1Reference.html#a1b705c627c185727126a95f1999aabd9">Reference</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state)</td></tr>
-<tr class="separator:a1b705c627c185727126a95f1999aabd9 inherit pub_methods_structluwra_1_1Reference"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a7c5adb1c1ac53741215a418622f6aff7 inherit pub_methods_structluwra_1_1Reference"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:a7c5adb1c1ac53741215a418622f6aff7 inherit pub_methods_structluwra_1_1Reference"><td class="memTemplItemLeft" align="right" valign="top">T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structluwra_1_1Reference.html#a7c5adb1c1ac53741215a418622f6aff7">read</a> () const </td></tr>
-<tr class="separator:a7c5adb1c1ac53741215a418622f6aff7 inherit pub_methods_structluwra_1_1Reference"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a4c1727cd133912186f078b0d67e890a3 inherit pub_methods_structluwra_1_1Reference"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:a4c1727cd133912186f078b0d67e890a3 inherit pub_methods_structluwra_1_1Reference"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structluwra_1_1Reference.html#a4c1727cd133912186f078b0d67e890a3">operator T</a> () const </td></tr>
-<tr class="separator:a4c1727cd133912186f078b0d67e890a3 inherit pub_methods_structluwra_1_1Reference"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
-Additional Inherited Members</h2></td></tr>
-<tr class="inherit_header pub_attribs_structluwra_1_1Reference"><td colspan="2" onclick="javascript:toggleInherit('pub_attribs_structluwra_1_1Reference')"><img src="closed.png" alt="-"/>&#160;Public Attributes inherited from <a class="el" href="structluwra_1_1Reference.html">luwra::Reference</a></td></tr>
-<tr class="memitem:aab7b0d5abad93dfae819d41853d93dd5 inherit pub_attribs_structluwra_1_1Reference"><td class="memItemLeft" align="right" valign="top">const internal::SharedReferenceImpl&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1Reference.html#aab7b0d5abad93dfae819d41853d93dd5">impl</a></td></tr>
-<tr class="separator:aab7b0d5abad93dfae819d41853d93dd5 inherit pub_attribs_structluwra_1_1Reference"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Public Attributes</h2></td></tr>
+<tr class="memitem:ae7410fa66f3efc09fd5d27f0d1188e54"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structluwra_1_1Reference.html">Reference</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html#ae7410fa66f3efc09fd5d27f0d1188e54">ref</a></td></tr>
+<tr class="separator:ae7410fa66f3efc09fd5d27f0d1188e54"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
 <div class="textblock"><h3>template&lt;&gt;<br />
@@ -79,6 +68,30 @@ struct luwra::NativeFunction&lt; void &gt;</h3>
 
 <p>A callable native Lua function. </p>
 </div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a6c8d2de8e17430fee1805f6e46805fdd"></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="structluwra_1_1NativeFunction.html">luwra::NativeFunction</a>&lt; void &gt;::<a class="el" href="structluwra_1_1NativeFunction.html">NativeFunction</a> </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="structluwra_1_1Reference.html">Reference</a> &amp;&#160;</td>
+          <td class="paramname"><em>ref</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
 <a class="anchor" id="ab48036a688b99904adac5071d681bf4c"></a>
 <div class="memitem">
 <div class="memproto">
@@ -161,6 +174,19 @@ template&lt;typename... A&gt; </div>
 </table>
 </div><div class="memdoc">
 
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a class="anchor" id="ae7410fa66f3efc09fd5d27f0d1188e54"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="structluwra_1_1Reference.html">Reference</a> <a class="el" href="structluwra_1_1NativeFunction.html">luwra::NativeFunction</a>&lt; void &gt;::ref</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
 </div>
 </div>
 </div><!-- contents -->

+ 0 - 2
docs/output/reference/structluwra_1_1Reference.html

@@ -44,8 +44,6 @@
 <div class="title">luwra::Reference Struct Reference</div>  </div>
 </div><!--header-->
 <div class="contents">
-
-<p>Inherited by <a class="el" href="structluwra_1_1NativeFunction.html">luwra::NativeFunction&lt; R &gt;</a>, and <a class="el" href="structluwra_1_1NativeFunction_3_01void_01_4.html">luwra::NativeFunction&lt; void &gt;</a>.</p>
 <table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
 Public Member Functions</h2></td></tr>

+ 49 - 0
docs/output/reference/structluwra_1_1Value_3_01std_1_1function_3_01R_07A_8_8_8_08_4_01_4-members.html

@@ -0,0 +1,49 @@
+<!-- HTML header for doxygen 1.8.10-->
+<!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="Content-Type" content="text/xhtml;charset=UTF-8"/>
+		<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+		<meta name="generator" content="Doxygen 1.8.11"/>
+		<title>Luwra: Member List</title>
+		<link href="tabs.css" rel="stylesheet" type="text/css"/>
+		<script type="text/javascript" src="jquery.js"></script>
+		<script type="text/javascript" src="dynsections.js"></script>
+		<link href="doxygen.css" rel="stylesheet" type="text/css" />
+		<link href="stylesheet.css" rel="stylesheet" type="text/css"/>
+	</head>
+	<body>
+		<div id="top">
+<!-- Generated by Doxygen 1.8.11 -->
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></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="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="namespaceluwra.html">luwra</a></li><li class="navelem"><a class="el" href="structluwra_1_1Value_3_01std_1_1function_3_01R_07A_8_8_8_08_4_01_4.html">Value&lt; std::function&lt; R(A...)&gt; &gt;</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">luwra::Value&lt; std::function&lt; R(A...)&gt; &gt; Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="structluwra_1_1Value_3_01std_1_1function_3_01R_07A_8_8_8_08_4_01_4.html">luwra::Value&lt; std::function&lt; R(A...)&gt; &gt;</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="structluwra_1_1Value_3_01std_1_1function_3_01R_07A_8_8_8_08_4_01_4.html#aeddd905d19e89a7e0acd19a94036952e">read</a>(State *state, int index)</td><td class="entry"><a class="el" href="structluwra_1_1Value_3_01std_1_1function_3_01R_07A_8_8_8_08_4_01_4.html">luwra::Value&lt; std::function&lt; R(A...)&gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+</table></div><!-- contents -->
+	</body>
+</html>

+ 91 - 0
docs/output/reference/structluwra_1_1Value_3_01std_1_1function_3_01R_07A_8_8_8_08_4_01_4.html

@@ -0,0 +1,91 @@
+<!-- HTML header for doxygen 1.8.10-->
+<!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="Content-Type" content="text/xhtml;charset=UTF-8"/>
+		<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+		<meta name="generator" content="Doxygen 1.8.11"/>
+		<title>Luwra: luwra::Value&lt; std::function&lt; R(A...)&gt; &gt; Struct Template Reference</title>
+		<link href="tabs.css" rel="stylesheet" type="text/css"/>
+		<script type="text/javascript" src="jquery.js"></script>
+		<script type="text/javascript" src="dynsections.js"></script>
+		<link href="doxygen.css" rel="stylesheet" type="text/css" />
+		<link href="stylesheet.css" rel="stylesheet" type="text/css"/>
+	</head>
+	<body>
+		<div id="top">
+<!-- Generated by Doxygen 1.8.11 -->
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></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="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="namespaceluwra.html">luwra</a></li><li class="navelem"><a class="el" href="structluwra_1_1Value_3_01std_1_1function_3_01R_07A_8_8_8_08_4_01_4.html">Value&lt; std::function&lt; R(A...)&gt; &gt;</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
+<a href="structluwra_1_1Value_3_01std_1_1function_3_01R_07A_8_8_8_08_4_01_4-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">luwra::Value&lt; std::function&lt; R(A...)&gt; &gt; Struct Template Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:aeddd905d19e89a7e0acd19a94036952e"><td class="memItemLeft" align="right" valign="top">static std::function&lt; R(A...)&gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1Value_3_01std_1_1function_3_01R_07A_8_8_8_08_4_01_4.html#aeddd905d19e89a7e0acd19a94036952e">read</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, int index)</td></tr>
+<tr class="separator:aeddd905d19e89a7e0acd19a94036952e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="aeddd905d19e89a7e0acd19a94036952e"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename R , typename... A&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static std::function&lt;R(A...)&gt; <a class="el" href="structluwra_1_1Value.html">luwra::Value</a>&lt; std::function&lt; R(A...)&gt; &gt;::read </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
+          <td class="paramname"><em>state</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>index</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">inline</span><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</div><!-- contents -->
+	</body>
+</html>

Some files were not shown because too many files changed in this diff