namespaceluwra.html 64 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213
  1. <!-- HTML header for doxygen 1.8.10-->
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
  6. <meta http-equiv="X-UA-Compatible" content="IE=9"/>
  7. <meta name="generator" content="Doxygen 1.8.11"/>
  8. <title>Luwra: luwra Namespace Reference</title>
  9. <link href="tabs.css" rel="stylesheet" type="text/css"/>
  10. <script type="text/javascript" src="jquery.js"></script>
  11. <script type="text/javascript" src="dynsections.js"></script>
  12. <link href="doxygen.css" rel="stylesheet" type="text/css" />
  13. <link href="stylesheet.css" rel="stylesheet" type="text/css"/>
  14. </head>
  15. <body>
  16. <div id="top">
  17. <!-- Generated by Doxygen 1.8.11 -->
  18. <div id="navrow1" class="tabs">
  19. <ul class="tablist">
  20. <li><a href="index.html"><span>Main&#160;Page</span></a></li>
  21. <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
  22. <li><a href="annotated.html"><span>Classes</span></a></li>
  23. </ul>
  24. </div>
  25. <div id="navrow2" class="tabs2">
  26. <ul class="tablist">
  27. <li><a href="namespaces.html"><span>Namespace&#160;List</span></a></li>
  28. <li><a href="namespacemembers.html"><span>Namespace&#160;Members</span></a></li>
  29. </ul>
  30. </div>
  31. </div><!-- top -->
  32. <div class="header">
  33. <div class="summary">
  34. <a href="#nested-classes">Classes</a> &#124;
  35. <a href="#typedef-members">Typedefs</a> &#124;
  36. <a href="#func-members">Functions</a> </div>
  37. <div class="headertitle">
  38. <div class="title">luwra Namespace Reference</div> </div>
  39. </div><!--header-->
  40. <div class="contents">
  41. <table class="memberdecls">
  42. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
  43. Classes</h2></td></tr>
  44. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1Arbitrary.html">Arbitrary</a></td></tr>
  45. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  46. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1GlobalAccessor.html">GlobalAccessor</a></td></tr>
  47. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  48. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1NativeFunction.html">NativeFunction</a></td></tr>
  49. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  50. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1NativeFunction_3_01R_07A_8_8_8_08_4.html">NativeFunction&lt; R(A...)&gt;</a></td></tr>
  51. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  52. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1NativeFunction_3_01void_07A_8_8_8_08_4.html">NativeFunction&lt; void(A...)&gt;</a></td></tr>
  53. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  54. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1Pushable.html">Pushable</a></td></tr>
  55. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  56. <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structluwra_1_1StateWrapper.html">StateWrapper</a></td></tr>
  57. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  58. <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.html">Value</a></td></tr>
  59. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  60. <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_01Arbitrary_01_4.html">Value&lt; Arbitrary &gt;</a></td></tr>
  61. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  62. <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_01bool_01_4.html">Value&lt; bool &gt;</a></td></tr>
  63. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  64. <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_01CFunction_01_4.html">Value&lt; CFunction &gt;</a></td></tr>
  65. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  66. <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_01char[n]_4.html">Value&lt; char[n]&gt;</a></td></tr>
  67. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  68. <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_01const_01char_01_5_01_4.html">Value&lt; const char * &gt;</a></td></tr>
  69. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  70. <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_01const_01char[n]_4.html">Value&lt; const char[n]&gt;</a></td></tr>
  71. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  72. <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_01const_01T_01_4.html">Value&lt; const T &gt;</a></td></tr>
  73. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  74. <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_01double_01_4.html">Value&lt; double &gt;</a></td></tr>
  75. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  76. <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_01FieldVector_01_4.html">Value&lt; FieldVector &gt;</a></td></tr>
  77. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  78. <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_01float_01_4.html">Value&lt; float &gt;</a></td></tr>
  79. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  80. <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_01long_01double_01_4.html">Value&lt; long double &gt;</a></td></tr>
  81. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  82. <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_01NativeFunction_3_01R_07A_8_8_8_08_4_01_4.html">Value&lt; NativeFunction&lt; R(A...)&gt; &gt;</a></td></tr>
  83. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  84. <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_01Pushable_01_4.html">Value&lt; Pushable &gt;</a></td></tr>
  85. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  86. <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_01signedchar_01_4.html">Value&lt; signedchar &gt;</a></td></tr>
  87. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  88. <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_01signedint_01_4.html">Value&lt; signedint &gt;</a></td></tr>
  89. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  90. <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_01signedlong_01int_01_4.html">Value&lt; signedlong int &gt;</a></td></tr>
  91. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  92. <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_01signedlong_01long_01int_01_4.html">Value&lt; signedlong long int &gt;</a></td></tr>
  93. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  94. <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>
  95. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  96. <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_1nullptr__t_01_4.html">Value&lt; std::nullptr_t &gt;</a></td></tr>
  97. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  98. <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_1string_01_4.html">Value&lt; std::string &gt;</a></td></tr>
  99. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  100. <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_1tuple_3_01A_8_8_8_01_4_01_4.html">Value&lt; std::tuple&lt; A... &gt; &gt;</a></td></tr>
  101. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  102. <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_01U_01_6_01_4.html">Value&lt; U &amp; &gt;</a></td></tr>
  103. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  104. <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_01U_01_5_01_4.html">Value&lt; U * &gt;</a></td></tr>
  105. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  106. <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_01unsigned_01char_01_4.html">Value&lt; unsigned char &gt;</a></td></tr>
  107. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  108. <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_01unsigned_01int_01_4.html">Value&lt; unsigned int &gt;</a></td></tr>
  109. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  110. <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_01unsigned_01long_01int_01_4.html">Value&lt; unsigned long int &gt;</a></td></tr>
  111. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  112. <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_01unsigned_01long_01long_01int_01_4.html">Value&lt; unsigned long long int &gt;</a></td></tr>
  113. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  114. <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_01unsigned_01short_01_4.html">Value&lt; unsigned short &gt;</a></td></tr>
  115. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  116. <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_01volatile_01T_01_4.html">Value&lt; volatile T &gt;</a></td></tr>
  117. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  118. </table><table class="memberdecls">
  119. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
  120. Typedefs</h2></td></tr>
  121. <tr class="memitem:ac090722c6d5d6b88b31895aad64788c2"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a> = std::vector&lt; std::pair&lt; <a class="el" href="structluwra_1_1Pushable.html">Pushable</a>, <a class="el" href="structluwra_1_1Pushable.html">Pushable</a> &gt;&gt;</td></tr>
  122. <tr class="separator:ac090722c6d5d6b88b31895aad64788c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
  123. <tr class="memitem:afd2d98882f58f8b2afdb49c3ada78659"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#afd2d98882f58f8b2afdb49c3ada78659">Integer</a> = lua_Integer</td></tr>
  124. <tr class="separator:afd2d98882f58f8b2afdb49c3ada78659"><td class="memSeparator" colspan="2">&#160;</td></tr>
  125. <tr class="memitem:ae4dc6c1079fe75220ee055a00a49a3c1"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#ae4dc6c1079fe75220ee055a00a49a3c1">Number</a> = lua_Number</td></tr>
  126. <tr class="separator:ae4dc6c1079fe75220ee055a00a49a3c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
  127. <tr class="memitem:a2c037b44385367826eb4e931b5b8197d"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> = lua_State</td></tr>
  128. <tr class="separator:a2c037b44385367826eb4e931b5b8197d"><td class="memSeparator" colspan="2">&#160;</td></tr>
  129. <tr class="memitem:a4e313d0af10393323fa280848c3888a1"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#a4e313d0af10393323fa280848c3888a1">CFunction</a> = lua_CFunction</td></tr>
  130. <tr class="separator:a4e313d0af10393323fa280848c3888a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
  131. </table><table class="memberdecls">
  132. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
  133. Functions</h2></td></tr>
  134. <tr class="memitem:a7814014b3adfbb6899255f120e70af26"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#a7814014b3adfbb6899255f120e70af26">equal</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, int index1, int index2)</td></tr>
  135. <tr class="separator:a7814014b3adfbb6899255f120e70af26"><td class="memSeparator" colspan="2">&#160;</td></tr>
  136. <tr class="memitem:a7a73f160e82f91ae974ea33c72248c35"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#a7a73f160e82f91ae974ea33c72248c35">setMetatable</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, const char *name)</td></tr>
  137. <tr class="separator:a7a73f160e82f91ae974ea33c72248c35"><td class="memSeparator" colspan="2">&#160;</td></tr>
  138. <tr class="memitem:afed27900ff117638937ad92e0217258d"><td class="memTemplParams" colspan="2">template&lt;typename V &gt; </td></tr>
  139. <tr class="memitem:afed27900ff117638937ad92e0217258d"><td class="memTemplItemLeft" align="right" valign="top">static void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#afed27900ff117638937ad92e0217258d">setGlobal</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, const std::string &amp;name, V value)</td></tr>
  140. <tr class="separator:afed27900ff117638937ad92e0217258d"><td class="memSeparator" colspan="2">&#160;</td></tr>
  141. <tr class="memitem:af0a7dbbbdb339227c6ecaaa46422e05b"><td class="memTemplParams" colspan="2">template&lt;typename V &gt; </td></tr>
  142. <tr class="memitem:af0a7dbbbdb339227c6ecaaa46422e05b"><td class="memTemplItemLeft" align="right" valign="top">static V&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#af0a7dbbbdb339227c6ecaaa46422e05b">getGlobal</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, const std::string &amp;name)</td></tr>
  143. <tr class="separator:af0a7dbbbdb339227c6ecaaa46422e05b"><td class="memSeparator" colspan="2">&#160;</td></tr>
  144. <tr class="memitem:a1d630ce9ae9b10af33624f70dde4b148"><td class="memTemplParams" colspan="2">template&lt;typename... R&gt; </td></tr>
  145. <tr class="memitem:a1d630ce9ae9b10af33624f70dde4b148"><td class="memTemplItemLeft" align="right" valign="top">static void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#a1d630ce9ae9b10af33624f70dde4b148">setFields</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, int index, R &amp;&amp;...args)</td></tr>
  146. <tr class="separator:a1d630ce9ae9b10af33624f70dde4b148"><td class="memSeparator" colspan="2">&#160;</td></tr>
  147. <tr class="memitem:a00729c47fba6114115f2e3f32c21f0b8"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#a00729c47fba6114115f2e3f32c21f0b8">setFields</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, int index, const <a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a> &amp;fields)</td></tr>
  148. <tr class="separator:a00729c47fba6114115f2e3f32c21f0b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
  149. <tr class="memitem:a06cabc81163602ec1fd8f580944f5b86"><td class="memTemplParams" colspan="2">template&lt;typename V , typename K &gt; </td></tr>
  150. <tr class="memitem:a06cabc81163602ec1fd8f580944f5b86"><td class="memTemplItemLeft" align="right" valign="top">static V&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#a06cabc81163602ec1fd8f580944f5b86">getField</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, int index, K key)</td></tr>
  151. <tr class="separator:a06cabc81163602ec1fd8f580944f5b86"><td class="memSeparator" colspan="2">&#160;</td></tr>
  152. <tr class="memitem:aa20e363f38b3ae5a168cf40365f5646a"><td class="memTemplParams" colspan="2">template&lt;typename S , typename F , typename... X&gt; </td></tr>
  153. <tr class="memitem:aa20e363f38b3ae5a168cf40365f5646a"><td class="memTemplItemLeft" align="right" valign="top">static internal::Layout&lt; S &gt;::ReturnType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#aa20e363f38b3ae5a168cf40365f5646a">direct</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, int pos, F &amp;&amp;hook, X &amp;&amp;...args)</td></tr>
  154. <tr class="separator:aa20e363f38b3ae5a168cf40365f5646a"><td class="memSeparator" colspan="2">&#160;</td></tr>
  155. <tr class="memitem:a037ab066fd6d547c57a912ffe7e5edd9"><td class="memTemplParams" colspan="2">template&lt;typename S , typename F , typename... A&gt; </td></tr>
  156. <tr class="memitem:a037ab066fd6d547c57a912ffe7e5edd9"><td class="memTemplItemLeft" align="right" valign="top">static internal::Layout&lt; S &gt;::ReturnType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#a037ab066fd6d547c57a912ffe7e5edd9">direct</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, F &amp;&amp;hook, A &amp;&amp;...args)</td></tr>
  157. <tr class="separator:a037ab066fd6d547c57a912ffe7e5edd9"><td class="memSeparator" colspan="2">&#160;</td></tr>
  158. <tr class="memitem:a839077ddd9c3d0565a40c574bc8e9555"><td class="memTemplParams" colspan="2">template&lt;typename R , typename... A&gt; </td></tr>
  159. <tr class="memitem:a839077ddd9c3d0565a40c574bc8e9555"><td class="memTemplItemLeft" align="right" valign="top">static R&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#a839077ddd9c3d0565a40c574bc8e9555">apply</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, int pos, R(*fun)(A...))</td></tr>
  160. <tr class="separator:a839077ddd9c3d0565a40c574bc8e9555"><td class="memSeparator" colspan="2">&#160;</td></tr>
  161. <tr class="memitem:ae5412e502815db7aa2a10e6c84394457"><td class="memTemplParams" colspan="2">template&lt;typename R , typename... A&gt; </td></tr>
  162. <tr class="memitem:ae5412e502815db7aa2a10e6c84394457"><td class="memTemplItemLeft" align="right" valign="top">static R&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#ae5412e502815db7aa2a10e6c84394457">apply</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, R(*fun)(A...))</td></tr>
  163. <tr class="separator:ae5412e502815db7aa2a10e6c84394457"><td class="memSeparator" colspan="2">&#160;</td></tr>
  164. <tr class="memitem:a983092513bfded87189613f8dc27ebbe"><td class="memTemplParams" colspan="2">template&lt;typename R , typename... A&gt; </td></tr>
  165. <tr class="memitem:a983092513bfded87189613f8dc27ebbe"><td class="memTemplItemLeft" align="right" valign="top">static R&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#a983092513bfded87189613f8dc27ebbe">apply</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, int pos, const std::function&lt; R(A...)&gt; &amp;fun)</td></tr>
  166. <tr class="separator:a983092513bfded87189613f8dc27ebbe"><td class="memSeparator" colspan="2">&#160;</td></tr>
  167. <tr class="memitem:a9a121cbb3ba2b4fb7ee8b2c12472ab51"><td class="memTemplParams" colspan="2">template&lt;typename R , typename... A&gt; </td></tr>
  168. <tr class="memitem:a9a121cbb3ba2b4fb7ee8b2c12472ab51"><td class="memTemplItemLeft" align="right" valign="top">static R&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#a9a121cbb3ba2b4fb7ee8b2c12472ab51">apply</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, const std::function&lt; R(A...)&gt; &amp;fun)</td></tr>
  169. <tr class="separator:a9a121cbb3ba2b4fb7ee8b2c12472ab51"><td class="memSeparator" colspan="2">&#160;</td></tr>
  170. <tr class="memitem:a9f24fc70cb48531cf1e3da6a3a741971"><td class="memTemplParams" colspan="2">template&lt;typename S , typename F , typename... A&gt; </td></tr>
  171. <tr class="memitem:a9f24fc70cb48531cf1e3da6a3a741971"><td class="memTemplItemLeft" align="right" valign="top">static size_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#a9f24fc70cb48531cf1e3da6a3a741971">map</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, int pos, F &amp;&amp;hook, A &amp;&amp;...args)</td></tr>
  172. <tr class="separator:a9f24fc70cb48531cf1e3da6a3a741971"><td class="memSeparator" colspan="2">&#160;</td></tr>
  173. <tr class="memitem:a6dc1624dc2f382d10651768a89788204"><td class="memTemplParams" colspan="2">template&lt;typename S , typename F , typename... A&gt; </td></tr>
  174. <tr class="memitem:a6dc1624dc2f382d10651768a89788204"><td class="memTemplItemLeft" align="right" valign="top">static size_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#a6dc1624dc2f382d10651768a89788204">map</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, F &amp;&amp;hook, A &amp;&amp;...args)</td></tr>
  175. <tr class="separator:a6dc1624dc2f382d10651768a89788204"><td class="memSeparator" colspan="2">&#160;</td></tr>
  176. <tr class="memitem:ae8e7eab11fc2cf3f258ffd81571066fa"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
  177. <tr class="memitem:ae8e7eab11fc2cf3f258ffd81571066fa"><td class="memTemplItemLeft" align="right" valign="top">static size_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#ae8e7eab11fc2cf3f258ffd81571066fa">push</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, T value)</td></tr>
  178. <tr class="separator:ae8e7eab11fc2cf3f258ffd81571066fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
  179. <tr class="memitem:a083af86d9ec488ddd0dee8c4cf0acdff"><td class="memTemplParams" colspan="2">template&lt;typename T1 , typename T2 , typename... TR&gt; </td></tr>
  180. <tr class="memitem:a083af86d9ec488ddd0dee8c4cf0acdff"><td class="memTemplItemLeft" align="right" valign="top">size_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#a083af86d9ec488ddd0dee8c4cf0acdff">push</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, T1 value, T2 &amp;&amp;head, TR &amp;&amp;...rest)</td></tr>
  181. <tr class="separator:a083af86d9ec488ddd0dee8c4cf0acdff"><td class="memSeparator" colspan="2">&#160;</td></tr>
  182. <tr class="memitem:a4fe4e574680cf54a0f8d958740eb90ab"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
  183. <tr class="memitem:a4fe4e574680cf54a0f8d958740eb90ab"><td class="memTemplItemLeft" align="right" valign="top">static T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#a4fe4e574680cf54a0f8d958740eb90ab">read</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, int index)</td></tr>
  184. <tr class="separator:a4fe4e574680cf54a0f8d958740eb90ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
  185. <tr class="memitem:af079dcca8e67d88e5cfdc7e8872cf5d7"><td class="memTemplParams" colspan="2">template&lt;typename U , typename... A&gt; </td></tr>
  186. <tr class="memitem:af079dcca8e67d88e5cfdc7e8872cf5d7"><td class="memTemplItemLeft" align="right" valign="top">static internal::StripUserType&lt; U &gt; &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#af079dcca8e67d88e5cfdc7e8872cf5d7">construct</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, A &amp;&amp;...args)</td></tr>
  187. <tr class="separator:af079dcca8e67d88e5cfdc7e8872cf5d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
  188. <tr class="memitem:a1d7d357f904e0bd68b66d9588fbe341a"><td class="memTemplParams" colspan="2">template&lt;typename U &gt; </td></tr>
  189. <tr class="memitem:a1d7d357f904e0bd68b66d9588fbe341a"><td class="memTemplItemLeft" align="right" valign="top">static void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#a1d7d357f904e0bd68b66d9588fbe341a">registerUserType</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, const <a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a> &amp;methods=<a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a>(), const <a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a> &amp;meta_methods=<a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a>())</td></tr>
  190. <tr class="separator:a1d7d357f904e0bd68b66d9588fbe341a"><td class="memSeparator" colspan="2">&#160;</td></tr>
  191. <tr class="memitem:a683f6075862f8fc5cad0d76445f2f607"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
  192. <tr class="memitem:a683f6075862f8fc5cad0d76445f2f607"><td class="memTemplItemLeft" align="right" valign="top">static void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#a683f6075862f8fc5cad0d76445f2f607">registerUserType</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state, const std::string &amp;ctor_name, const <a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a> &amp;methods=<a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a>(), const <a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a> &amp;meta_methods=<a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a>())</td></tr>
  193. <tr class="separator:a683f6075862f8fc5cad0d76445f2f607"><td class="memSeparator" colspan="2">&#160;</td></tr>
  194. </table>
  195. <h2 class="groupheader">Typedef Documentation</h2>
  196. <a class="anchor" id="a4e313d0af10393323fa280848c3888a1"></a>
  197. <div class="memitem">
  198. <div class="memproto">
  199. <table class="memname">
  200. <tr>
  201. <td class="memname">using <a class="el" href="namespaceluwra.html#a4e313d0af10393323fa280848c3888a1">luwra::CFunction</a> = typedef lua_CFunction</td>
  202. </tr>
  203. </table>
  204. </div><div class="memdoc">
  205. </div>
  206. </div>
  207. <a class="anchor" id="ac090722c6d5d6b88b31895aad64788c2"></a>
  208. <div class="memitem">
  209. <div class="memproto">
  210. <table class="memname">
  211. <tr>
  212. <td class="memname">using <a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">luwra::FieldVector</a> = typedef std::vector&lt;std::pair&lt;<a class="el" href="structluwra_1_1Pushable.html">Pushable</a>, <a class="el" href="structluwra_1_1Pushable.html">Pushable</a>&gt;&gt;</td>
  213. </tr>
  214. </table>
  215. </div><div class="memdoc">
  216. <p>A collection of key-value pairs. </p>
  217. </div>
  218. </div>
  219. <a class="anchor" id="afd2d98882f58f8b2afdb49c3ada78659"></a>
  220. <div class="memitem">
  221. <div class="memproto">
  222. <table class="memname">
  223. <tr>
  224. <td class="memname">using <a class="el" href="namespaceluwra.html#afd2d98882f58f8b2afdb49c3ada78659">luwra::Integer</a> = typedef lua_Integer</td>
  225. </tr>
  226. </table>
  227. </div><div class="memdoc">
  228. </div>
  229. </div>
  230. <a class="anchor" id="ae4dc6c1079fe75220ee055a00a49a3c1"></a>
  231. <div class="memitem">
  232. <div class="memproto">
  233. <table class="memname">
  234. <tr>
  235. <td class="memname">using <a class="el" href="namespaceluwra.html#ae4dc6c1079fe75220ee055a00a49a3c1">luwra::Number</a> = typedef lua_Number</td>
  236. </tr>
  237. </table>
  238. </div><div class="memdoc">
  239. </div>
  240. </div>
  241. <a class="anchor" id="a2c037b44385367826eb4e931b5b8197d"></a>
  242. <div class="memitem">
  243. <div class="memproto">
  244. <table class="memname">
  245. <tr>
  246. <td class="memname">using <a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">luwra::State</a> = typedef lua_State</td>
  247. </tr>
  248. </table>
  249. </div><div class="memdoc">
  250. </div>
  251. </div>
  252. <h2 class="groupheader">Function Documentation</h2>
  253. <a class="anchor" id="a839077ddd9c3d0565a40c574bc8e9555"></a>
  254. <div class="memitem">
  255. <div class="memproto">
  256. <div class="memtemplate">
  257. template&lt;typename R , typename... A&gt; </div>
  258. <table class="mlabels">
  259. <tr>
  260. <td class="mlabels-left">
  261. <table class="memname">
  262. <tr>
  263. <td class="memname">static R luwra::apply </td>
  264. <td>(</td>
  265. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  266. <td class="paramname"><em>state</em>, </td>
  267. </tr>
  268. <tr>
  269. <td class="paramkey"></td>
  270. <td></td>
  271. <td class="paramtype">int&#160;</td>
  272. <td class="paramname"><em>pos</em>, </td>
  273. </tr>
  274. <tr>
  275. <td class="paramkey"></td>
  276. <td></td>
  277. <td class="paramtype">R(*)(A...)&#160;</td>
  278. <td class="paramname"><em>fun</em>&#160;</td>
  279. </tr>
  280. <tr>
  281. <td></td>
  282. <td>)</td>
  283. <td></td><td></td>
  284. </tr>
  285. </table>
  286. </td>
  287. <td class="mlabels-right">
  288. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  289. </tr>
  290. </table>
  291. </div><div class="memdoc">
  292. <p>Synonym for <a class="el" href="namespaceluwra.html#aa20e363f38b3ae5a168cf40365f5646a">direct</a> with a function pointer which lets you omit all template parameters. The stack layout will be inferred using the signature of the given function pointer. </p>
  293. </div>
  294. </div>
  295. <a class="anchor" id="ae5412e502815db7aa2a10e6c84394457"></a>
  296. <div class="memitem">
  297. <div class="memproto">
  298. <div class="memtemplate">
  299. template&lt;typename R , typename... A&gt; </div>
  300. <table class="mlabels">
  301. <tr>
  302. <td class="mlabels-left">
  303. <table class="memname">
  304. <tr>
  305. <td class="memname">static R luwra::apply </td>
  306. <td>(</td>
  307. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  308. <td class="paramname"><em>state</em>, </td>
  309. </tr>
  310. <tr>
  311. <td class="paramkey"></td>
  312. <td></td>
  313. <td class="paramtype">R(*)(A...)&#160;</td>
  314. <td class="paramname"><em>fun</em>&#160;</td>
  315. </tr>
  316. <tr>
  317. <td></td>
  318. <td>)</td>
  319. <td></td><td></td>
  320. </tr>
  321. </table>
  322. </td>
  323. <td class="mlabels-right">
  324. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  325. </tr>
  326. </table>
  327. </div><div class="memdoc">
  328. <p>Same as <code>apply(state, 1, fun)</code>. </p>
  329. </div>
  330. </div>
  331. <a class="anchor" id="a983092513bfded87189613f8dc27ebbe"></a>
  332. <div class="memitem">
  333. <div class="memproto">
  334. <div class="memtemplate">
  335. template&lt;typename R , typename... A&gt; </div>
  336. <table class="mlabels">
  337. <tr>
  338. <td class="mlabels-left">
  339. <table class="memname">
  340. <tr>
  341. <td class="memname">static R luwra::apply </td>
  342. <td>(</td>
  343. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  344. <td class="paramname"><em>state</em>, </td>
  345. </tr>
  346. <tr>
  347. <td class="paramkey"></td>
  348. <td></td>
  349. <td class="paramtype">int&#160;</td>
  350. <td class="paramname"><em>pos</em>, </td>
  351. </tr>
  352. <tr>
  353. <td class="paramkey"></td>
  354. <td></td>
  355. <td class="paramtype">const std::function&lt; R(A...)&gt; &amp;&#160;</td>
  356. <td class="paramname"><em>fun</em>&#160;</td>
  357. </tr>
  358. <tr>
  359. <td></td>
  360. <td>)</td>
  361. <td></td><td></td>
  362. </tr>
  363. </table>
  364. </td>
  365. <td class="mlabels-right">
  366. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  367. </tr>
  368. </table>
  369. </div><div class="memdoc">
  370. <p>Synonym for <a class="el" href="namespaceluwra.html#aa20e363f38b3ae5a168cf40365f5646a">direct</a> with a function object which lets you omit all template parameters. The stack layout will be inferred using the template parameter to your <code>std::function</code> object. </p>
  371. </div>
  372. </div>
  373. <a class="anchor" id="a9a121cbb3ba2b4fb7ee8b2c12472ab51"></a>
  374. <div class="memitem">
  375. <div class="memproto">
  376. <div class="memtemplate">
  377. template&lt;typename R , typename... A&gt; </div>
  378. <table class="mlabels">
  379. <tr>
  380. <td class="mlabels-left">
  381. <table class="memname">
  382. <tr>
  383. <td class="memname">static R luwra::apply </td>
  384. <td>(</td>
  385. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  386. <td class="paramname"><em>state</em>, </td>
  387. </tr>
  388. <tr>
  389. <td class="paramkey"></td>
  390. <td></td>
  391. <td class="paramtype">const std::function&lt; R(A...)&gt; &amp;&#160;</td>
  392. <td class="paramname"><em>fun</em>&#160;</td>
  393. </tr>
  394. <tr>
  395. <td></td>
  396. <td>)</td>
  397. <td></td><td></td>
  398. </tr>
  399. </table>
  400. </td>
  401. <td class="mlabels-right">
  402. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  403. </tr>
  404. </table>
  405. </div><div class="memdoc">
  406. <p>Same as <code>apply(state, 1, fun)</code>. </p>
  407. </div>
  408. </div>
  409. <a class="anchor" id="af079dcca8e67d88e5cfdc7e8872cf5d7"></a>
  410. <div class="memitem">
  411. <div class="memproto">
  412. <div class="memtemplate">
  413. template&lt;typename U , typename... A&gt; </div>
  414. <table class="mlabels">
  415. <tr>
  416. <td class="mlabels-left">
  417. <table class="memname">
  418. <tr>
  419. <td class="memname">static internal::StripUserType&lt;U&gt;&amp; luwra::construct </td>
  420. <td>(</td>
  421. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  422. <td class="paramname"><em>state</em>, </td>
  423. </tr>
  424. <tr>
  425. <td class="paramkey"></td>
  426. <td></td>
  427. <td class="paramtype">A &amp;&amp;...&#160;</td>
  428. <td class="paramname"><em>args</em>&#160;</td>
  429. </tr>
  430. <tr>
  431. <td></td>
  432. <td>)</td>
  433. <td></td><td></td>
  434. </tr>
  435. </table>
  436. </td>
  437. <td class="mlabels-right">
  438. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  439. </tr>
  440. </table>
  441. </div><div class="memdoc">
  442. <p>Construct a user type value on the stack. </p><dl class="section note"><dt>Note</dt><dd>Instances created using this specialization are allocated and constructed as full user data types in Lua. The default garbage-collecting hook will destruct the user type, once it has been marked. </dd></dl>
  443. <dl class="params"><dt>Parameters</dt><dd>
  444. <table class="params">
  445. <tr><td class="paramname">state</td><td>Lua state </td></tr>
  446. <tr><td class="paramname">args</td><td>Constructor arguments </td></tr>
  447. </table>
  448. </dd>
  449. </dl>
  450. <dl class="section return"><dt>Returns</dt><dd>Reference to the constructed value </dd></dl>
  451. </div>
  452. </div>
  453. <a class="anchor" id="aa20e363f38b3ae5a168cf40365f5646a"></a>
  454. <div class="memitem">
  455. <div class="memproto">
  456. <div class="memtemplate">
  457. template&lt;typename S , typename F , typename... X&gt; </div>
  458. <table class="mlabels">
  459. <tr>
  460. <td class="mlabels-left">
  461. <table class="memname">
  462. <tr>
  463. <td class="memname">static internal::Layout&lt;S&gt;::ReturnType luwra::direct </td>
  464. <td>(</td>
  465. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  466. <td class="paramname"><em>state</em>, </td>
  467. </tr>
  468. <tr>
  469. <td class="paramkey"></td>
  470. <td></td>
  471. <td class="paramtype">int&#160;</td>
  472. <td class="paramname"><em>pos</em>, </td>
  473. </tr>
  474. <tr>
  475. <td class="paramkey"></td>
  476. <td></td>
  477. <td class="paramtype">F &amp;&amp;&#160;</td>
  478. <td class="paramname"><em>hook</em>, </td>
  479. </tr>
  480. <tr>
  481. <td class="paramkey"></td>
  482. <td></td>
  483. <td class="paramtype">X &amp;&amp;...&#160;</td>
  484. <td class="paramname"><em>args</em>&#160;</td>
  485. </tr>
  486. <tr>
  487. <td></td>
  488. <td>)</td>
  489. <td></td><td></td>
  490. </tr>
  491. </table>
  492. </td>
  493. <td class="mlabels-right">
  494. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  495. </tr>
  496. </table>
  497. </div><div class="memdoc">
  498. <p>Retrieve values from the stack and invoke a <code>Callable</code> with them.</p>
  499. <dl class="tparams"><dt>Template Parameters</dt><dd>
  500. <table class="tparams">
  501. <tr><td class="paramname">S</td><td>Signature in the form of <code>R(A...)</code> where <code>A</code> is a sequence of types, which shall be retrieved from the stack, and <code>R</code> the return type of <code>hook</code> </td></tr>
  502. <tr><td class="paramname">F</td><td>An instance of <code>Callable</code> which accepts parameters <code>X..., A...</code> and returns <code>R</code> (this parameter should be inferable and can be omitted) </td></tr>
  503. <tr><td class="paramname">X</td><td>Extra argument types</td></tr>
  504. </table>
  505. </dd>
  506. </dl>
  507. <dl class="params"><dt>Parameters</dt><dd>
  508. <table class="params">
  509. <tr><td class="paramname">state</td><td>Lua state instance </td></tr>
  510. <tr><td class="paramname">pos</td><td>Index of the first value </td></tr>
  511. <tr><td class="paramname">hook</td><td>Callable value </td></tr>
  512. <tr><td class="paramname">args</td><td>Extra arguments which shall be be passed to <code>hook</code> before the stack values</td></tr>
  513. </table>
  514. </dd>
  515. </dl>
  516. <dl class="section return"><dt>Returns</dt><dd>Result of calling <code>hook</code> </dd></dl>
  517. </div>
  518. </div>
  519. <a class="anchor" id="a037ab066fd6d547c57a912ffe7e5edd9"></a>
  520. <div class="memitem">
  521. <div class="memproto">
  522. <div class="memtemplate">
  523. template&lt;typename S , typename F , typename... A&gt; </div>
  524. <table class="mlabels">
  525. <tr>
  526. <td class="mlabels-left">
  527. <table class="memname">
  528. <tr>
  529. <td class="memname">static internal::Layout&lt;S&gt;::ReturnType luwra::direct </td>
  530. <td>(</td>
  531. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  532. <td class="paramname"><em>state</em>, </td>
  533. </tr>
  534. <tr>
  535. <td class="paramkey"></td>
  536. <td></td>
  537. <td class="paramtype">F &amp;&amp;&#160;</td>
  538. <td class="paramname"><em>hook</em>, </td>
  539. </tr>
  540. <tr>
  541. <td class="paramkey"></td>
  542. <td></td>
  543. <td class="paramtype">A &amp;&amp;...&#160;</td>
  544. <td class="paramname"><em>args</em>&#160;</td>
  545. </tr>
  546. <tr>
  547. <td></td>
  548. <td>)</td>
  549. <td></td><td></td>
  550. </tr>
  551. </table>
  552. </td>
  553. <td class="mlabels-right">
  554. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  555. </tr>
  556. </table>
  557. </div><div class="memdoc">
  558. <p>Same as <code>direct(state, 1, hook)</code>. </p>
  559. </div>
  560. </div>
  561. <a class="anchor" id="a7814014b3adfbb6899255f120e70af26"></a>
  562. <div class="memitem">
  563. <div class="memproto">
  564. <table class="mlabels">
  565. <tr>
  566. <td class="mlabels-left">
  567. <table class="memname">
  568. <tr>
  569. <td class="memname">static bool luwra::equal </td>
  570. <td>(</td>
  571. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  572. <td class="paramname"><em>state</em>, </td>
  573. </tr>
  574. <tr>
  575. <td class="paramkey"></td>
  576. <td></td>
  577. <td class="paramtype">int&#160;</td>
  578. <td class="paramname"><em>index1</em>, </td>
  579. </tr>
  580. <tr>
  581. <td class="paramkey"></td>
  582. <td></td>
  583. <td class="paramtype">int&#160;</td>
  584. <td class="paramname"><em>index2</em>&#160;</td>
  585. </tr>
  586. <tr>
  587. <td></td>
  588. <td>)</td>
  589. <td></td><td></td>
  590. </tr>
  591. </table>
  592. </td>
  593. <td class="mlabels-right">
  594. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  595. </tr>
  596. </table>
  597. </div><div class="memdoc">
  598. <p>Check if two values are equal. </p><dl class="params"><dt>Parameters</dt><dd>
  599. <table class="params">
  600. <tr><td class="paramname">state</td><td>Lua state </td></tr>
  601. <tr><td class="paramname">index1</td><td>Index of left-hand side value </td></tr>
  602. <tr><td class="paramname">index2</td><td>Index of right-hand side value </td></tr>
  603. </table>
  604. </dd>
  605. </dl>
  606. </div>
  607. </div>
  608. <a class="anchor" id="a06cabc81163602ec1fd8f580944f5b86"></a>
  609. <div class="memitem">
  610. <div class="memproto">
  611. <div class="memtemplate">
  612. template&lt;typename V , typename K &gt; </div>
  613. <table class="mlabels">
  614. <tr>
  615. <td class="mlabels-left">
  616. <table class="memname">
  617. <tr>
  618. <td class="memname">static V luwra::getField </td>
  619. <td>(</td>
  620. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  621. <td class="paramname"><em>state</em>, </td>
  622. </tr>
  623. <tr>
  624. <td class="paramkey"></td>
  625. <td></td>
  626. <td class="paramtype">int&#160;</td>
  627. <td class="paramname"><em>index</em>, </td>
  628. </tr>
  629. <tr>
  630. <td class="paramkey"></td>
  631. <td></td>
  632. <td class="paramtype">K&#160;</td>
  633. <td class="paramname"><em>key</em>&#160;</td>
  634. </tr>
  635. <tr>
  636. <td></td>
  637. <td>)</td>
  638. <td></td><td></td>
  639. </tr>
  640. </table>
  641. </td>
  642. <td class="mlabels-right">
  643. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  644. </tr>
  645. </table>
  646. </div><div class="memdoc">
  647. <p>Retrieve a field from a table. </p>
  648. </div>
  649. </div>
  650. <a class="anchor" id="af0a7dbbbdb339227c6ecaaa46422e05b"></a>
  651. <div class="memitem">
  652. <div class="memproto">
  653. <div class="memtemplate">
  654. template&lt;typename V &gt; </div>
  655. <table class="mlabels">
  656. <tr>
  657. <td class="mlabels-left">
  658. <table class="memname">
  659. <tr>
  660. <td class="memname">static V luwra::getGlobal </td>
  661. <td>(</td>
  662. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  663. <td class="paramname"><em>state</em>, </td>
  664. </tr>
  665. <tr>
  666. <td class="paramkey"></td>
  667. <td></td>
  668. <td class="paramtype">const std::string &amp;&#160;</td>
  669. <td class="paramname"><em>name</em>&#160;</td>
  670. </tr>
  671. <tr>
  672. <td></td>
  673. <td>)</td>
  674. <td></td><td></td>
  675. </tr>
  676. </table>
  677. </td>
  678. <td class="mlabels-right">
  679. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  680. </tr>
  681. </table>
  682. </div><div class="memdoc">
  683. <p>Retrieve a global value. </p><dl class="params"><dt>Parameters</dt><dd>
  684. <table class="params">
  685. <tr><td class="paramname">state</td><td>Lua state </td></tr>
  686. <tr><td class="paramname">name</td><td>Global name </td></tr>
  687. </table>
  688. </dd>
  689. </dl>
  690. <dl class="section return"><dt>Returns</dt><dd><a class="el" href="structluwra_1_1Value.html">Value</a> associated with the given name </dd></dl>
  691. </div>
  692. </div>
  693. <a class="anchor" id="a9f24fc70cb48531cf1e3da6a3a741971"></a>
  694. <div class="memitem">
  695. <div class="memproto">
  696. <div class="memtemplate">
  697. template&lt;typename S , typename F , typename... A&gt; </div>
  698. <table class="mlabels">
  699. <tr>
  700. <td class="mlabels-left">
  701. <table class="memname">
  702. <tr>
  703. <td class="memname">static size_t luwra::map </td>
  704. <td>(</td>
  705. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  706. <td class="paramname"><em>state</em>, </td>
  707. </tr>
  708. <tr>
  709. <td class="paramkey"></td>
  710. <td></td>
  711. <td class="paramtype">int&#160;</td>
  712. <td class="paramname"><em>pos</em>, </td>
  713. </tr>
  714. <tr>
  715. <td class="paramkey"></td>
  716. <td></td>
  717. <td class="paramtype">F &amp;&amp;&#160;</td>
  718. <td class="paramname"><em>hook</em>, </td>
  719. </tr>
  720. <tr>
  721. <td class="paramkey"></td>
  722. <td></td>
  723. <td class="paramtype">A &amp;&amp;...&#160;</td>
  724. <td class="paramname"><em>args</em>&#160;</td>
  725. </tr>
  726. <tr>
  727. <td></td>
  728. <td>)</td>
  729. <td></td><td></td>
  730. </tr>
  731. </table>
  732. </td>
  733. <td class="mlabels-right">
  734. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  735. </tr>
  736. </table>
  737. </div><div class="memdoc">
  738. <p>Similiar to <a class="el" href="namespaceluwra.html#aa20e363f38b3ae5a168cf40365f5646a">direct</a> but pushes the result of the given <code>Callable</code> onto the stack. </p><dl class="section return"><dt>Returns</dt><dd>Number of values pushed </dd></dl>
  739. </div>
  740. </div>
  741. <a class="anchor" id="a6dc1624dc2f382d10651768a89788204"></a>
  742. <div class="memitem">
  743. <div class="memproto">
  744. <div class="memtemplate">
  745. template&lt;typename S , typename F , typename... A&gt; </div>
  746. <table class="mlabels">
  747. <tr>
  748. <td class="mlabels-left">
  749. <table class="memname">
  750. <tr>
  751. <td class="memname">static size_t luwra::map </td>
  752. <td>(</td>
  753. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  754. <td class="paramname"><em>state</em>, </td>
  755. </tr>
  756. <tr>
  757. <td class="paramkey"></td>
  758. <td></td>
  759. <td class="paramtype">F &amp;&amp;&#160;</td>
  760. <td class="paramname"><em>hook</em>, </td>
  761. </tr>
  762. <tr>
  763. <td class="paramkey"></td>
  764. <td></td>
  765. <td class="paramtype">A &amp;&amp;...&#160;</td>
  766. <td class="paramname"><em>args</em>&#160;</td>
  767. </tr>
  768. <tr>
  769. <td></td>
  770. <td>)</td>
  771. <td></td><td></td>
  772. </tr>
  773. </table>
  774. </td>
  775. <td class="mlabels-right">
  776. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  777. </tr>
  778. </table>
  779. </div><div class="memdoc">
  780. <p>Same as <code>map(state, 1, hook)</code>. </p>
  781. </div>
  782. </div>
  783. <a class="anchor" id="ae8e7eab11fc2cf3f258ffd81571066fa"></a>
  784. <div class="memitem">
  785. <div class="memproto">
  786. <div class="memtemplate">
  787. template&lt;typename T &gt; </div>
  788. <table class="mlabels">
  789. <tr>
  790. <td class="mlabels-left">
  791. <table class="memname">
  792. <tr>
  793. <td class="memname">static size_t luwra::push </td>
  794. <td>(</td>
  795. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  796. <td class="paramname"><em>state</em>, </td>
  797. </tr>
  798. <tr>
  799. <td class="paramkey"></td>
  800. <td></td>
  801. <td class="paramtype">T&#160;</td>
  802. <td class="paramname"><em>value</em>&#160;</td>
  803. </tr>
  804. <tr>
  805. <td></td>
  806. <td>)</td>
  807. <td></td><td></td>
  808. </tr>
  809. </table>
  810. </td>
  811. <td class="mlabels-right">
  812. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  813. </tr>
  814. </table>
  815. </div><div class="memdoc">
  816. <p>Convenient wrapped for <a class="el" href="structluwra_1_1Value.html#aa376d68285606c206562b822e8187384">Value&lt;T&gt;::push</a>. </p>
  817. </div>
  818. </div>
  819. <a class="anchor" id="a083af86d9ec488ddd0dee8c4cf0acdff"></a>
  820. <div class="memitem">
  821. <div class="memproto">
  822. <div class="memtemplate">
  823. template&lt;typename T1 , typename T2 , typename... TR&gt; </div>
  824. <table class="memname">
  825. <tr>
  826. <td class="memname">size_t luwra::push </td>
  827. <td>(</td>
  828. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  829. <td class="paramname"><em>state</em>, </td>
  830. </tr>
  831. <tr>
  832. <td class="paramkey"></td>
  833. <td></td>
  834. <td class="paramtype">T1&#160;</td>
  835. <td class="paramname"><em>value</em>, </td>
  836. </tr>
  837. <tr>
  838. <td class="paramkey"></td>
  839. <td></td>
  840. <td class="paramtype">T2 &amp;&amp;&#160;</td>
  841. <td class="paramname"><em>head</em>, </td>
  842. </tr>
  843. <tr>
  844. <td class="paramkey"></td>
  845. <td></td>
  846. <td class="paramtype">TR &amp;&amp;...&#160;</td>
  847. <td class="paramname"><em>rest</em>&#160;</td>
  848. </tr>
  849. <tr>
  850. <td></td>
  851. <td>)</td>
  852. <td></td><td></td>
  853. </tr>
  854. </table>
  855. </div><div class="memdoc">
  856. <p>Allows you to push multiple values at once. </p>
  857. </div>
  858. </div>
  859. <a class="anchor" id="a4fe4e574680cf54a0f8d958740eb90ab"></a>
  860. <div class="memitem">
  861. <div class="memproto">
  862. <div class="memtemplate">
  863. template&lt;typename T &gt; </div>
  864. <table class="mlabels">
  865. <tr>
  866. <td class="mlabels-left">
  867. <table class="memname">
  868. <tr>
  869. <td class="memname">static T luwra::read </td>
  870. <td>(</td>
  871. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  872. <td class="paramname"><em>state</em>, </td>
  873. </tr>
  874. <tr>
  875. <td class="paramkey"></td>
  876. <td></td>
  877. <td class="paramtype">int&#160;</td>
  878. <td class="paramname"><em>index</em>&#160;</td>
  879. </tr>
  880. <tr>
  881. <td></td>
  882. <td>)</td>
  883. <td></td><td></td>
  884. </tr>
  885. </table>
  886. </td>
  887. <td class="mlabels-right">
  888. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  889. </tr>
  890. </table>
  891. </div><div class="memdoc">
  892. <p>Convenient wrapper for <a class="el" href="structluwra_1_1Value.html#a41e193fdb55028189fe8ca5e503efcfa">Value&lt;T&gt;::read</a>. </p>
  893. </div>
  894. </div>
  895. <a class="anchor" id="a1d7d357f904e0bd68b66d9588fbe341a"></a>
  896. <div class="memitem">
  897. <div class="memproto">
  898. <div class="memtemplate">
  899. template&lt;typename U &gt; </div>
  900. <table class="mlabels">
  901. <tr>
  902. <td class="mlabels-left">
  903. <table class="memname">
  904. <tr>
  905. <td class="memname">static void luwra::registerUserType </td>
  906. <td>(</td>
  907. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  908. <td class="paramname"><em>state</em>, </td>
  909. </tr>
  910. <tr>
  911. <td class="paramkey"></td>
  912. <td></td>
  913. <td class="paramtype">const <a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a> &amp;&#160;</td>
  914. <td class="paramname"><em>methods</em> = <code><a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a>()</code>, </td>
  915. </tr>
  916. <tr>
  917. <td class="paramkey"></td>
  918. <td></td>
  919. <td class="paramtype">const <a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a> &amp;&#160;</td>
  920. <td class="paramname"><em>meta_methods</em> = <code><a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a>()</code>&#160;</td>
  921. </tr>
  922. <tr>
  923. <td></td>
  924. <td>)</td>
  925. <td></td><td></td>
  926. </tr>
  927. </table>
  928. </td>
  929. <td class="mlabels-right">
  930. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  931. </tr>
  932. </table>
  933. </div><div class="memdoc">
  934. <p>Register the metatable for user type <code>T</code>. This function allows you to register methods which are shared across all instances of this type.</p>
  935. <p>By default a garbage-collector hook and string representation function are added as meta methods. Both can be overwritten.</p>
  936. <dl class="tparams"><dt>Template Parameters</dt><dd>
  937. <table class="tparams">
  938. <tr><td class="paramname">U</td><td>User type struct or class</td></tr>
  939. </table>
  940. </dd>
  941. </dl>
  942. <dl class="params"><dt>Parameters</dt><dd>
  943. <table class="params">
  944. <tr><td class="paramname">state</td><td>Lua state </td></tr>
  945. <tr><td class="paramname">methods</td><td>Map of methods </td></tr>
  946. <tr><td class="paramname">meta_methods</td><td>Map of meta methods </td></tr>
  947. </table>
  948. </dd>
  949. </dl>
  950. </div>
  951. </div>
  952. <a class="anchor" id="a683f6075862f8fc5cad0d76445f2f607"></a>
  953. <div class="memitem">
  954. <div class="memproto">
  955. <div class="memtemplate">
  956. template&lt;typename T &gt; </div>
  957. <table class="mlabels">
  958. <tr>
  959. <td class="mlabels-left">
  960. <table class="memname">
  961. <tr>
  962. <td class="memname">static void luwra::registerUserType </td>
  963. <td>(</td>
  964. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  965. <td class="paramname"><em>state</em>, </td>
  966. </tr>
  967. <tr>
  968. <td class="paramkey"></td>
  969. <td></td>
  970. <td class="paramtype">const std::string &amp;&#160;</td>
  971. <td class="paramname"><em>ctor_name</em>, </td>
  972. </tr>
  973. <tr>
  974. <td class="paramkey"></td>
  975. <td></td>
  976. <td class="paramtype">const <a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a> &amp;&#160;</td>
  977. <td class="paramname"><em>methods</em> = <code><a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a>()</code>, </td>
  978. </tr>
  979. <tr>
  980. <td class="paramkey"></td>
  981. <td></td>
  982. <td class="paramtype">const <a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a> &amp;&#160;</td>
  983. <td class="paramname"><em>meta_methods</em> = <code><a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a>()</code>&#160;</td>
  984. </tr>
  985. <tr>
  986. <td></td>
  987. <td>)</td>
  988. <td></td><td></td>
  989. </tr>
  990. </table>
  991. </td>
  992. <td class="mlabels-right">
  993. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  994. </tr>
  995. </table>
  996. </div><div class="memdoc">
  997. <p>Same as the other <code>registerUserType</code> but registers the construtor as well. The template parameter is a signature <code>U(A...)</code> where <code>U</code> is the user type and <code>A...</code> its constructor parameters. </p>
  998. </div>
  999. </div>
  1000. <a class="anchor" id="a1d630ce9ae9b10af33624f70dde4b148"></a>
  1001. <div class="memitem">
  1002. <div class="memproto">
  1003. <div class="memtemplate">
  1004. template&lt;typename... R&gt; </div>
  1005. <table class="mlabels">
  1006. <tr>
  1007. <td class="mlabels-left">
  1008. <table class="memname">
  1009. <tr>
  1010. <td class="memname">static void luwra::setFields </td>
  1011. <td>(</td>
  1012. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  1013. <td class="paramname"><em>state</em>, </td>
  1014. </tr>
  1015. <tr>
  1016. <td class="paramkey"></td>
  1017. <td></td>
  1018. <td class="paramtype">int&#160;</td>
  1019. <td class="paramname"><em>index</em>, </td>
  1020. </tr>
  1021. <tr>
  1022. <td class="paramkey"></td>
  1023. <td></td>
  1024. <td class="paramtype">R &amp;&amp;...&#160;</td>
  1025. <td class="paramname"><em>args</em>&#160;</td>
  1026. </tr>
  1027. <tr>
  1028. <td></td>
  1029. <td>)</td>
  1030. <td></td><td></td>
  1031. </tr>
  1032. </table>
  1033. </td>
  1034. <td class="mlabels-right">
  1035. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  1036. </tr>
  1037. </table>
  1038. </div><div class="memdoc">
  1039. <p>Set multiple fields at once. Allows you to provide multiple key-value pairs. </p><dl class="params"><dt>Parameters</dt><dd>
  1040. <table class="params">
  1041. <tr><td class="paramname">state</td><td>Lua state </td></tr>
  1042. <tr><td class="paramname">index</td><td>Table index </td></tr>
  1043. <tr><td class="paramname">args</td><td>Key-value pairs </td></tr>
  1044. </table>
  1045. </dd>
  1046. </dl>
  1047. </div>
  1048. </div>
  1049. <a class="anchor" id="a00729c47fba6114115f2e3f32c21f0b8"></a>
  1050. <div class="memitem">
  1051. <div class="memproto">
  1052. <table class="mlabels">
  1053. <tr>
  1054. <td class="mlabels-left">
  1055. <table class="memname">
  1056. <tr>
  1057. <td class="memname">static void luwra::setFields </td>
  1058. <td>(</td>
  1059. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  1060. <td class="paramname"><em>state</em>, </td>
  1061. </tr>
  1062. <tr>
  1063. <td class="paramkey"></td>
  1064. <td></td>
  1065. <td class="paramtype">int&#160;</td>
  1066. <td class="paramname"><em>index</em>, </td>
  1067. </tr>
  1068. <tr>
  1069. <td class="paramkey"></td>
  1070. <td></td>
  1071. <td class="paramtype">const <a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a> &amp;&#160;</td>
  1072. <td class="paramname"><em>fields</em>&#160;</td>
  1073. </tr>
  1074. <tr>
  1075. <td></td>
  1076. <td>)</td>
  1077. <td></td><td></td>
  1078. </tr>
  1079. </table>
  1080. </td>
  1081. <td class="mlabels-right">
  1082. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  1083. </tr>
  1084. </table>
  1085. </div><div class="memdoc">
  1086. <p>Apply key-value pairs to a table. </p><dl class="params"><dt>Parameters</dt><dd>
  1087. <table class="params">
  1088. <tr><td class="paramname">state</td><td>Lua state </td></tr>
  1089. <tr><td class="paramname">index</td><td>Table index </td></tr>
  1090. <tr><td class="paramname">fields</td><td>Table fields </td></tr>
  1091. </table>
  1092. </dd>
  1093. </dl>
  1094. </div>
  1095. </div>
  1096. <a class="anchor" id="afed27900ff117638937ad92e0217258d"></a>
  1097. <div class="memitem">
  1098. <div class="memproto">
  1099. <div class="memtemplate">
  1100. template&lt;typename V &gt; </div>
  1101. <table class="mlabels">
  1102. <tr>
  1103. <td class="mlabels-left">
  1104. <table class="memname">
  1105. <tr>
  1106. <td class="memname">static void luwra::setGlobal </td>
  1107. <td>(</td>
  1108. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  1109. <td class="paramname"><em>state</em>, </td>
  1110. </tr>
  1111. <tr>
  1112. <td class="paramkey"></td>
  1113. <td></td>
  1114. <td class="paramtype">const std::string &amp;&#160;</td>
  1115. <td class="paramname"><em>name</em>, </td>
  1116. </tr>
  1117. <tr>
  1118. <td class="paramkey"></td>
  1119. <td></td>
  1120. <td class="paramtype">V&#160;</td>
  1121. <td class="paramname"><em>value</em>&#160;</td>
  1122. </tr>
  1123. <tr>
  1124. <td></td>
  1125. <td>)</td>
  1126. <td></td><td></td>
  1127. </tr>
  1128. </table>
  1129. </td>
  1130. <td class="mlabels-right">
  1131. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  1132. </tr>
  1133. </table>
  1134. </div><div class="memdoc">
  1135. <p>Register a value as a global. </p><dl class="params"><dt>Parameters</dt><dd>
  1136. <table class="params">
  1137. <tr><td class="paramname">state</td><td>Lua state </td></tr>
  1138. <tr><td class="paramname">name</td><td>Global name </td></tr>
  1139. <tr><td class="paramname">value</td><td>Global value </td></tr>
  1140. </table>
  1141. </dd>
  1142. </dl>
  1143. </div>
  1144. </div>
  1145. <a class="anchor" id="a7a73f160e82f91ae974ea33c72248c35"></a>
  1146. <div class="memitem">
  1147. <div class="memproto">
  1148. <table class="mlabels">
  1149. <tr>
  1150. <td class="mlabels-left">
  1151. <table class="memname">
  1152. <tr>
  1153. <td class="memname">static void luwra::setMetatable </td>
  1154. <td>(</td>
  1155. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  1156. <td class="paramname"><em>state</em>, </td>
  1157. </tr>
  1158. <tr>
  1159. <td class="paramkey"></td>
  1160. <td></td>
  1161. <td class="paramtype">const char *&#160;</td>
  1162. <td class="paramname"><em>name</em>&#160;</td>
  1163. </tr>
  1164. <tr>
  1165. <td></td>
  1166. <td>)</td>
  1167. <td></td><td></td>
  1168. </tr>
  1169. </table>
  1170. </td>
  1171. <td class="mlabels-right">
  1172. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  1173. </tr>
  1174. </table>
  1175. </div><div class="memdoc">
  1176. <p>Set a registered metatable for the value on top of the stack. </p><dl class="params"><dt>Parameters</dt><dd>
  1177. <table class="params">
  1178. <tr><td class="paramname">state</td><td>Lua state </td></tr>
  1179. <tr><td class="paramname">name</td><td>Metatable name </td></tr>
  1180. </table>
  1181. </dd>
  1182. </dl>
  1183. </div>
  1184. </div>
  1185. </div><!-- contents -->
  1186. </body>
  1187. </html>