xref: /freebsd/contrib/lutok/api-docs/html/a00066.html (revision 132f818ddbf457ee67d502cd89b5a18e0a34713d)
1*132f818dSEnji Cooper<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2*132f818dSEnji Cooper<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
3*132f818dSEnji Cooper<head>
4*132f818dSEnji Cooper<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5*132f818dSEnji Cooper<meta http-equiv="X-UA-Compatible" content="IE=11"/>
6*132f818dSEnji Cooper<meta name="generator" content="Doxygen 1.9.6"/>
7*132f818dSEnji Cooper<meta name="viewport" content="width=device-width, initial-scale=1"/>
8*132f818dSEnji Cooper<title>Lutok: anonymous_namespace{state_test.cpp} Namespace Reference</title>
9*132f818dSEnji Cooper<link href="tabs.css" rel="stylesheet" type="text/css"/>
10*132f818dSEnji Cooper<script type="text/javascript" src="jquery.js"></script>
11*132f818dSEnji Cooper<script type="text/javascript" src="dynsections.js"></script>
12*132f818dSEnji Cooper<link href="search/search.css" rel="stylesheet" type="text/css"/>
13*132f818dSEnji Cooper<script type="text/javascript" src="search/searchdata.js"></script>
14*132f818dSEnji Cooper<script type="text/javascript" src="search/search.js"></script>
15*132f818dSEnji Cooper<link href="doxygen.css" rel="stylesheet" type="text/css" />
16*132f818dSEnji Cooper</head>
17*132f818dSEnji Cooper<body>
18*132f818dSEnji Cooper<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
19*132f818dSEnji Cooper<div id="titlearea">
20*132f818dSEnji Cooper<table cellspacing="0" cellpadding="0">
21*132f818dSEnji Cooper <tbody>
22*132f818dSEnji Cooper <tr id="projectrow">
23*132f818dSEnji Cooper  <td id="projectalign">
24*132f818dSEnji Cooper   <div id="projectname">Lutok<span id="projectnumber">&#160;0.6.2</span>
25*132f818dSEnji Cooper   </div>
26*132f818dSEnji Cooper  </td>
27*132f818dSEnji Cooper </tr>
28*132f818dSEnji Cooper </tbody>
29*132f818dSEnji Cooper</table>
30*132f818dSEnji Cooper</div>
31*132f818dSEnji Cooper<!-- end header part -->
32*132f818dSEnji Cooper<!-- Generated by Doxygen 1.9.6 -->
33*132f818dSEnji Cooper<script type="text/javascript">
34*132f818dSEnji Cooper/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
35*132f818dSEnji Coopervar searchBox = new SearchBox("searchBox", "search/",'.html');
36*132f818dSEnji Cooper/* @license-end */
37*132f818dSEnji Cooper</script>
38*132f818dSEnji Cooper<script type="text/javascript" src="menudata.js"></script>
39*132f818dSEnji Cooper<script type="text/javascript" src="menu.js"></script>
40*132f818dSEnji Cooper<script type="text/javascript">
41*132f818dSEnji Cooper/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
42*132f818dSEnji Cooper$(function() {
43*132f818dSEnji Cooper  initMenu('',true,false,'search.php','Search');
44*132f818dSEnji Cooper  $(document).ready(function() { init_search(); });
45*132f818dSEnji Cooper});
46*132f818dSEnji Cooper/* @license-end */
47*132f818dSEnji Cooper</script>
48*132f818dSEnji Cooper<div id="main-nav"></div>
49*132f818dSEnji Cooper<!-- window showing the filter options -->
50*132f818dSEnji Cooper<div id="MSearchSelectWindow"
51*132f818dSEnji Cooper     onmouseover="return searchBox.OnSearchSelectShow()"
52*132f818dSEnji Cooper     onmouseout="return searchBox.OnSearchSelectHide()"
53*132f818dSEnji Cooper     onkeydown="return searchBox.OnSearchSelectKey(event)">
54*132f818dSEnji Cooper</div>
55*132f818dSEnji Cooper
56*132f818dSEnji Cooper<!-- iframe showing the search results (closed by default) -->
57*132f818dSEnji Cooper<div id="MSearchResultsWindow">
58*132f818dSEnji Cooper<div id="MSearchResults">
59*132f818dSEnji Cooper<div class="SRPage">
60*132f818dSEnji Cooper<div id="SRIndex">
61*132f818dSEnji Cooper<div id="SRResults"></div>
62*132f818dSEnji Cooper<div class="SRStatus" id="Loading">Loading...</div>
63*132f818dSEnji Cooper<div class="SRStatus" id="Searching">Searching...</div>
64*132f818dSEnji Cooper<div class="SRStatus" id="NoMatches">No Matches</div>
65*132f818dSEnji Cooper</div>
66*132f818dSEnji Cooper</div>
67*132f818dSEnji Cooper</div>
68*132f818dSEnji Cooper</div>
69*132f818dSEnji Cooper
70*132f818dSEnji Cooper</div><!-- top -->
71*132f818dSEnji Cooper<div class="header">
72*132f818dSEnji Cooper  <div class="summary">
73*132f818dSEnji Cooper<a href="#func-members">Functions</a>  </div>
74*132f818dSEnji Cooper  <div class="headertitle"><div class="title">anonymous_namespace{state_test.cpp} Namespace Reference</div></div>
75*132f818dSEnji Cooper</div><!--header-->
76*132f818dSEnji Cooper<div class="contents">
77*132f818dSEnji Cooper<table class="memberdecls">
78*132f818dSEnji Cooper<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
79*132f818dSEnji CooperFunctions</h2></td></tr>
80*132f818dSEnji Cooper<tr class="memitem:a627b68d7ac220aba8661237b2ba4759b"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00066.html#a627b68d7ac220aba8661237b2ba4759b">is_available</a> (<a class="el" href="a00919.html">lutok::state</a> &amp;state, const char *symbol)</td></tr>
81*132f818dSEnji Cooper<tr class="memdesc:a627b68d7ac220aba8661237b2ba4759b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if a symbol is available.  <br /></td></tr>
82*132f818dSEnji Cooper<tr class="separator:a627b68d7ac220aba8661237b2ba4759b"><td class="memSeparator" colspan="2">&#160;</td></tr>
83*132f818dSEnji Cooper<tr class="memitem:a31884687c56b3a3f58f517cb9914a1f5"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00066.html#a31884687c56b3a3f58f517cb9914a1f5">check_modules</a> (<a class="el" href="a00919.html">lutok::state</a> &amp;state, const std::string &amp;expected)</td></tr>
84*132f818dSEnji Cooper<tr class="memdesc:a31884687c56b3a3f58f517cb9914a1f5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks that no modules are present or that only one has been loaded.  <br /></td></tr>
85*132f818dSEnji Cooper<tr class="separator:a31884687c56b3a3f58f517cb9914a1f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
86*132f818dSEnji Cooper<tr class="memitem:a9d02f302ff9c6ea720b3be1fb3768aca"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00066.html#a9d02f302ff9c6ea720b3be1fb3768aca">c_get_upvalues</a> (lua_State *raw_state)</td></tr>
87*132f818dSEnji Cooper<tr class="memdesc:a9d02f302ff9c6ea720b3be1fb3768aca"><td class="mdescLeft">&#160;</td><td class="mdescRight">A C closure that returns its two integral upvalues.  <br /></td></tr>
88*132f818dSEnji Cooper<tr class="separator:a9d02f302ff9c6ea720b3be1fb3768aca"><td class="memSeparator" colspan="2">&#160;</td></tr>
89*132f818dSEnji Cooper<tr class="memitem:a7ec33b7379b04bedb9bf6e8bcc018d5f"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00066.html#a7ec33b7379b04bedb9bf6e8bcc018d5f">cxx_multiply_closure</a> (<a class="el" href="a00919.html">lutok::state</a> &amp;state)</td></tr>
90*132f818dSEnji Cooper<tr class="memdesc:a7ec33b7379b04bedb9bf6e8bcc018d5f"><td class="mdescLeft">&#160;</td><td class="mdescRight">A custom C++ multiply function with one of its factors on its closure.  <br /></td></tr>
91*132f818dSEnji Cooper<tr class="separator:a7ec33b7379b04bedb9bf6e8bcc018d5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
92*132f818dSEnji Cooper<tr class="memitem:ae2375a17ea66d8f5a418e88c87b2c296"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00066.html#ae2375a17ea66d8f5a418e88c87b2c296">cxx_divide</a> (<a class="el" href="a00919.html">lutok::state</a> &amp;state)</td></tr>
93*132f818dSEnji Cooper<tr class="memdesc:ae2375a17ea66d8f5a418e88c87b2c296"><td class="mdescLeft">&#160;</td><td class="mdescRight">A custom C++ integral division function for Lua.  <br /></td></tr>
94*132f818dSEnji Cooper<tr class="separator:ae2375a17ea66d8f5a418e88c87b2c296"><td class="memSeparator" colspan="2">&#160;</td></tr>
95*132f818dSEnji Cooper<tr class="memitem:ad70cc6d355abc7d6456692aaca7b0bb1"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00066.html#ad70cc6d355abc7d6456692aaca7b0bb1">raise_long_error</a> (<a class="el" href="a00919.html">lutok::state</a> &amp;state)</td></tr>
96*132f818dSEnji Cooper<tr class="memdesc:ad70cc6d355abc7d6456692aaca7b0bb1"><td class="mdescLeft">&#160;</td><td class="mdescRight">A Lua function that raises a very long error message.  <br /></td></tr>
97*132f818dSEnji Cooper<tr class="separator:ad70cc6d355abc7d6456692aaca7b0bb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
98*132f818dSEnji Cooper</table>
99*132f818dSEnji Cooper<h2 class="groupheader">Function Documentation</h2>
100*132f818dSEnji Cooper<a id="a9d02f302ff9c6ea720b3be1fb3768aca" name="a9d02f302ff9c6ea720b3be1fb3768aca"></a>
101*132f818dSEnji Cooper<h2 class="memtitle"><span class="permalink"><a href="#a9d02f302ff9c6ea720b3be1fb3768aca">&#9670;&#160;</a></span>c_get_upvalues()</h2>
102*132f818dSEnji Cooper
103*132f818dSEnji Cooper<div class="memitem">
104*132f818dSEnji Cooper<div class="memproto">
105*132f818dSEnji Cooper<table class="mlabels">
106*132f818dSEnji Cooper  <tr>
107*132f818dSEnji Cooper  <td class="mlabels-left">
108*132f818dSEnji Cooper      <table class="memname">
109*132f818dSEnji Cooper        <tr>
110*132f818dSEnji Cooper          <td class="memname">static int anonymous_namespace{state_test.cpp}::c_get_upvalues </td>
111*132f818dSEnji Cooper          <td>(</td>
112*132f818dSEnji Cooper          <td class="paramtype">lua_State *&#160;</td>
113*132f818dSEnji Cooper          <td class="paramname"><em>raw_state</em></td><td>)</td>
114*132f818dSEnji Cooper          <td></td>
115*132f818dSEnji Cooper        </tr>
116*132f818dSEnji Cooper      </table>
117*132f818dSEnji Cooper  </td>
118*132f818dSEnji Cooper  <td class="mlabels-right">
119*132f818dSEnji Cooper<span class="mlabels"><span class="mlabel">static</span></span>  </td>
120*132f818dSEnji Cooper  </tr>
121*132f818dSEnji Cooper</table>
122*132f818dSEnji Cooper</div><div class="memdoc">
123*132f818dSEnji Cooper
124*132f818dSEnji Cooper<p>A C closure that returns its two integral upvalues. </p>
125*132f818dSEnji Cooper<dl class="section post"><dt>Postcondition</dt><dd>stack(-2) contains the first upvalue. </dd>
126*132f818dSEnji Cooper<dd>
127*132f818dSEnji Cooperstack(-1) contains the second upvalue.</dd></dl>
128*132f818dSEnji Cooper<dl class="params"><dt>Parameters</dt><dd>
129*132f818dSEnji Cooper  <table class="params">
130*132f818dSEnji Cooper    <tr><td class="paramname">raw_state</td><td>The raw Lua state.</td></tr>
131*132f818dSEnji Cooper  </table>
132*132f818dSEnji Cooper  </dd>
133*132f818dSEnji Cooper</dl>
134*132f818dSEnji Cooper<dl class="section return"><dt>Returns</dt><dd>The number of result values, i.e. 2. </dd></dl>
135*132f818dSEnji Cooper
136*132f818dSEnji Cooper</div>
137*132f818dSEnji Cooper</div>
138*132f818dSEnji Cooper<a id="a31884687c56b3a3f58f517cb9914a1f5" name="a31884687c56b3a3f58f517cb9914a1f5"></a>
139*132f818dSEnji Cooper<h2 class="memtitle"><span class="permalink"><a href="#a31884687c56b3a3f58f517cb9914a1f5">&#9670;&#160;</a></span>check_modules()</h2>
140*132f818dSEnji Cooper
141*132f818dSEnji Cooper<div class="memitem">
142*132f818dSEnji Cooper<div class="memproto">
143*132f818dSEnji Cooper<table class="mlabels">
144*132f818dSEnji Cooper  <tr>
145*132f818dSEnji Cooper  <td class="mlabels-left">
146*132f818dSEnji Cooper      <table class="memname">
147*132f818dSEnji Cooper        <tr>
148*132f818dSEnji Cooper          <td class="memname">static void anonymous_namespace{state_test.cpp}::check_modules </td>
149*132f818dSEnji Cooper          <td>(</td>
150*132f818dSEnji Cooper          <td class="paramtype"><a class="el" href="a00919.html">lutok::state</a> &amp;&#160;</td>
151*132f818dSEnji Cooper          <td class="paramname"><em>state</em>, </td>
152*132f818dSEnji Cooper        </tr>
153*132f818dSEnji Cooper        <tr>
154*132f818dSEnji Cooper          <td class="paramkey"></td>
155*132f818dSEnji Cooper          <td></td>
156*132f818dSEnji Cooper          <td class="paramtype">const std::string &amp;&#160;</td>
157*132f818dSEnji Cooper          <td class="paramname"><em>expected</em>&#160;</td>
158*132f818dSEnji Cooper        </tr>
159*132f818dSEnji Cooper        <tr>
160*132f818dSEnji Cooper          <td></td>
161*132f818dSEnji Cooper          <td>)</td>
162*132f818dSEnji Cooper          <td></td><td></td>
163*132f818dSEnji Cooper        </tr>
164*132f818dSEnji Cooper      </table>
165*132f818dSEnji Cooper  </td>
166*132f818dSEnji Cooper  <td class="mlabels-right">
167*132f818dSEnji Cooper<span class="mlabels"><span class="mlabel">static</span></span>  </td>
168*132f818dSEnji Cooper  </tr>
169*132f818dSEnji Cooper</table>
170*132f818dSEnji Cooper</div><div class="memdoc">
171*132f818dSEnji Cooper
172*132f818dSEnji Cooper<p>Checks that no modules are present or that only one has been loaded. </p>
173*132f818dSEnji Cooper<dl class="section post"><dt>Postcondition</dt><dd>The test case terminates if there is any module present when expected is empty or if there two modules loaded when expected is defined.</dd></dl>
174*132f818dSEnji Cooper<dl class="params"><dt>Parameters</dt><dd>
175*132f818dSEnji Cooper  <table class="params">
176*132f818dSEnji Cooper    <tr><td class="paramname">state</td><td>The Lua state. </td></tr>
177*132f818dSEnji Cooper    <tr><td class="paramname">expected</td><td>The module to expect. Empty if no modules are allowed. </td></tr>
178*132f818dSEnji Cooper  </table>
179*132f818dSEnji Cooper  </dd>
180*132f818dSEnji Cooper</dl>
181*132f818dSEnji Cooper
182*132f818dSEnji Cooper</div>
183*132f818dSEnji Cooper</div>
184*132f818dSEnji Cooper<a id="ae2375a17ea66d8f5a418e88c87b2c296" name="ae2375a17ea66d8f5a418e88c87b2c296"></a>
185*132f818dSEnji Cooper<h2 class="memtitle"><span class="permalink"><a href="#ae2375a17ea66d8f5a418e88c87b2c296">&#9670;&#160;</a></span>cxx_divide()</h2>
186*132f818dSEnji Cooper
187*132f818dSEnji Cooper<div class="memitem">
188*132f818dSEnji Cooper<div class="memproto">
189*132f818dSEnji Cooper<table class="mlabels">
190*132f818dSEnji Cooper  <tr>
191*132f818dSEnji Cooper  <td class="mlabels-left">
192*132f818dSEnji Cooper      <table class="memname">
193*132f818dSEnji Cooper        <tr>
194*132f818dSEnji Cooper          <td class="memname">static int anonymous_namespace{state_test.cpp}::cxx_divide </td>
195*132f818dSEnji Cooper          <td>(</td>
196*132f818dSEnji Cooper          <td class="paramtype"><a class="el" href="a00919.html">lutok::state</a> &amp;&#160;</td>
197*132f818dSEnji Cooper          <td class="paramname"><em>state</em></td><td>)</td>
198*132f818dSEnji Cooper          <td></td>
199*132f818dSEnji Cooper        </tr>
200*132f818dSEnji Cooper      </table>
201*132f818dSEnji Cooper  </td>
202*132f818dSEnji Cooper  <td class="mlabels-right">
203*132f818dSEnji Cooper<span class="mlabels"><span class="mlabel">static</span></span>  </td>
204*132f818dSEnji Cooper  </tr>
205*132f818dSEnji Cooper</table>
206*132f818dSEnji Cooper</div><div class="memdoc">
207*132f818dSEnji Cooper
208*132f818dSEnji Cooper<p>A custom C++ integral division function for Lua. </p>
209*132f818dSEnji Cooper<dl class="section pre"><dt>Precondition</dt><dd>stack(-2) contains the dividend. </dd>
210*132f818dSEnji Cooper<dd>
211*132f818dSEnji Cooperstack(-1) contains the divisor. </dd></dl>
212*132f818dSEnji Cooper<dl class="section post"><dt>Postcondition</dt><dd>stack(-2) contains the quotient of the division. </dd>
213*132f818dSEnji Cooper<dd>
214*132f818dSEnji Cooperstack(-1) contains the remainder of the division.</dd></dl>
215*132f818dSEnji Cooper<dl class="params"><dt>Parameters</dt><dd>
216*132f818dSEnji Cooper  <table class="params">
217*132f818dSEnji Cooper    <tr><td class="paramname">state</td><td>The Lua state.</td></tr>
218*132f818dSEnji Cooper  </table>
219*132f818dSEnji Cooper  </dd>
220*132f818dSEnji Cooper</dl>
221*132f818dSEnji Cooper<dl class="section return"><dt>Returns</dt><dd>The number of result values, i.e. 1.</dd></dl>
222*132f818dSEnji Cooper<dl class="exception"><dt>Exceptions</dt><dd>
223*132f818dSEnji Cooper  <table class="exception">
224*132f818dSEnji Cooper    <tr><td class="paramname">std::runtime_error</td><td>If the divisor is zero. </td></tr>
225*132f818dSEnji Cooper    <tr><td class="paramname">std::string</td><td>If the dividend or the divisor are negative. This is an exception not derived from std::exception on purpose to ensure that the C++ wrapping correctly captures any exception regardless of its type. </td></tr>
226*132f818dSEnji Cooper  </table>
227*132f818dSEnji Cooper  </dd>
228*132f818dSEnji Cooper</dl>
229*132f818dSEnji Cooper
230*132f818dSEnji Cooper</div>
231*132f818dSEnji Cooper</div>
232*132f818dSEnji Cooper<a id="a7ec33b7379b04bedb9bf6e8bcc018d5f" name="a7ec33b7379b04bedb9bf6e8bcc018d5f"></a>
233*132f818dSEnji Cooper<h2 class="memtitle"><span class="permalink"><a href="#a7ec33b7379b04bedb9bf6e8bcc018d5f">&#9670;&#160;</a></span>cxx_multiply_closure()</h2>
234*132f818dSEnji Cooper
235*132f818dSEnji Cooper<div class="memitem">
236*132f818dSEnji Cooper<div class="memproto">
237*132f818dSEnji Cooper<table class="mlabels">
238*132f818dSEnji Cooper  <tr>
239*132f818dSEnji Cooper  <td class="mlabels-left">
240*132f818dSEnji Cooper      <table class="memname">
241*132f818dSEnji Cooper        <tr>
242*132f818dSEnji Cooper          <td class="memname">static int anonymous_namespace{state_test.cpp}::cxx_multiply_closure </td>
243*132f818dSEnji Cooper          <td>(</td>
244*132f818dSEnji Cooper          <td class="paramtype"><a class="el" href="a00919.html">lutok::state</a> &amp;&#160;</td>
245*132f818dSEnji Cooper          <td class="paramname"><em>state</em></td><td>)</td>
246*132f818dSEnji Cooper          <td></td>
247*132f818dSEnji Cooper        </tr>
248*132f818dSEnji Cooper      </table>
249*132f818dSEnji Cooper  </td>
250*132f818dSEnji Cooper  <td class="mlabels-right">
251*132f818dSEnji Cooper<span class="mlabels"><span class="mlabel">static</span></span>  </td>
252*132f818dSEnji Cooper  </tr>
253*132f818dSEnji Cooper</table>
254*132f818dSEnji Cooper</div><div class="memdoc">
255*132f818dSEnji Cooper
256*132f818dSEnji Cooper<p>A custom C++ multiply function with one of its factors on its closure. </p>
257*132f818dSEnji Cooper<dl class="section pre"><dt>Precondition</dt><dd>stack(-1) contains the second factor. </dd></dl>
258*132f818dSEnji Cooper<dl class="section post"><dt>Postcondition</dt><dd>stack(-1) contains the product of the two input factors.</dd></dl>
259*132f818dSEnji Cooper<dl class="params"><dt>Parameters</dt><dd>
260*132f818dSEnji Cooper  <table class="params">
261*132f818dSEnji Cooper    <tr><td class="paramname">state</td><td>The Lua state.</td></tr>
262*132f818dSEnji Cooper  </table>
263*132f818dSEnji Cooper  </dd>
264*132f818dSEnji Cooper</dl>
265*132f818dSEnji Cooper<dl class="section return"><dt>Returns</dt><dd>The number of result values, i.e. 1. </dd></dl>
266*132f818dSEnji Cooper
267*132f818dSEnji Cooper</div>
268*132f818dSEnji Cooper</div>
269*132f818dSEnji Cooper<a id="a627b68d7ac220aba8661237b2ba4759b" name="a627b68d7ac220aba8661237b2ba4759b"></a>
270*132f818dSEnji Cooper<h2 class="memtitle"><span class="permalink"><a href="#a627b68d7ac220aba8661237b2ba4759b">&#9670;&#160;</a></span>is_available()</h2>
271*132f818dSEnji Cooper
272*132f818dSEnji Cooper<div class="memitem">
273*132f818dSEnji Cooper<div class="memproto">
274*132f818dSEnji Cooper<table class="mlabels">
275*132f818dSEnji Cooper  <tr>
276*132f818dSEnji Cooper  <td class="mlabels-left">
277*132f818dSEnji Cooper      <table class="memname">
278*132f818dSEnji Cooper        <tr>
279*132f818dSEnji Cooper          <td class="memname">static bool anonymous_namespace{state_test.cpp}::is_available </td>
280*132f818dSEnji Cooper          <td>(</td>
281*132f818dSEnji Cooper          <td class="paramtype"><a class="el" href="a00919.html">lutok::state</a> &amp;&#160;</td>
282*132f818dSEnji Cooper          <td class="paramname"><em>state</em>, </td>
283*132f818dSEnji Cooper        </tr>
284*132f818dSEnji Cooper        <tr>
285*132f818dSEnji Cooper          <td class="paramkey"></td>
286*132f818dSEnji Cooper          <td></td>
287*132f818dSEnji Cooper          <td class="paramtype">const char *&#160;</td>
288*132f818dSEnji Cooper          <td class="paramname"><em>symbol</em>&#160;</td>
289*132f818dSEnji Cooper        </tr>
290*132f818dSEnji Cooper        <tr>
291*132f818dSEnji Cooper          <td></td>
292*132f818dSEnji Cooper          <td>)</td>
293*132f818dSEnji Cooper          <td></td><td></td>
294*132f818dSEnji Cooper        </tr>
295*132f818dSEnji Cooper      </table>
296*132f818dSEnji Cooper  </td>
297*132f818dSEnji Cooper  <td class="mlabels-right">
298*132f818dSEnji Cooper<span class="mlabels"><span class="mlabel">static</span></span>  </td>
299*132f818dSEnji Cooper  </tr>
300*132f818dSEnji Cooper</table>
301*132f818dSEnji Cooper</div><div class="memdoc">
302*132f818dSEnji Cooper
303*132f818dSEnji Cooper<p>Checks if a symbol is available. </p>
304*132f818dSEnji Cooper<dl class="params"><dt>Parameters</dt><dd>
305*132f818dSEnji Cooper  <table class="params">
306*132f818dSEnji Cooper    <tr><td class="paramname">state</td><td>The Lua state. </td></tr>
307*132f818dSEnji Cooper    <tr><td class="paramname">symbol</td><td>The symbol to check for.</td></tr>
308*132f818dSEnji Cooper  </table>
309*132f818dSEnji Cooper  </dd>
310*132f818dSEnji Cooper</dl>
311*132f818dSEnji Cooper<dl class="section return"><dt>Returns</dt><dd>True if the symbol is defined, false otherwise. </dd></dl>
312*132f818dSEnji Cooper
313*132f818dSEnji Cooper</div>
314*132f818dSEnji Cooper</div>
315*132f818dSEnji Cooper<a id="ad70cc6d355abc7d6456692aaca7b0bb1" name="ad70cc6d355abc7d6456692aaca7b0bb1"></a>
316*132f818dSEnji Cooper<h2 class="memtitle"><span class="permalink"><a href="#ad70cc6d355abc7d6456692aaca7b0bb1">&#9670;&#160;</a></span>raise_long_error()</h2>
317*132f818dSEnji Cooper
318*132f818dSEnji Cooper<div class="memitem">
319*132f818dSEnji Cooper<div class="memproto">
320*132f818dSEnji Cooper<table class="mlabels">
321*132f818dSEnji Cooper  <tr>
322*132f818dSEnji Cooper  <td class="mlabels-left">
323*132f818dSEnji Cooper      <table class="memname">
324*132f818dSEnji Cooper        <tr>
325*132f818dSEnji Cooper          <td class="memname">static int anonymous_namespace{state_test.cpp}::raise_long_error </td>
326*132f818dSEnji Cooper          <td>(</td>
327*132f818dSEnji Cooper          <td class="paramtype"><a class="el" href="a00919.html">lutok::state</a> &amp;&#160;</td>
328*132f818dSEnji Cooper          <td class="paramname"><em>state</em></td><td>)</td>
329*132f818dSEnji Cooper          <td></td>
330*132f818dSEnji Cooper        </tr>
331*132f818dSEnji Cooper      </table>
332*132f818dSEnji Cooper  </td>
333*132f818dSEnji Cooper  <td class="mlabels-right">
334*132f818dSEnji Cooper<span class="mlabels"><span class="mlabel">static</span></span>  </td>
335*132f818dSEnji Cooper  </tr>
336*132f818dSEnji Cooper</table>
337*132f818dSEnji Cooper</div><div class="memdoc">
338*132f818dSEnji Cooper
339*132f818dSEnji Cooper<p>A Lua function that raises a very long error message. </p>
340*132f818dSEnji Cooper<dl class="section pre"><dt>Precondition</dt><dd>stack(-1) contains the length of the message to construct.</dd></dl>
341*132f818dSEnji Cooper<dl class="params"><dt>Parameters</dt><dd>
342*132f818dSEnji Cooper  <table class="params">
343*132f818dSEnji Cooper    <tr><td class="paramname">state</td><td>The Lua state.</td></tr>
344*132f818dSEnji Cooper  </table>
345*132f818dSEnji Cooper  </dd>
346*132f818dSEnji Cooper</dl>
347*132f818dSEnji Cooper<dl class="section return"><dt>Returns</dt><dd>Never returns.</dd></dl>
348*132f818dSEnji Cooper<dl class="exception"><dt>Exceptions</dt><dd>
349*132f818dSEnji Cooper  <table class="exception">
350*132f818dSEnji Cooper    <tr><td class="paramname">std::runtime_error</td><td>Unconditionally, with an error message formed by the repetition of 'A' as many times as requested. </td></tr>
351*132f818dSEnji Cooper  </table>
352*132f818dSEnji Cooper  </dd>
353*132f818dSEnji Cooper</dl>
354*132f818dSEnji Cooper
355*132f818dSEnji Cooper</div>
356*132f818dSEnji Cooper</div>
357*132f818dSEnji Cooper</div><!-- contents -->
358*132f818dSEnji Cooper<!-- start footer part -->
359*132f818dSEnji Cooper<hr class="footer"/><address class="footer"><small>
360*132f818dSEnji CooperGenerated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.6
361*132f818dSEnji Cooper</small></address>
362*132f818dSEnji Cooper</body>
363*132f818dSEnji Cooper</html>
364