1dff7e11c2000d6745261de046d76b1500a05ece9reed@google.com/* 2dff7e11c2000d6745261de046d76b1500a05ece9reed@google.com** $Id: lapi.h,v 2.7 2009/11/27 15:37:59 roberto Exp $ 3dff7e11c2000d6745261de046d76b1500a05ece9reed@google.com** Auxiliary functions from Lua API 4dff7e11c2000d6745261de046d76b1500a05ece9reed@google.com** See Copyright Notice in lua.h 5dff7e11c2000d6745261de046d76b1500a05ece9reed@google.com*/ 6dff7e11c2000d6745261de046d76b1500a05ece9reed@google.com 7dff7e11c2000d6745261de046d76b1500a05ece9reed@google.com#ifndef lapi_h 8dff7e11c2000d6745261de046d76b1500a05ece9reed@google.com#define lapi_h 9dff7e11c2000d6745261de046d76b1500a05ece9reed@google.com 10dff7e11c2000d6745261de046d76b1500a05ece9reed@google.com 11dff7e11c2000d6745261de046d76b1500a05ece9reed@google.com#include "llimits.h" 12dff7e11c2000d6745261de046d76b1500a05ece9reed@google.com#include "lstate.h" 13dff7e11c2000d6745261de046d76b1500a05ece9reed@google.com 14dff7e11c2000d6745261de046d76b1500a05ece9reed@google.com#define api_incr_top(L) {L->top++; api_check(L, L->top <= L->ci->top, \ 15dff7e11c2000d6745261de046d76b1500a05ece9reed@google.com "stack overflow");} 16dff7e11c2000d6745261de046d76b1500a05ece9reed@google.com 17dff7e11c2000d6745261de046d76b1500a05ece9reed@google.com#define adjustresults(L,nres) \ 18dff7e11c2000d6745261de046d76b1500a05ece9reed@google.com { if ((nres) == LUA_MULTRET && L->ci->top < L->top) L->ci->top = L->top; } 19dff7e11c2000d6745261de046d76b1500a05ece9reed@google.com 20dff7e11c2000d6745261de046d76b1500a05ece9reed@google.com#define api_checknelems(L,n) api_check(L, (n) < (L->top - L->ci->func), \ 21dff7e11c2000d6745261de046d76b1500a05ece9reed@google.com "not enough elements in the stack") 22dff7e11c2000d6745261de046d76b1500a05ece9reed@google.com 23dff7e11c2000d6745261de046d76b1500a05ece9reed@google.com 24dff7e11c2000d6745261de046d76b1500a05ece9reed@google.com#endif 25