Roberto Ierusalimschy
29644366fc
useless assignments removed (macros already do the assignment)
14 years ago
Roberto Ierusalimschy
3b44821334
stricter control (using tag variants) over closure kinds (Lua x C)
14 years ago
Roberto Ierusalimschy
aa13c591f5
avoid use of 'ifdef/ifndef'; use 'defined' instead (simpler and
more powerful)
14 years ago
Roberto Ierusalimschy
e4076fe6d9
break long assertion in two shorter ones
14 years ago
Roberto Ierusalimschy
19fbdf6cae
'luaL_findtable' -> 'luaL_getsubtable'
14 years ago
Roberto Ierusalimschy
75d8470f0f
new macro 'cast_uchar'
14 years ago
Roberto Ierusalimschy
9b7a12c46d
finalizers (__gc) for tables
14 years ago
Roberto Ierusalimschy
50334faad6
no more compatibility with (veryyyy) old ref system
14 years ago
Roberto Ierusalimschy
d447945685
'module'/'luaL_register' and associates are deprecated
14 years ago
Roberto Ierusalimschy
7192afafee
new module policy: C modules do not create globals and do not register
themselves with 'require' (let 'require' do its work); new auxiliary
functions luaL_newlib/luaL_newlibtable/luaL_setfuncs/luaL_requiref.
Old luaL_register will be deprecated.
15 years ago
Roberto Ierusalimschy
d9ea6eca7c
macro 'key2tal' replaced by 'gkey' (as both were equal)
15 years ago
Roberto Ierusalimschy
bd262d591f
'coroutine' library separated from 'baselib'
15 years ago
Roberto Ierusalimschy
3d80aeab5a
lua_pushstring may reallocate the stack, making 'o' a dangling
pointer
15 years ago
Roberto Ierusalimschy
69ba1ac441
new "instruction" 'absindex'
15 years ago
Roberto Ierusalimschy
de0f51a02c
wrong type being assigned (not detected because of obj2gco macro)
15 years ago
Roberto Ierusalimschy
0567221848
udata in 'tobefnz' list be have old bit on (it will be cleared
when udata is moved to 'allgc' list)
15 years ago
Roberto Ierusalimschy
fa2ddb070a
details (to avoid too long strings in assertions)
15 years ago
Roberto Ierusalimschy
9c1347e647
more tests in 'lua_checkmemory' + more information in function
'gccolor'
15 years ago
Roberto Ierusalimschy
8c583c61a3
more tests in 'lua_checkmemory'
15 years ago
Roberto Ierusalimschy
0c27de2e7b
no more 'finalize' phase in GC; finalizers are called along the
entire cycle
15 years ago
Roberto Ierusalimschy
d25f7f9d78
items in 'tobefnz' are kept black (as before recent change) and changed
to white only when needed (being moved to 'allgc' when not keeping
invariant).
15 years ago
Roberto Ierusalimschy
4d871ee973
"gray lists" only need to be valid when 'keepinvariant' is true
15 years ago
Roberto Ierusalimschy
5d79c6684b
removed commented-out debugging code
15 years ago
Roberto Ierusalimschy
ee7478e884
improved 'lua_checkmemory', with better control over gray objects
15 years ago
Roberto Ierusalimschy
973d81efb3
complete control over number of each kind of object allocated
15 years ago
Roberto Ierusalimschy
1e6940f291
'gcstate' now also runs collector until given state + small changes
in 'testC' to test 'lua_topointer' and 'lua_tocfunction'
15 years ago
Roberto Ierusalimschy
7dfa4cd655
first implementation of light C functions
15 years ago
Roberto Ierusalimschy
b2dd246b7a
better control in 'totalmem' over choosing counters
15 years ago
Roberto Ierusalimschy
d41b467320
check memory allows strings to live in the main GC list (it should
work ok).
15 years ago
Roberto Ierusalimschy
a8d3aa14fd
global table now is only kept in the registry
15 years ago
Roberto Ierusalimschy
064e406f67
no more fenvs!
15 years ago
Roberto Ierusalimschy
3aa9598177
'mainthread' is not inserted in the 'allgc' list anymore, but swept
separately.
15 years ago
Roberto Ierusalimschy
4433dbb5f5
userdata with finalizers are kept in a separated list ('udgc'), instead
of at the end of 'rootgc' (which was renamed to 'allgc', as it is not
"root" in the usual meaning for collectors)
15 years ago
Roberto Ierusalimschy
070d3743a7
"no value" added to array luaT_typenames + occurrences of "userdata"
in that array unified in a single address
15 years ago
Roberto Ierusalimschy
f84b575cfa
no more pseudoindex LUA_GLOBALSINDEX; global table now accessible
through registry
15 years ago
Roberto Ierusalimschy
c3a6f3fa1c
'lua_objlen' replaced by 'lua_rawlen', 'lua_len', and 'luaL_len'
15 years ago
Roberto Ierusalimschy
0bbdddc86b
allocator function receives the tag of object being allocated in 'osize'
when 'ptr' is NULL.
15 years ago
Roberto Ierusalimschy
a2a2abcba4
new function 'luaC_runtilstate' to advance GC until a "valid" state
15 years ago
Roberto Ierusalimschy
1375435e4a
several new features in testC to allow better testing of lua_resume
at the C API level
15 years ago
Roberto Ierusalimschy
df1dc3f1f5
strings in C scripts may be delimited by quotes + new functionality to
set C scripts as C hooks
15 years ago
Roberto Ierusalimschy
cfa8bc3ca4
continuations may be upvalues too
15 years ago
Roberto Ierusalimschy
63a3b1a1eb
macro 'checkvalref' redefined as function (to avoid too long macros)
15 years ago
Roberto Ierusalimschy
9756f56354
better control over accesses to TValue fields
15 years ago
Roberto Ierusalimschy
5bc91c6405
no more one environment per thread: all threads share a single global
environment
15 years ago
Roberto Ierusalimschy
916587508c
parser keeps list of active local variables in a single dynamic array,
therefore saving C stack space
15 years ago
Roberto Ierusalimschy
a5382b763c
new function lua_copy
15 years ago
Roberto Ierusalimschy
d119cf3035
a few more instructions to testC (func2udata and getfield)
15 years ago
Roberto Ierusalimschy
5938212748
information about upvalues (where they come from) kept in Proto structure,
instead of sequence of pseudo-opcodes after OP_CLOSURE
15 years ago
Roberto Ierusalimschy
67cae2854c
'lua_mainthread' replaced by new preregistered value LUA_RIDX_MAINTHREAD
15 years ago
Roberto Ierusalimschy
0e45ffb8e4
first implementation of 'lua_yieldk' (yield with continuation)
15 years ago