seqlua

annotate seqlualib.h @ 12:91b0d0d4c4dd

Added coroutine example to README
author jbe
date Wed Aug 20 05:18:16 2014 +0200 (2014-08-20)
parents 144f0bddee2b
children a95fbd16473f
rev   line source
jbe@0 1 #include <lua.h>
jbe@0 2 #include <lauxlib.h>
jbe@0 3
jbe@0 4 typedef struct {
jbe@0 5 lua_State *L;
jbe@8 6 int idx;
jbe@8 7 int callargidx;
jbe@0 8 int itertype;
jbe@0 9 lua_Integer i;
jbe@0 10 } seqlua_Iterator;
jbe@0 11
jbe@0 12 extern void seqlua_iterinit(lua_State *L, seqlua_Iterator *iter, int idx);
jbe@0 13
jbe@0 14 extern int seqlua_iternext(seqlua_Iterator *iter);
jbe@0 15
jbe@0 16 #define seqlua_iterloop(L, iter, idx) \
jbe@0 17 for ( \
jbe@0 18 seqlua_iterinit((L), (iter), (idx)); \
jbe@0 19 seqlua_iternext(iter); \
jbe@0 20 lua_pop((L), 1) \
jbe@0 21 )
jbe@0 22
jbe@0 23 #define seqlua_itercount(iter) ((iter)->i)
jbe@0 24
jbe@0 25 extern void seqlua_iterclosure(lua_State *L, int idx);
jbe@0 26

Impressum / About Us