namespaceluwra.html 66 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246
  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_1NativeFunction.html">NativeFunction</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_1NativeFunction_3_01void_01_4.html">NativeFunction&lt; void &gt;</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_1Pushable.html">Pushable</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_1Reference.html">Reference</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_1StateWrapper.html">StateWrapper</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_1Table.html">Table</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_1Value.html">Value</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_3_01bool_01_4.html">Value&lt; bool &gt;</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_01CFunction_01_4.html">Value&lt; CFunction &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_01char[n]_4.html">Value&lt; char[n]&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_01const_01char_01_5_01_4.html">Value&lt; const char * &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_01const_01char[n]_4.html">Value&lt; const 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_01T_01_4.html">Value&lt; const T &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_01double_01_4.html">Value&lt; double &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_01FieldVector_01_4.html">Value&lt; FieldVector &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_01float_01_4.html">Value&lt; float &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_01long_01double_01_4.html">Value&lt; long double &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_01NativeFunction_3_01R_01_4_01_4.html">Value&lt; NativeFunction&lt; R &gt; &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_01Pushable_01_4.html">Value&lt; Pushable &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_01Reference_01_4.html">Value&lt; Reference &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_01signedchar_01_4.html">Value&lt; signedchar &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_01signedint_01_4.html">Value&lt; signedint &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_01signedlong_01int_01_4.html">Value&lt; signedlong int &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_01long_01int_01_4.html">Value&lt; signedlong long 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_01signedshort_01_4.html">Value&lt; signedshort &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_01std_1_1nullptr__t_01_4.html">Value&lt; std::nullptr_t &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_1string_01_4.html">Value&lt; std::string &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_1tuple_3_01A_8_8_8_01_4_01_4.html">Value&lt; std::tuple&lt; A... &gt; &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_01Table_01_4.html">Value&lt; Table &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:a5889ab9407f644452b38fbcc8fbae63a"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structluwra_1_1Table.html">Table</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceluwra.html#a5889ab9407f644452b38fbcc8fbae63a">getGlobalsTable</a> (<a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *state)</td></tr>
  177. <tr class="separator:a5889ab9407f644452b38fbcc8fbae63a"><td class="memSeparator" colspan="2">&#160;</td></tr>
  178. <tr class="memitem:ae8e7eab11fc2cf3f258ffd81571066fa"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
  179. <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>
  180. <tr class="separator:ae8e7eab11fc2cf3f258ffd81571066fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
  181. <tr class="memitem:a083af86d9ec488ddd0dee8c4cf0acdff"><td class="memTemplParams" colspan="2">template&lt;typename T1 , typename T2 , typename... TR&gt; </td></tr>
  182. <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>
  183. <tr class="separator:a083af86d9ec488ddd0dee8c4cf0acdff"><td class="memSeparator" colspan="2">&#160;</td></tr>
  184. <tr class="memitem:a4fe4e574680cf54a0f8d958740eb90ab"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
  185. <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>
  186. <tr class="separator:a4fe4e574680cf54a0f8d958740eb90ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
  187. <tr class="memitem:af079dcca8e67d88e5cfdc7e8872cf5d7"><td class="memTemplParams" colspan="2">template&lt;typename U , typename... A&gt; </td></tr>
  188. <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>
  189. <tr class="separator:af079dcca8e67d88e5cfdc7e8872cf5d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
  190. <tr class="memitem:a1d7d357f904e0bd68b66d9588fbe341a"><td class="memTemplParams" colspan="2">template&lt;typename U &gt; </td></tr>
  191. <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>
  192. <tr class="separator:a1d7d357f904e0bd68b66d9588fbe341a"><td class="memSeparator" colspan="2">&#160;</td></tr>
  193. <tr class="memitem:a683f6075862f8fc5cad0d76445f2f607"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
  194. <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>
  195. <tr class="separator:a683f6075862f8fc5cad0d76445f2f607"><td class="memSeparator" colspan="2">&#160;</td></tr>
  196. </table>
  197. <h2 class="groupheader">Typedef Documentation</h2>
  198. <a class="anchor" id="a4e313d0af10393323fa280848c3888a1"></a>
  199. <div class="memitem">
  200. <div class="memproto">
  201. <table class="memname">
  202. <tr>
  203. <td class="memname">using <a class="el" href="namespaceluwra.html#a4e313d0af10393323fa280848c3888a1">luwra::CFunction</a> = typedef lua_CFunction</td>
  204. </tr>
  205. </table>
  206. </div><div class="memdoc">
  207. </div>
  208. </div>
  209. <a class="anchor" id="ac090722c6d5d6b88b31895aad64788c2"></a>
  210. <div class="memitem">
  211. <div class="memproto">
  212. <table class="memname">
  213. <tr>
  214. <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>
  215. </tr>
  216. </table>
  217. </div><div class="memdoc">
  218. <p>A collection of key-value pairs. </p>
  219. </div>
  220. </div>
  221. <a class="anchor" id="afd2d98882f58f8b2afdb49c3ada78659"></a>
  222. <div class="memitem">
  223. <div class="memproto">
  224. <table class="memname">
  225. <tr>
  226. <td class="memname">using <a class="el" href="namespaceluwra.html#afd2d98882f58f8b2afdb49c3ada78659">luwra::Integer</a> = typedef lua_Integer</td>
  227. </tr>
  228. </table>
  229. </div><div class="memdoc">
  230. </div>
  231. </div>
  232. <a class="anchor" id="ae4dc6c1079fe75220ee055a00a49a3c1"></a>
  233. <div class="memitem">
  234. <div class="memproto">
  235. <table class="memname">
  236. <tr>
  237. <td class="memname">using <a class="el" href="namespaceluwra.html#ae4dc6c1079fe75220ee055a00a49a3c1">luwra::Number</a> = typedef lua_Number</td>
  238. </tr>
  239. </table>
  240. </div><div class="memdoc">
  241. </div>
  242. </div>
  243. <a class="anchor" id="a2c037b44385367826eb4e931b5b8197d"></a>
  244. <div class="memitem">
  245. <div class="memproto">
  246. <table class="memname">
  247. <tr>
  248. <td class="memname">using <a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">luwra::State</a> = typedef lua_State</td>
  249. </tr>
  250. </table>
  251. </div><div class="memdoc">
  252. </div>
  253. </div>
  254. <h2 class="groupheader">Function Documentation</h2>
  255. <a class="anchor" id="a839077ddd9c3d0565a40c574bc8e9555"></a>
  256. <div class="memitem">
  257. <div class="memproto">
  258. <div class="memtemplate">
  259. template&lt;typename R , typename... A&gt; </div>
  260. <table class="mlabels">
  261. <tr>
  262. <td class="mlabels-left">
  263. <table class="memname">
  264. <tr>
  265. <td class="memname">static R luwra::apply </td>
  266. <td>(</td>
  267. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  268. <td class="paramname"><em>state</em>, </td>
  269. </tr>
  270. <tr>
  271. <td class="paramkey"></td>
  272. <td></td>
  273. <td class="paramtype">int&#160;</td>
  274. <td class="paramname"><em>pos</em>, </td>
  275. </tr>
  276. <tr>
  277. <td class="paramkey"></td>
  278. <td></td>
  279. <td class="paramtype">R(*)(A...)&#160;</td>
  280. <td class="paramname"><em>fun</em>&#160;</td>
  281. </tr>
  282. <tr>
  283. <td></td>
  284. <td>)</td>
  285. <td></td><td></td>
  286. </tr>
  287. </table>
  288. </td>
  289. <td class="mlabels-right">
  290. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  291. </tr>
  292. </table>
  293. </div><div class="memdoc">
  294. <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>
  295. </div>
  296. </div>
  297. <a class="anchor" id="ae5412e502815db7aa2a10e6c84394457"></a>
  298. <div class="memitem">
  299. <div class="memproto">
  300. <div class="memtemplate">
  301. template&lt;typename R , typename... A&gt; </div>
  302. <table class="mlabels">
  303. <tr>
  304. <td class="mlabels-left">
  305. <table class="memname">
  306. <tr>
  307. <td class="memname">static R luwra::apply </td>
  308. <td>(</td>
  309. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  310. <td class="paramname"><em>state</em>, </td>
  311. </tr>
  312. <tr>
  313. <td class="paramkey"></td>
  314. <td></td>
  315. <td class="paramtype">R(*)(A...)&#160;</td>
  316. <td class="paramname"><em>fun</em>&#160;</td>
  317. </tr>
  318. <tr>
  319. <td></td>
  320. <td>)</td>
  321. <td></td><td></td>
  322. </tr>
  323. </table>
  324. </td>
  325. <td class="mlabels-right">
  326. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  327. </tr>
  328. </table>
  329. </div><div class="memdoc">
  330. <p>Same as <code>apply(state, 1, fun)</code>. </p>
  331. </div>
  332. </div>
  333. <a class="anchor" id="a983092513bfded87189613f8dc27ebbe"></a>
  334. <div class="memitem">
  335. <div class="memproto">
  336. <div class="memtemplate">
  337. template&lt;typename R , typename... A&gt; </div>
  338. <table class="mlabels">
  339. <tr>
  340. <td class="mlabels-left">
  341. <table class="memname">
  342. <tr>
  343. <td class="memname">static R luwra::apply </td>
  344. <td>(</td>
  345. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  346. <td class="paramname"><em>state</em>, </td>
  347. </tr>
  348. <tr>
  349. <td class="paramkey"></td>
  350. <td></td>
  351. <td class="paramtype">int&#160;</td>
  352. <td class="paramname"><em>pos</em>, </td>
  353. </tr>
  354. <tr>
  355. <td class="paramkey"></td>
  356. <td></td>
  357. <td class="paramtype">const std::function&lt; R(A...)&gt; &amp;&#160;</td>
  358. <td class="paramname"><em>fun</em>&#160;</td>
  359. </tr>
  360. <tr>
  361. <td></td>
  362. <td>)</td>
  363. <td></td><td></td>
  364. </tr>
  365. </table>
  366. </td>
  367. <td class="mlabels-right">
  368. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  369. </tr>
  370. </table>
  371. </div><div class="memdoc">
  372. <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>
  373. </div>
  374. </div>
  375. <a class="anchor" id="a9a121cbb3ba2b4fb7ee8b2c12472ab51"></a>
  376. <div class="memitem">
  377. <div class="memproto">
  378. <div class="memtemplate">
  379. template&lt;typename R , typename... A&gt; </div>
  380. <table class="mlabels">
  381. <tr>
  382. <td class="mlabels-left">
  383. <table class="memname">
  384. <tr>
  385. <td class="memname">static R luwra::apply </td>
  386. <td>(</td>
  387. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  388. <td class="paramname"><em>state</em>, </td>
  389. </tr>
  390. <tr>
  391. <td class="paramkey"></td>
  392. <td></td>
  393. <td class="paramtype">const std::function&lt; R(A...)&gt; &amp;&#160;</td>
  394. <td class="paramname"><em>fun</em>&#160;</td>
  395. </tr>
  396. <tr>
  397. <td></td>
  398. <td>)</td>
  399. <td></td><td></td>
  400. </tr>
  401. </table>
  402. </td>
  403. <td class="mlabels-right">
  404. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  405. </tr>
  406. </table>
  407. </div><div class="memdoc">
  408. <p>Same as <code>apply(state, 1, fun)</code>. </p>
  409. </div>
  410. </div>
  411. <a class="anchor" id="af079dcca8e67d88e5cfdc7e8872cf5d7"></a>
  412. <div class="memitem">
  413. <div class="memproto">
  414. <div class="memtemplate">
  415. template&lt;typename U , typename... A&gt; </div>
  416. <table class="mlabels">
  417. <tr>
  418. <td class="mlabels-left">
  419. <table class="memname">
  420. <tr>
  421. <td class="memname">static internal::StripUserType&lt;U&gt;&amp; luwra::construct </td>
  422. <td>(</td>
  423. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  424. <td class="paramname"><em>state</em>, </td>
  425. </tr>
  426. <tr>
  427. <td class="paramkey"></td>
  428. <td></td>
  429. <td class="paramtype">A &amp;&amp;...&#160;</td>
  430. <td class="paramname"><em>args</em>&#160;</td>
  431. </tr>
  432. <tr>
  433. <td></td>
  434. <td>)</td>
  435. <td></td><td></td>
  436. </tr>
  437. </table>
  438. </td>
  439. <td class="mlabels-right">
  440. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  441. </tr>
  442. </table>
  443. </div><div class="memdoc">
  444. <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>
  445. <dl class="params"><dt>Parameters</dt><dd>
  446. <table class="params">
  447. <tr><td class="paramname">state</td><td>Lua state </td></tr>
  448. <tr><td class="paramname">args</td><td>Constructor arguments </td></tr>
  449. </table>
  450. </dd>
  451. </dl>
  452. <dl class="section return"><dt>Returns</dt><dd><a class="el" href="structluwra_1_1Reference.html">Reference</a> to the constructed value </dd></dl>
  453. </div>
  454. </div>
  455. <a class="anchor" id="aa20e363f38b3ae5a168cf40365f5646a"></a>
  456. <div class="memitem">
  457. <div class="memproto">
  458. <div class="memtemplate">
  459. template&lt;typename S , typename F , typename... X&gt; </div>
  460. <table class="mlabels">
  461. <tr>
  462. <td class="mlabels-left">
  463. <table class="memname">
  464. <tr>
  465. <td class="memname">static internal::Layout&lt;S&gt;::ReturnType luwra::direct </td>
  466. <td>(</td>
  467. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  468. <td class="paramname"><em>state</em>, </td>
  469. </tr>
  470. <tr>
  471. <td class="paramkey"></td>
  472. <td></td>
  473. <td class="paramtype">int&#160;</td>
  474. <td class="paramname"><em>pos</em>, </td>
  475. </tr>
  476. <tr>
  477. <td class="paramkey"></td>
  478. <td></td>
  479. <td class="paramtype">F &amp;&amp;&#160;</td>
  480. <td class="paramname"><em>hook</em>, </td>
  481. </tr>
  482. <tr>
  483. <td class="paramkey"></td>
  484. <td></td>
  485. <td class="paramtype">X &amp;&amp;...&#160;</td>
  486. <td class="paramname"><em>args</em>&#160;</td>
  487. </tr>
  488. <tr>
  489. <td></td>
  490. <td>)</td>
  491. <td></td><td></td>
  492. </tr>
  493. </table>
  494. </td>
  495. <td class="mlabels-right">
  496. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  497. </tr>
  498. </table>
  499. </div><div class="memdoc">
  500. <p>Retrieve values from the stack and invoke a <code>Callable</code> with them.</p>
  501. <dl class="tparams"><dt>Template Parameters</dt><dd>
  502. <table class="tparams">
  503. <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>
  504. <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>
  505. <tr><td class="paramname">X</td><td>Extra argument types</td></tr>
  506. </table>
  507. </dd>
  508. </dl>
  509. <dl class="params"><dt>Parameters</dt><dd>
  510. <table class="params">
  511. <tr><td class="paramname">state</td><td>Lua state instance </td></tr>
  512. <tr><td class="paramname">pos</td><td>Index of the first value </td></tr>
  513. <tr><td class="paramname">hook</td><td>Callable value </td></tr>
  514. <tr><td class="paramname">args</td><td>Extra arguments which shall be be passed to <code>hook</code> before the stack values</td></tr>
  515. </table>
  516. </dd>
  517. </dl>
  518. <dl class="section return"><dt>Returns</dt><dd>Result of calling <code>hook</code> </dd></dl>
  519. </div>
  520. </div>
  521. <a class="anchor" id="a037ab066fd6d547c57a912ffe7e5edd9"></a>
  522. <div class="memitem">
  523. <div class="memproto">
  524. <div class="memtemplate">
  525. template&lt;typename S , typename F , typename... A&gt; </div>
  526. <table class="mlabels">
  527. <tr>
  528. <td class="mlabels-left">
  529. <table class="memname">
  530. <tr>
  531. <td class="memname">static internal::Layout&lt;S&gt;::ReturnType luwra::direct </td>
  532. <td>(</td>
  533. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  534. <td class="paramname"><em>state</em>, </td>
  535. </tr>
  536. <tr>
  537. <td class="paramkey"></td>
  538. <td></td>
  539. <td class="paramtype">F &amp;&amp;&#160;</td>
  540. <td class="paramname"><em>hook</em>, </td>
  541. </tr>
  542. <tr>
  543. <td class="paramkey"></td>
  544. <td></td>
  545. <td class="paramtype">A &amp;&amp;...&#160;</td>
  546. <td class="paramname"><em>args</em>&#160;</td>
  547. </tr>
  548. <tr>
  549. <td></td>
  550. <td>)</td>
  551. <td></td><td></td>
  552. </tr>
  553. </table>
  554. </td>
  555. <td class="mlabels-right">
  556. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  557. </tr>
  558. </table>
  559. </div><div class="memdoc">
  560. <p>Same as <code>direct(state, 1, hook)</code>. </p>
  561. </div>
  562. </div>
  563. <a class="anchor" id="a7814014b3adfbb6899255f120e70af26"></a>
  564. <div class="memitem">
  565. <div class="memproto">
  566. <table class="mlabels">
  567. <tr>
  568. <td class="mlabels-left">
  569. <table class="memname">
  570. <tr>
  571. <td class="memname">static bool luwra::equal </td>
  572. <td>(</td>
  573. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  574. <td class="paramname"><em>state</em>, </td>
  575. </tr>
  576. <tr>
  577. <td class="paramkey"></td>
  578. <td></td>
  579. <td class="paramtype">int&#160;</td>
  580. <td class="paramname"><em>index1</em>, </td>
  581. </tr>
  582. <tr>
  583. <td class="paramkey"></td>
  584. <td></td>
  585. <td class="paramtype">int&#160;</td>
  586. <td class="paramname"><em>index2</em>&#160;</td>
  587. </tr>
  588. <tr>
  589. <td></td>
  590. <td>)</td>
  591. <td></td><td></td>
  592. </tr>
  593. </table>
  594. </td>
  595. <td class="mlabels-right">
  596. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  597. </tr>
  598. </table>
  599. </div><div class="memdoc">
  600. <p>Check if two values are equal. </p><dl class="params"><dt>Parameters</dt><dd>
  601. <table class="params">
  602. <tr><td class="paramname">state</td><td>Lua state </td></tr>
  603. <tr><td class="paramname">index1</td><td>Index of left-hand side value </td></tr>
  604. <tr><td class="paramname">index2</td><td>Index of right-hand side value </td></tr>
  605. </table>
  606. </dd>
  607. </dl>
  608. </div>
  609. </div>
  610. <a class="anchor" id="a06cabc81163602ec1fd8f580944f5b86"></a>
  611. <div class="memitem">
  612. <div class="memproto">
  613. <div class="memtemplate">
  614. template&lt;typename V , typename K &gt; </div>
  615. <table class="mlabels">
  616. <tr>
  617. <td class="mlabels-left">
  618. <table class="memname">
  619. <tr>
  620. <td class="memname">static V luwra::getField </td>
  621. <td>(</td>
  622. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  623. <td class="paramname"><em>state</em>, </td>
  624. </tr>
  625. <tr>
  626. <td class="paramkey"></td>
  627. <td></td>
  628. <td class="paramtype">int&#160;</td>
  629. <td class="paramname"><em>index</em>, </td>
  630. </tr>
  631. <tr>
  632. <td class="paramkey"></td>
  633. <td></td>
  634. <td class="paramtype">K&#160;</td>
  635. <td class="paramname"><em>key</em>&#160;</td>
  636. </tr>
  637. <tr>
  638. <td></td>
  639. <td>)</td>
  640. <td></td><td></td>
  641. </tr>
  642. </table>
  643. </td>
  644. <td class="mlabels-right">
  645. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  646. </tr>
  647. </table>
  648. </div><div class="memdoc">
  649. <p>Retrieve a field from a table. </p>
  650. </div>
  651. </div>
  652. <a class="anchor" id="af0a7dbbbdb339227c6ecaaa46422e05b"></a>
  653. <div class="memitem">
  654. <div class="memproto">
  655. <div class="memtemplate">
  656. template&lt;typename V &gt; </div>
  657. <table class="mlabels">
  658. <tr>
  659. <td class="mlabels-left">
  660. <table class="memname">
  661. <tr>
  662. <td class="memname">static V luwra::getGlobal </td>
  663. <td>(</td>
  664. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  665. <td class="paramname"><em>state</em>, </td>
  666. </tr>
  667. <tr>
  668. <td class="paramkey"></td>
  669. <td></td>
  670. <td class="paramtype">const std::string &amp;&#160;</td>
  671. <td class="paramname"><em>name</em>&#160;</td>
  672. </tr>
  673. <tr>
  674. <td></td>
  675. <td>)</td>
  676. <td></td><td></td>
  677. </tr>
  678. </table>
  679. </td>
  680. <td class="mlabels-right">
  681. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  682. </tr>
  683. </table>
  684. </div><div class="memdoc">
  685. <p>Retrieve a global value. </p><dl class="params"><dt>Parameters</dt><dd>
  686. <table class="params">
  687. <tr><td class="paramname">state</td><td>Lua state </td></tr>
  688. <tr><td class="paramname">name</td><td>Global name </td></tr>
  689. </table>
  690. </dd>
  691. </dl>
  692. <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>
  693. </div>
  694. </div>
  695. <a class="anchor" id="a5889ab9407f644452b38fbcc8fbae63a"></a>
  696. <div class="memitem">
  697. <div class="memproto">
  698. <table class="mlabels">
  699. <tr>
  700. <td class="mlabels-left">
  701. <table class="memname">
  702. <tr>
  703. <td class="memname">static <a class="el" href="structluwra_1_1Table.html">Table</a> luwra::getGlobalsTable </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><td>)</td>
  707. <td></td>
  708. </tr>
  709. </table>
  710. </td>
  711. <td class="mlabels-right">
  712. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  713. </tr>
  714. </table>
  715. </div><div class="memdoc">
  716. <p>Retrieve the table containing all global values. </p><dl class="params"><dt>Parameters</dt><dd>
  717. <table class="params">
  718. <tr><td class="paramname">state</td><td>Lua state </td></tr>
  719. </table>
  720. </dd>
  721. </dl>
  722. <dl class="section return"><dt>Returns</dt><dd><a class="el" href="structluwra_1_1Reference.html">Reference</a> to the globals table. </dd></dl>
  723. </div>
  724. </div>
  725. <a class="anchor" id="a9f24fc70cb48531cf1e3da6a3a741971"></a>
  726. <div class="memitem">
  727. <div class="memproto">
  728. <div class="memtemplate">
  729. template&lt;typename S , typename F , typename... A&gt; </div>
  730. <table class="mlabels">
  731. <tr>
  732. <td class="mlabels-left">
  733. <table class="memname">
  734. <tr>
  735. <td class="memname">static size_t luwra::map </td>
  736. <td>(</td>
  737. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  738. <td class="paramname"><em>state</em>, </td>
  739. </tr>
  740. <tr>
  741. <td class="paramkey"></td>
  742. <td></td>
  743. <td class="paramtype">int&#160;</td>
  744. <td class="paramname"><em>pos</em>, </td>
  745. </tr>
  746. <tr>
  747. <td class="paramkey"></td>
  748. <td></td>
  749. <td class="paramtype">F &amp;&amp;&#160;</td>
  750. <td class="paramname"><em>hook</em>, </td>
  751. </tr>
  752. <tr>
  753. <td class="paramkey"></td>
  754. <td></td>
  755. <td class="paramtype">A &amp;&amp;...&#160;</td>
  756. <td class="paramname"><em>args</em>&#160;</td>
  757. </tr>
  758. <tr>
  759. <td></td>
  760. <td>)</td>
  761. <td></td><td></td>
  762. </tr>
  763. </table>
  764. </td>
  765. <td class="mlabels-right">
  766. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  767. </tr>
  768. </table>
  769. </div><div class="memdoc">
  770. <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>
  771. </div>
  772. </div>
  773. <a class="anchor" id="a6dc1624dc2f382d10651768a89788204"></a>
  774. <div class="memitem">
  775. <div class="memproto">
  776. <div class="memtemplate">
  777. template&lt;typename S , typename F , typename... A&gt; </div>
  778. <table class="mlabels">
  779. <tr>
  780. <td class="mlabels-left">
  781. <table class="memname">
  782. <tr>
  783. <td class="memname">static size_t luwra::map </td>
  784. <td>(</td>
  785. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  786. <td class="paramname"><em>state</em>, </td>
  787. </tr>
  788. <tr>
  789. <td class="paramkey"></td>
  790. <td></td>
  791. <td class="paramtype">F &amp;&amp;&#160;</td>
  792. <td class="paramname"><em>hook</em>, </td>
  793. </tr>
  794. <tr>
  795. <td class="paramkey"></td>
  796. <td></td>
  797. <td class="paramtype">A &amp;&amp;...&#160;</td>
  798. <td class="paramname"><em>args</em>&#160;</td>
  799. </tr>
  800. <tr>
  801. <td></td>
  802. <td>)</td>
  803. <td></td><td></td>
  804. </tr>
  805. </table>
  806. </td>
  807. <td class="mlabels-right">
  808. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  809. </tr>
  810. </table>
  811. </div><div class="memdoc">
  812. <p>Same as <code>map(state, 1, hook)</code>. </p>
  813. </div>
  814. </div>
  815. <a class="anchor" id="ae8e7eab11fc2cf3f258ffd81571066fa"></a>
  816. <div class="memitem">
  817. <div class="memproto">
  818. <div class="memtemplate">
  819. template&lt;typename T &gt; </div>
  820. <table class="mlabels">
  821. <tr>
  822. <td class="mlabels-left">
  823. <table class="memname">
  824. <tr>
  825. <td class="memname">static size_t luwra::push </td>
  826. <td>(</td>
  827. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  828. <td class="paramname"><em>state</em>, </td>
  829. </tr>
  830. <tr>
  831. <td class="paramkey"></td>
  832. <td></td>
  833. <td class="paramtype">T&#160;</td>
  834. <td class="paramname"><em>value</em>&#160;</td>
  835. </tr>
  836. <tr>
  837. <td></td>
  838. <td>)</td>
  839. <td></td><td></td>
  840. </tr>
  841. </table>
  842. </td>
  843. <td class="mlabels-right">
  844. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  845. </tr>
  846. </table>
  847. </div><div class="memdoc">
  848. <p>Convenient wrapped for <a class="el" href="structluwra_1_1Value.html#aa376d68285606c206562b822e8187384">Value&lt;T&gt;::push</a>. </p>
  849. </div>
  850. </div>
  851. <a class="anchor" id="a083af86d9ec488ddd0dee8c4cf0acdff"></a>
  852. <div class="memitem">
  853. <div class="memproto">
  854. <div class="memtemplate">
  855. template&lt;typename T1 , typename T2 , typename... TR&gt; </div>
  856. <table class="memname">
  857. <tr>
  858. <td class="memname">size_t luwra::push </td>
  859. <td>(</td>
  860. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  861. <td class="paramname"><em>state</em>, </td>
  862. </tr>
  863. <tr>
  864. <td class="paramkey"></td>
  865. <td></td>
  866. <td class="paramtype">T1&#160;</td>
  867. <td class="paramname"><em>value</em>, </td>
  868. </tr>
  869. <tr>
  870. <td class="paramkey"></td>
  871. <td></td>
  872. <td class="paramtype">T2 &amp;&amp;&#160;</td>
  873. <td class="paramname"><em>head</em>, </td>
  874. </tr>
  875. <tr>
  876. <td class="paramkey"></td>
  877. <td></td>
  878. <td class="paramtype">TR &amp;&amp;...&#160;</td>
  879. <td class="paramname"><em>rest</em>&#160;</td>
  880. </tr>
  881. <tr>
  882. <td></td>
  883. <td>)</td>
  884. <td></td><td></td>
  885. </tr>
  886. </table>
  887. </div><div class="memdoc">
  888. <p>Allows you to push multiple values at once. </p>
  889. </div>
  890. </div>
  891. <a class="anchor" id="a4fe4e574680cf54a0f8d958740eb90ab"></a>
  892. <div class="memitem">
  893. <div class="memproto">
  894. <div class="memtemplate">
  895. template&lt;typename T &gt; </div>
  896. <table class="mlabels">
  897. <tr>
  898. <td class="mlabels-left">
  899. <table class="memname">
  900. <tr>
  901. <td class="memname">static T luwra::read </td>
  902. <td>(</td>
  903. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  904. <td class="paramname"><em>state</em>, </td>
  905. </tr>
  906. <tr>
  907. <td class="paramkey"></td>
  908. <td></td>
  909. <td class="paramtype">int&#160;</td>
  910. <td class="paramname"><em>index</em>&#160;</td>
  911. </tr>
  912. <tr>
  913. <td></td>
  914. <td>)</td>
  915. <td></td><td></td>
  916. </tr>
  917. </table>
  918. </td>
  919. <td class="mlabels-right">
  920. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  921. </tr>
  922. </table>
  923. </div><div class="memdoc">
  924. <p>Convenient wrapper for <a class="el" href="structluwra_1_1Value.html#a41e193fdb55028189fe8ca5e503efcfa">Value&lt;T&gt;::read</a>. </p>
  925. </div>
  926. </div>
  927. <a class="anchor" id="a1d7d357f904e0bd68b66d9588fbe341a"></a>
  928. <div class="memitem">
  929. <div class="memproto">
  930. <div class="memtemplate">
  931. template&lt;typename U &gt; </div>
  932. <table class="mlabels">
  933. <tr>
  934. <td class="mlabels-left">
  935. <table class="memname">
  936. <tr>
  937. <td class="memname">static void luwra::registerUserType </td>
  938. <td>(</td>
  939. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  940. <td class="paramname"><em>state</em>, </td>
  941. </tr>
  942. <tr>
  943. <td class="paramkey"></td>
  944. <td></td>
  945. <td class="paramtype">const <a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a> &amp;&#160;</td>
  946. <td class="paramname"><em>methods</em> = <code><a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a>()</code>, </td>
  947. </tr>
  948. <tr>
  949. <td class="paramkey"></td>
  950. <td></td>
  951. <td class="paramtype">const <a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a> &amp;&#160;</td>
  952. <td class="paramname"><em>meta_methods</em> = <code><a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a>()</code>&#160;</td>
  953. </tr>
  954. <tr>
  955. <td></td>
  956. <td>)</td>
  957. <td></td><td></td>
  958. </tr>
  959. </table>
  960. </td>
  961. <td class="mlabels-right">
  962. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  963. </tr>
  964. </table>
  965. </div><div class="memdoc">
  966. <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>
  967. <p>By default a garbage-collector hook and string representation function are added as meta methods. Both can be overwritten.</p>
  968. <dl class="tparams"><dt>Template Parameters</dt><dd>
  969. <table class="tparams">
  970. <tr><td class="paramname">U</td><td>User type struct or class</td></tr>
  971. </table>
  972. </dd>
  973. </dl>
  974. <dl class="params"><dt>Parameters</dt><dd>
  975. <table class="params">
  976. <tr><td class="paramname">state</td><td>Lua state </td></tr>
  977. <tr><td class="paramname">methods</td><td>Map of methods </td></tr>
  978. <tr><td class="paramname">meta_methods</td><td>Map of meta methods </td></tr>
  979. </table>
  980. </dd>
  981. </dl>
  982. </div>
  983. </div>
  984. <a class="anchor" id="a683f6075862f8fc5cad0d76445f2f607"></a>
  985. <div class="memitem">
  986. <div class="memproto">
  987. <div class="memtemplate">
  988. template&lt;typename T &gt; </div>
  989. <table class="mlabels">
  990. <tr>
  991. <td class="mlabels-left">
  992. <table class="memname">
  993. <tr>
  994. <td class="memname">static void luwra::registerUserType </td>
  995. <td>(</td>
  996. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  997. <td class="paramname"><em>state</em>, </td>
  998. </tr>
  999. <tr>
  1000. <td class="paramkey"></td>
  1001. <td></td>
  1002. <td class="paramtype">const std::string &amp;&#160;</td>
  1003. <td class="paramname"><em>ctor_name</em>, </td>
  1004. </tr>
  1005. <tr>
  1006. <td class="paramkey"></td>
  1007. <td></td>
  1008. <td class="paramtype">const <a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a> &amp;&#160;</td>
  1009. <td class="paramname"><em>methods</em> = <code><a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a>()</code>, </td>
  1010. </tr>
  1011. <tr>
  1012. <td class="paramkey"></td>
  1013. <td></td>
  1014. <td class="paramtype">const <a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a> &amp;&#160;</td>
  1015. <td class="paramname"><em>meta_methods</em> = <code><a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a>()</code>&#160;</td>
  1016. </tr>
  1017. <tr>
  1018. <td></td>
  1019. <td>)</td>
  1020. <td></td><td></td>
  1021. </tr>
  1022. </table>
  1023. </td>
  1024. <td class="mlabels-right">
  1025. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  1026. </tr>
  1027. </table>
  1028. </div><div class="memdoc">
  1029. <p>Same as the other <code>registerUserType</code> but registers the constructor 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>
  1030. </div>
  1031. </div>
  1032. <a class="anchor" id="a1d630ce9ae9b10af33624f70dde4b148"></a>
  1033. <div class="memitem">
  1034. <div class="memproto">
  1035. <div class="memtemplate">
  1036. template&lt;typename... R&gt; </div>
  1037. <table class="mlabels">
  1038. <tr>
  1039. <td class="mlabels-left">
  1040. <table class="memname">
  1041. <tr>
  1042. <td class="memname">static void luwra::setFields </td>
  1043. <td>(</td>
  1044. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  1045. <td class="paramname"><em>state</em>, </td>
  1046. </tr>
  1047. <tr>
  1048. <td class="paramkey"></td>
  1049. <td></td>
  1050. <td class="paramtype">int&#160;</td>
  1051. <td class="paramname"><em>index</em>, </td>
  1052. </tr>
  1053. <tr>
  1054. <td class="paramkey"></td>
  1055. <td></td>
  1056. <td class="paramtype">R &amp;&amp;...&#160;</td>
  1057. <td class="paramname"><em>args</em>&#160;</td>
  1058. </tr>
  1059. <tr>
  1060. <td></td>
  1061. <td>)</td>
  1062. <td></td><td></td>
  1063. </tr>
  1064. </table>
  1065. </td>
  1066. <td class="mlabels-right">
  1067. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  1068. </tr>
  1069. </table>
  1070. </div><div class="memdoc">
  1071. <p>Set multiple fields at once. Allows you to provide multiple key-value pairs. </p><dl class="params"><dt>Parameters</dt><dd>
  1072. <table class="params">
  1073. <tr><td class="paramname">state</td><td>Lua state </td></tr>
  1074. <tr><td class="paramname">index</td><td><a class="el" href="structluwra_1_1Table.html">Table</a> index </td></tr>
  1075. <tr><td class="paramname">args</td><td>Key-value pairs </td></tr>
  1076. </table>
  1077. </dd>
  1078. </dl>
  1079. </div>
  1080. </div>
  1081. <a class="anchor" id="a00729c47fba6114115f2e3f32c21f0b8"></a>
  1082. <div class="memitem">
  1083. <div class="memproto">
  1084. <table class="mlabels">
  1085. <tr>
  1086. <td class="mlabels-left">
  1087. <table class="memname">
  1088. <tr>
  1089. <td class="memname">static void luwra::setFields </td>
  1090. <td>(</td>
  1091. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  1092. <td class="paramname"><em>state</em>, </td>
  1093. </tr>
  1094. <tr>
  1095. <td class="paramkey"></td>
  1096. <td></td>
  1097. <td class="paramtype">int&#160;</td>
  1098. <td class="paramname"><em>index</em>, </td>
  1099. </tr>
  1100. <tr>
  1101. <td class="paramkey"></td>
  1102. <td></td>
  1103. <td class="paramtype">const <a class="el" href="namespaceluwra.html#ac090722c6d5d6b88b31895aad64788c2">FieldVector</a> &amp;&#160;</td>
  1104. <td class="paramname"><em>fields</em>&#160;</td>
  1105. </tr>
  1106. <tr>
  1107. <td></td>
  1108. <td>)</td>
  1109. <td></td><td></td>
  1110. </tr>
  1111. </table>
  1112. </td>
  1113. <td class="mlabels-right">
  1114. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  1115. </tr>
  1116. </table>
  1117. </div><div class="memdoc">
  1118. <p>Apply key-value pairs to a table. </p><dl class="params"><dt>Parameters</dt><dd>
  1119. <table class="params">
  1120. <tr><td class="paramname">state</td><td>Lua state </td></tr>
  1121. <tr><td class="paramname">index</td><td><a class="el" href="structluwra_1_1Table.html">Table</a> index </td></tr>
  1122. <tr><td class="paramname">fields</td><td><a class="el" href="structluwra_1_1Table.html">Table</a> fields </td></tr>
  1123. </table>
  1124. </dd>
  1125. </dl>
  1126. </div>
  1127. </div>
  1128. <a class="anchor" id="afed27900ff117638937ad92e0217258d"></a>
  1129. <div class="memitem">
  1130. <div class="memproto">
  1131. <div class="memtemplate">
  1132. template&lt;typename V &gt; </div>
  1133. <table class="mlabels">
  1134. <tr>
  1135. <td class="mlabels-left">
  1136. <table class="memname">
  1137. <tr>
  1138. <td class="memname">static void luwra::setGlobal </td>
  1139. <td>(</td>
  1140. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  1141. <td class="paramname"><em>state</em>, </td>
  1142. </tr>
  1143. <tr>
  1144. <td class="paramkey"></td>
  1145. <td></td>
  1146. <td class="paramtype">const std::string &amp;&#160;</td>
  1147. <td class="paramname"><em>name</em>, </td>
  1148. </tr>
  1149. <tr>
  1150. <td class="paramkey"></td>
  1151. <td></td>
  1152. <td class="paramtype">V&#160;</td>
  1153. <td class="paramname"><em>value</em>&#160;</td>
  1154. </tr>
  1155. <tr>
  1156. <td></td>
  1157. <td>)</td>
  1158. <td></td><td></td>
  1159. </tr>
  1160. </table>
  1161. </td>
  1162. <td class="mlabels-right">
  1163. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  1164. </tr>
  1165. </table>
  1166. </div><div class="memdoc">
  1167. <p>Register a value as a global. </p><dl class="params"><dt>Parameters</dt><dd>
  1168. <table class="params">
  1169. <tr><td class="paramname">state</td><td>Lua state </td></tr>
  1170. <tr><td class="paramname">name</td><td>Global name </td></tr>
  1171. <tr><td class="paramname">value</td><td>Global value </td></tr>
  1172. </table>
  1173. </dd>
  1174. </dl>
  1175. </div>
  1176. </div>
  1177. <a class="anchor" id="a7a73f160e82f91ae974ea33c72248c35"></a>
  1178. <div class="memitem">
  1179. <div class="memproto">
  1180. <table class="mlabels">
  1181. <tr>
  1182. <td class="mlabels-left">
  1183. <table class="memname">
  1184. <tr>
  1185. <td class="memname">static void luwra::setMetatable </td>
  1186. <td>(</td>
  1187. <td class="paramtype"><a class="el" href="namespaceluwra.html#a2c037b44385367826eb4e931b5b8197d">State</a> *&#160;</td>
  1188. <td class="paramname"><em>state</em>, </td>
  1189. </tr>
  1190. <tr>
  1191. <td class="paramkey"></td>
  1192. <td></td>
  1193. <td class="paramtype">const char *&#160;</td>
  1194. <td class="paramname"><em>name</em>&#160;</td>
  1195. </tr>
  1196. <tr>
  1197. <td></td>
  1198. <td>)</td>
  1199. <td></td><td></td>
  1200. </tr>
  1201. </table>
  1202. </td>
  1203. <td class="mlabels-right">
  1204. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  1205. </tr>
  1206. </table>
  1207. </div><div class="memdoc">
  1208. <p>Set a registered metatable for the value on top of the stack. </p><dl class="params"><dt>Parameters</dt><dd>
  1209. <table class="params">
  1210. <tr><td class="paramname">state</td><td>Lua state </td></tr>
  1211. <tr><td class="paramname">name</td><td>Metatable name </td></tr>
  1212. </table>
  1213. </dd>
  1214. </dl>
  1215. </div>
  1216. </div>
  1217. </div><!-- contents -->
  1218. </body>
  1219. </html>