<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>rpm: lua/ldo.h Source File</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> <link href="tabs.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.4.7 --> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li id="current"><a href="files.html"><span>Files</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> </ul></div> <div class="tabs"> <ul> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>Globals</span></a></li> </ul></div> <h1>lua/ldo.h</h1><a href="ldo_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span> <a name="l00002"></a>00002 <span class="comment">** $Id: ldo.h,v 1.2 2004/03/23 05:09:14 jbj Exp $</span> <a name="l00003"></a>00003 <span class="comment">** Stack and Call structure of Lua</span> <a name="l00004"></a>00004 <span class="comment">** See Copyright Notice in lua.h</span> <a name="l00005"></a>00005 <span class="comment">*/</span> <a name="l00006"></a>00006 <a name="l00007"></a>00007 <span class="preprocessor">#ifndef ldo_h</span> <a name="l00008"></a>00008 <span class="preprocessor"></span><span class="preprocessor">#define ldo_h</span> <a name="l00009"></a>00009 <span class="preprocessor"></span> <a name="l00010"></a>00010 <a name="l00011"></a>00011 <span class="preprocessor">#include "<a class="code" href="lobject_8h.html">lobject.h</a>"</span> <a name="l00012"></a>00012 <span class="preprocessor">#include "<a class="code" href="lstate_8h.html">lstate.h</a>"</span> <a name="l00013"></a>00013 <span class="preprocessor">#include "<a class="code" href="lzio_8h.html">lzio.h</a>"</span> <a name="l00014"></a>00014 <a name="l00015"></a>00015 <a name="l00016"></a>00016 <span class="comment">/*</span> <a name="l00017"></a>00017 <span class="comment">** macro to control inclusion of some hard tests on stack reallocation</span> <a name="l00018"></a>00018 <span class="comment">*/</span> <a name="l00019"></a>00019 <span class="preprocessor">#ifndef HARDSTACKTESTS</span> <a name="l00020"></a><a class="code" href="ldo_8h.html#db7255da0decb82ca11a64fb830a8af1">00020</a> <span class="preprocessor"></span><span class="preprocessor">#define condhardstacktests(x) { </span><span class="comment">/* empty */</span> } <a name="l00021"></a>00021 <span class="preprocessor">#else</span> <a name="l00022"></a>00022 <span class="preprocessor"></span><span class="preprocessor">#define condhardstacktests(x) x</span> <a name="l00023"></a>00023 <span class="preprocessor"></span><span class="preprocessor">#endif</span> <a name="l00024"></a>00024 <span class="preprocessor"></span> <a name="l00025"></a>00025 <a name="l00026"></a><a class="code" href="ldo_8h.html#b1500a6449b9cdf335e3c7ce23aa85d7">00026</a> <span class="preprocessor">#define luaD_checkstack(L,n) \</span> <a name="l00027"></a>00027 <span class="preprocessor"> if ((char *)L->stack_last - (char *)L->top <= (n)*(int)sizeof(TObject)) \</span> <a name="l00028"></a>00028 <span class="preprocessor"> luaD_growstack(L, n); \</span> <a name="l00029"></a>00029 <span class="preprocessor"> else condhardstacktests(luaD_reallocstack(L, L->stacksize));</span> <a name="l00030"></a>00030 <span class="preprocessor"></span> <a name="l00031"></a>00031 <a name="l00032"></a><a class="code" href="ldo_8h.html#9c102d2b8b9a0a52bbb15eeeb4e0cbac">00032</a> <span class="preprocessor">#define incr_top(L) {luaD_checkstack(L,1); L->top++;}</span> <a name="l00033"></a>00033 <span class="preprocessor"></span> <a name="l00034"></a><a class="code" href="ldo_8h.html#3534573bbeec89c6dbdb3eae5a54f9b9">00034</a> <span class="preprocessor">#define savestack(L,p) ((char *)(p) - (char *)L->stack)</span> <a name="l00035"></a><a class="code" href="ldo_8h.html#3fbde7f289e6bf661575e9b802da9e78">00035</a> <span class="preprocessor"></span><span class="preprocessor">#define restorestack(L,n) ((TObject *)((char *)L->stack + (n)))</span> <a name="l00036"></a>00036 <span class="preprocessor"></span> <a name="l00037"></a><a class="code" href="ldo_8h.html#401e89c5a5f2b1dd29b87edeb5367773">00037</a> <span class="preprocessor">#define saveci(L,p) ((char *)(p) - (char *)L->base_ci)</span> <a name="l00038"></a><a class="code" href="ldo_8h.html#b497c989cbf1c89fba3a46e455049062">00038</a> <span class="preprocessor"></span><span class="preprocessor">#define restoreci(L,n) ((CallInfo *)((char *)L->base_ci + (n)))</span> <a name="l00039"></a>00039 <span class="preprocessor"></span> <a name="l00040"></a>00040 <a name="l00041"></a>00041 <span class="comment">/* type of protected functions, to be ran by `runprotected' */</span> <a name="l00042"></a><a class="code" href="ldo_8h.html#c13f81736aad5a4d150ee4dd9fd7965c">00042</a> <span class="keyword">typedef</span> void (*<a class="code" href="ldo_8h.html#c13f81736aad5a4d150ee4dd9fd7965c">Pfunc</a>) (<a class="code" href="structlua__State.html">lua_State</a> *L, <span class="keywordtype">void</span> *ud); <a name="l00043"></a>00043 <a name="l00044"></a>00044 <span class="comment">/*@unused@*/</span> <a name="l00045"></a>00045 <span class="keywordtype">void</span> <a class="code" href="ldo_8h.html#38e92cc89b96ca439d92720408513766">luaD_resetprotection</a> (<a class="code" href="structlua__State.html">lua_State</a> *L) <a name="l00046"></a>00046 <span class="comment">/*@modifies L @*/</span>; <a name="l00047"></a>00047 <span class="keywordtype">int</span> <a class="code" href="ldo_8c.html#df0a8ae5390c527411f4d8c0ddb81a27">luaD_protectedparser</a> (<a class="code" href="structlua__State.html">lua_State</a> *L, <a class="code" href="structZio.html">ZIO</a> *<a class="code" href="structSParser.html#15ddec33b9558bbcf1301fd9c0d392d1">z</a>, <span class="keywordtype">int</span> <a class="code" href="structSParser.html#03482594a457869845fe0fb2cd3572ae">bin</a>) <a name="l00048"></a>00048 <span class="comment">/*@modifies L, z @*/</span>; <a name="l00049"></a>00049 <span class="keywordtype">void</span> <a class="code" href="ldo_8c.html#c0e683e74512ba38441c5a5035ffec6c">luaD_callhook</a> (<a class="code" href="structlua__State.html">lua_State</a> *L, <span class="keywordtype">int</span> event, <span class="keywordtype">int</span> line) <a name="l00050"></a>00050 <span class="comment">/*@modifies L @*/</span>; <a name="l00051"></a>00051 <span class="comment">/*@null@*/</span> <a name="l00052"></a>00052 <a class="code" href="structlua__TObject.html">StkId</a> <a class="code" href="ldo_8c.html#f4377954581872ba9d611c409a079ae1">luaD_precall</a> (<a class="code" href="structlua__State.html">lua_State</a> *L, <a class="code" href="structlua__TObject.html">StkId</a> func) <a name="l00053"></a>00053 <span class="comment">/*@modifies L @*/</span>; <a name="l00054"></a>00054 <span class="keywordtype">void</span> <a class="code" href="ldo_8c.html#5483fddd87ca999e7d037bf397ab7997">luaD_call</a> (<a class="code" href="structlua__State.html">lua_State</a> *L, <a class="code" href="structlua__TObject.html">StkId</a> func, <span class="keywordtype">int</span> nResults) <a name="l00055"></a>00055 <span class="comment">/*@modifies L @*/</span>; <a name="l00056"></a>00056 <span class="keywordtype">int</span> <a class="code" href="ldo_8c.html#1ad7f845cc62b110e3fcc0ae187d7c85">luaD_pcall</a> (<a class="code" href="structlua__State.html">lua_State</a> *L, <a class="code" href="ldo_8h.html#c13f81736aad5a4d150ee4dd9fd7965c">Pfunc</a> func, <span class="keywordtype">void</span> *u, <a name="l00057"></a>00057 ptrdiff_t oldtop, ptrdiff_t ef) <a name="l00058"></a>00058 <span class="comment">/*@modifies L @*/</span>; <a name="l00059"></a>00059 <span class="keywordtype">void</span> <a class="code" href="ldo_8c.html#29b292b1ab0e838e8f6ebfc87f553e47">luaD_poscall</a> (<a class="code" href="structlua__State.html">lua_State</a> *L, <span class="keywordtype">int</span> wanted, <a class="code" href="structlua__TObject.html">StkId</a> firstResult) <a name="l00060"></a>00060 <span class="comment">/*@modifies L @*/</span>; <a name="l00061"></a>00061 <span class="keywordtype">void</span> <a class="code" href="ldo_8c.html#4973df8c6b2fda8e72794f8d66cdaca2">luaD_reallocCI</a> (<a class="code" href="structlua__State.html">lua_State</a> *L, <span class="keywordtype">int</span> newsize) <a name="l00062"></a>00062 <span class="comment">/*@modifies L @*/</span>; <a name="l00063"></a>00063 <span class="keywordtype">void</span> <a class="code" href="ldo_8c.html#f9e1a13760752fc0ba594072b1fef5f3">luaD_reallocstack</a> (<a class="code" href="structlua__State.html">lua_State</a> *L, <span class="keywordtype">int</span> newsize) <a name="l00064"></a>00064 <span class="comment">/*@modifies L @*/</span>; <a name="l00065"></a>00065 <span class="keywordtype">void</span> <a class="code" href="ldo_8c.html#7dafde5820970358b662483594666cdb">luaD_growstack</a> (<a class="code" href="structlua__State.html">lua_State</a> *L, <span class="keywordtype">int</span> n) <a name="l00066"></a>00066 <span class="comment">/*@modifies L @*/</span>; <a name="l00067"></a>00067 <a name="l00068"></a>00068 <span class="keywordtype">void</span> <a class="code" href="ldo_8c.html#97706fc4752c2b3ea1ea23ae2b9e2d9a">luaD_throw</a> (<a class="code" href="structlua__State.html">lua_State</a> *L, <span class="keywordtype">int</span> errcode) <a name="l00069"></a>00069 <span class="comment">/*@modifies L @*/</span>; <a name="l00070"></a>00070 <span class="keywordtype">int</span> <a class="code" href="ldo_8c.html#b0872b1738a995ecbf1cdc8a9bc0fdf6">luaD_rawrunprotected</a> (<a class="code" href="structlua__State.html">lua_State</a> *L, <a class="code" href="ldo_8h.html#c13f81736aad5a4d150ee4dd9fd7965c">Pfunc</a> f, <span class="comment">/*@null@*/</span> <span class="keywordtype">void</span> *ud) <a name="l00071"></a>00071 <span class="comment">/*@modifies L @*/</span>; <a name="l00072"></a>00072 <a name="l00073"></a>00073 <a name="l00074"></a>00074 <span class="preprocessor">#endif</span> </pre></div><hr size="1"><address style="align: right;"><small>Generated on 1 Oct 2013 for rpm by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address> </body> </html>