aboutsummaryrefslogtreecommitdiff
path: root/lapi.c
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>2006-01-10 10:50:00 -0200
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>2006-01-10 10:50:00 -0200
commitdd1221582bc7c0c2ec508b5bad4086f8801b61a8 (patch)
tree36c896b2dc704cc28edc59c92b83f00319e4e9ea /lapi.c
parentbfdcbbcd76c7187022fe2d35675de0b1c92eeadf (diff)
downloadlua-dd1221582bc7c0c2ec508b5bad4086f8801b61a8.tar.gz
lua-dd1221582bc7c0c2ec508b5bad4086f8801b61a8.tar.bz2
lua-dd1221582bc7c0c2ec508b5bad4086f8801b61a8.zip
details
Diffstat (limited to 'lapi.c')
-rw-r--r--lapi.c17
1 files changed, 8 insertions, 9 deletions
diff --git a/lapi.c b/lapi.c
index 27148928..a1437e70 100644
--- a/lapi.c
+++ b/lapi.c
@@ -1,5 +1,5 @@
1/* 1/*
2** $Id: lapi.c,v 2.51 2005/10/20 11:35:50 roberto Exp roberto $ 2** $Id: lapi.c,v 2.52 2005/12/22 16:19:56 roberto Exp roberto $
3** Lua API 3** Lua API
4** See Copyright Notice in lua.h 4** See Copyright Notice in lua.h
5*/ 5*/
@@ -40,7 +40,7 @@ const char lua_ident[] =
40 40
41#define api_checknelems(L, n) api_check(L, (n) <= (L->top - L->base)) 41#define api_checknelems(L, n) api_check(L, (n) <= (L->top - L->base))
42 42
43#define api_checkvalidindex(L, i) api_check(L, (i) != &luaO_nilobject) 43#define api_checkvalidindex(L, i) api_check(L, (i) != luaO_nilobject)
44 44
45#define api_incr_top(L) {api_check(L, L->top < L->ci->top); L->top++;} 45#define api_incr_top(L) {api_check(L, L->top < L->ci->top); L->top++;}
46 46
@@ -50,7 +50,7 @@ static TValue *index2adr (lua_State *L, int idx) {
50 if (idx > 0) { 50 if (idx > 0) {
51 TValue *o = L->base + (idx - 1); 51 TValue *o = L->base + (idx - 1);
52 api_check(L, idx <= L->ci->top - L->base); 52 api_check(L, idx <= L->ci->top - L->base);
53 if (o >= L->top) return cast(TValue *, &luaO_nilobject); 53 if (o >= L->top) return cast(TValue *, luaO_nilobject);
54 else return o; 54 else return o;
55 } 55 }
56 else if (idx > LUA_REGISTRYINDEX) { 56 else if (idx > LUA_REGISTRYINDEX) {
@@ -70,7 +70,7 @@ static TValue *index2adr (lua_State *L, int idx) {
70 idx = LUA_GLOBALSINDEX - idx; 70 idx = LUA_GLOBALSINDEX - idx;
71 return (idx <= func->c.nupvalues) 71 return (idx <= func->c.nupvalues)
72 ? &func->c.upvalue[idx-1] 72 ? &func->c.upvalue[idx-1]
73 : cast(TValue *, &luaO_nilobject); 73 : cast(TValue *, luaO_nilobject);
74 } 74 }
75 } 75 }
76} 76}
@@ -234,7 +234,7 @@ LUA_API void lua_pushvalue (lua_State *L, int idx) {
234 234
235LUA_API int lua_type (lua_State *L, int idx) { 235LUA_API int lua_type (lua_State *L, int idx) {
236 StkId o = index2adr(L, idx); 236 StkId o = index2adr(L, idx);
237 return (o == &luaO_nilobject) ? LUA_TNONE : ttype(o); 237 return (o == luaO_nilobject) ? LUA_TNONE : ttype(o);
238} 238}
239 239
240 240
@@ -272,7 +272,7 @@ LUA_API int lua_isuserdata (lua_State *L, int idx) {
272LUA_API int lua_rawequal (lua_State *L, int index1, int index2) { 272LUA_API int lua_rawequal (lua_State *L, int index1, int index2) {
273 StkId o1 = index2adr(L, index1); 273 StkId o1 = index2adr(L, index1);
274 StkId o2 = index2adr(L, index2); 274 StkId o2 = index2adr(L, index2);
275 return (o1 == &luaO_nilobject || o2 == &luaO_nilobject) ? 0 275 return (o1 == luaO_nilobject || o2 == luaO_nilobject) ? 0
276 : luaO_rawequalObj(o1, o2); 276 : luaO_rawequalObj(o1, o2);
277} 277}
278 278
@@ -283,8 +283,7 @@ LUA_API int lua_equal (lua_State *L, int index1, int index2) {
283 lua_lock(L); /* may call tag method */ 283 lua_lock(L); /* may call tag method */
284 o1 = index2adr(L, index1); 284 o1 = index2adr(L, index1);
285 o2 = index2adr(L, index2); 285 o2 = index2adr(L, index2);
286 i = (o1 == &luaO_nilobject || o2 == &luaO_nilobject) ? 0 286 i = (o1 == luaO_nilobject || o2 == luaO_nilobject) ? 0 : equalobj(L, o1, o2);
287 : equalobj(L, o1, o2);
288 lua_unlock(L); 287 lua_unlock(L);
289 return i; 288 return i;
290} 289}
@@ -296,7 +295,7 @@ LUA_API int lua_lessthan (lua_State *L, int index1, int index2) {
296 lua_lock(L); /* may call tag method */ 295 lua_lock(L); /* may call tag method */
297 o1 = index2adr(L, index1); 296 o1 = index2adr(L, index1);
298 o2 = index2adr(L, index2); 297 o2 = index2adr(L, index2);
299 i = (o1 == &luaO_nilobject || o2 == &luaO_nilobject) ? 0 298 i = (o1 == luaO_nilobject || o2 == luaO_nilobject) ? 0
300 : luaV_lessthan(L, o1, o2); 299 : luaV_lessthan(L, o1, o2);
301 lua_unlock(L); 300 lua_unlock(L);
302 return i; 301 return i;