Glenn Maynard 82233e2ae7 Maintain multiple Lua states. Return an unused one for each LUA->Get()
call.

 - this means that nested calls which use Lua in unrelated, black boxed
   ways (and so don't pass around an *L) don't share a stack; when you
   Get a new state, you're guaranteed an empty stack, and like function
   dispatches, you can use absolute stack indexes starting from 1
 - we don't have to track stack counts to sanity check it; it always starts
   at 0, so just check that the stack is empty again on Release
 - we maintain a pool of states, so Get() is still fast; we typically create
   only a couple states
2006-10-14 22:34:15 +00:00
S
Description
554 MiB
Languages
C++ 85.7%
Lua 4.3%
C 4.3%
Rich Text Format 2.3%
CMake 1.1%
Other 2%