seqlua
view seqlualib.h @ 47:31a78781a1e0
Replaced "due to the following reasons" with "due to the following considerations" in README
author | jbe |
---|---|
date | Mon Aug 25 04:11:58 2014 +0200 (2014-08-25) |
parents | 3ff7cec8d3ce |
children | 3362ec36cb09 |
line source
1 #include <lua.h>
2 #include <lauxlib.h>
4 typedef struct {
5 lua_State *L;
6 int idx;
7 int itertype;
8 lua_Integer i;
9 } seqlua_Iterator;
11 extern void seqlua_iterinit(lua_State *L, seqlua_Iterator *iter, int idx);
13 extern int seqlua_iternext(seqlua_Iterator *iter);
15 #define seqlua_iterloop(L, iter, idx) \
16 for ( \
17 seqlua_iterinit((L), (iter), (idx)); \
18 seqlua_iternext(iter); \
19 )
21 #define seqlua_iterloopauto(L, iter, idx) \
22 for ( \
23 seqlua_iterinit((L), (iter), (idx)); \
24 seqlua_iternext(iter); \
25 lua_pop((L), 1) \
26 )
28 #define seqlua_itercount(iter) ((iter)->i)