Commit Graph

447 Commits

Author SHA1 Message Date
Roberto Ierusalimschy
d4e6b75098 "integer" keys in tables are now lua_Integer, not 'int'. 2013-04-26 12:39:25 -03:00
Roberto Ierusalimschy
a2f5c28a80 new operation '//' (integer division) 2013-04-26 10:08:29 -03:00
Roberto Ierusalimschy
01b6fe0cbf new API function 'lua_isinteger' 2013-04-25 10:52:49 -03:00
Roberto Ierusalimschy
70b0ee6310 export 'lua_ident' to avoid it being removed by C++ linker 2013-03-15 10:04:22 -03:00
Roberto Ierusalimschy
db424053e8 new release number + copyright year 2013-02-19 15:39:04 -03:00
Roberto Ierusalimschy
8df0198178 release 5.2.1 2012-04-20 10:18:26 -03:00
Roberto Ierusalimschy
3617e04e97 'lua_load' has an extra argument 'mode' 2011-11-29 13:55:08 -02:00
Roberto Ierusalimschy
475e6c5352 'lua_setglobal/lua_getglobal' implemented as functions to avoid
problems with stack indices
(e.g., lua_getglobal(L, lua_tostring(L, -1)) )
2011-10-24 14:53:05 -02:00
Roberto Ierusalimschy
af00a0772c new functions lua_rawsetp/lua_rawgetp 2011-10-24 12:54:05 -02:00
Roberto Ierusalimschy
3dc5475e23 'nCcalls' should be local to each thread, as each thread may have its
own C stack (with LuaThreads or something similar)
2011-08-23 14:24:34 -03:00
Roberto Ierusalimschy
ad1a54b5c0 reordering of some defines (more logical grouping) 2011-07-02 13:00:15 -03:00
Roberto Ierusalimschy
c31f4946e9 copyright updated to 2011 2011-04-18 11:15:48 -03:00
Roberto Ierusalimschy
6098e06e09 better organization for coercion functions between lua_Number and
integer types + IEEE trick to be used in most platforms, by default
2010-10-26 17:32:19 -02:00
Roberto Ierusalimschy
c6b64ffe65 new type lua_Unsigned and corresponding projection/injection functions 2010-10-25 18:31:11 -02:00
Roberto Ierusalimschy
6828f6d427 new parameter 'majorinc' to control frequency of major collections
in generational mode
2010-09-03 11:14:01 -03:00
Roberto Ierusalimschy
8b7cf8c62d 'lua_[gs]etenv' -> 'lua_[gs]etuservalue' 2010-07-25 12:18:19 -03:00
Roberto Ierusalimschy
85c1461422 new macros LUA_VERSION_{MAJOR/MINOR/RELEASE} 2010-07-25 12:02:41 -03:00
Roberto Ierusalimschy
a9dc7c8828 functions lua_tonumber/lua_tointeger replaced by lua_tonumberx/lua_tointegerx
that have an extra out parameter with conversion status
2010-07-02 14:35:06 -03:00
Roberto Ierusalimschy
e924a7f9ea new API function 'lua_absindex' 2010-05-12 11:09:20 -03:00
Roberto Ierusalimschy
2d81cfa4e1 corrected definition of 'lua_register' (there is no LUA_ENVIRONINDEX
anymore)
2010-05-10 10:50:20 -03:00
Roberto Ierusalimschy
afdb19ac82 no more 'ccall' nor 'cpcall' functions. (With light C functions they
are obsolete.)
2010-04-14 12:14:21 -03:00
Roberto Ierusalimschy
d20ff60615 new macro LUA_NUMTAGS 2010-04-12 13:07:29 -03:00
Roberto Ierusalimschy
11126422d9 option to return GC to normal (incremental, non generational) mode 2010-04-02 12:19:19 -03:00
Roberto Ierusalimschy
064e406f67 no more fenvs! 2010-03-26 17:58:11 -03:00
Roberto Ierusalimschy
74123e9686 draft version of a generational mode for garbage collection. (Not well
tested; no major collections; ...)
2010-03-22 15:28:03 -03:00
Roberto Ierusalimschy
caf74dd731 'cpcall' renamed to 'ccall' as it does not do a protected call 2010-03-19 18:04:17 -03:00
Roberto Ierusalimschy
489253d753 better definitions for lua_[gs]etglobal + less uses of ENVIRONINDEX 2010-03-13 00:57:46 -03:00
Roberto Ierusalimschy
03b556b963 corrected copyright notice to 2010 2010-01-11 15:15:11 -02:00
Roberto Ierusalimschy
19f8c87375 compatibility code moved to luaconf.h 2010-01-06 13:08:00 -02:00
Roberto Ierusalimschy
5bcfe0c700 new debug info 'isvararg' and 'nparams' 2010-01-06 12:42:35 -02:00
Roberto Ierusalimschy
25189b420d field 'nups' in struct 'lua_Debug' changed from 'int' to 'unsigned
char' to save some space (even C functions cannot have more than
maxchar upvalues).
2010-01-05 16:33:26 -02:00
Roberto Ierusalimschy
cb3f95d516 'lua_cpcall' is deprecated 2009-12-22 14:47:00 -02:00
Roberto Ierusalimschy
f84b575cfa no more pseudoindex LUA_GLOBALSINDEX; global table now accessible
through registry
2009-12-22 13:32:50 -02:00
Roberto Ierusalimschy
ec0fc1a13b missing parentheses around 'lua_version' + moving typdef's before
the extra include
2009-12-18 13:32:36 -02:00
Roberto Ierusalimschy
c3a6f3fa1c 'lua_objlen' replaced by 'lua_rawlen', 'lua_len', and 'luaL_len' 2009-12-17 14:20:01 -02:00
Roberto Ierusalimschy
2e51792596 avoid using deprecated macros lua_[gs]etglobal 2009-12-11 11:40:44 -02:00
Roberto Ierusalimschy
3c4d970a7b comment typos 2009-11-26 09:39:20 -02:00
Roberto Ierusalimschy
b0f2b288a6 new scheme for debug info about tail calls: no more 'fake' stack entries,
but stack entry knows whether it was tail called
2009-11-25 13:27:51 -02:00
Roberto Ierusalimschy
7fe405739c renaming: 'lua_upvaladdr' -> 'lua_upvalueid',
'lua_upvaljoin' -> 'lua_upvaluejoin'
2009-11-09 17:10:48 -02:00
Roberto Ierusalimschy
1ce819333d new option 'isrunning' for 'lua_gc' (and 'collectgarbage') 2009-11-09 16:55:17 -02:00
Roberto Ierusalimschy
b7d5f18d71 api functions to manipulate upvalues do not need to check their
arguments (the caller must check them before calling)
2009-11-05 15:26:00 -02:00
Roberto Ierusalimschy
5598b2bc55 new functions to identify and join upvalues 2009-11-05 14:48:31 -02:00
Roberto Ierusalimschy
916587508c parser keeps list of active local variables in a single dynamic array,
therefore saving C stack space
2009-10-11 17:02:19 -03:00
Roberto Ierusalimschy
a5382b763c new function lua_copy 2009-10-05 13:44:33 -03:00
Roberto Ierusalimschy
a650378822 'cpcall' reimplemented as a predefined value in the registry 2009-09-21 09:09:52 -03:00
Roberto Ierusalimschy
67cae2854c 'lua_mainthread' replaced by new preregistered value LUA_RIDX_MAINTHREAD 2009-09-17 15:04:21 -03:00
Roberto Ierusalimschy
0e45ffb8e4 first implementation of 'lua_yieldk' (yield with continuation) 2009-09-14 11:30:39 -03:00
Roberto Ierusalimschy
f76f4cb79d new way to control stack overflow, controling only total size of the stack 2009-07-15 14:26:14 -03:00
Roberto Ierusalimschy
1d6ebce296 new function 'lua_version' (so that 'checkversion' can be implemented
in the auxiliary library)
2009-06-18 15:59:18 -03:00
Roberto Ierusalimschy
6980cb1aa7 new functions 'lua_arith' and 'lua_compare' 2009-06-17 14:53:14 -03:00
Roberto Ierusalimschy
a21c89ddc8 new API function 'lua_mainthread' 2009-06-15 16:51:31 -03:00
Roberto Ierusalimschy
019ebcb85f errors in finalizers are propagated with code LUA_ERRGCMM (ERRor in
__gc MetaMethod)
2009-05-21 17:06:11 -03:00
Roberto Ierusalimschy
4f88418170 'CallInfo' stack implemented as double-linked list instead of an array 2009-04-17 11:28:06 -03:00
Roberto Ierusalimschy
70a63fa5ad first implementation of yieldable 'pcall' 2009-04-08 15:04:33 -03:00
Roberto Ierusalimschy
6d0ae11c57 'context' added to suspendable calls 2009-03-23 11:26:12 -03:00
Roberto Ierusalimschy
ba484b9eb1 yielding across lua_call (first version) 2009-03-10 14:14:37 -03:00
Roberto Ierusalimschy
d2ebdc045b new macro 'lua_checkversion' to check whether core and application are
compatible
2009-02-18 14:20:56 -03:00
Roberto Ierusalimschy
d69aa51088 added missing parentheses around function names 2008-08-13 11:08:49 -03:00
Roberto Ierusalimschy
4db2cddeee LUA_COMPAT -> LUA_COMPAT_API (more specific) 2008-07-18 16:58:10 -03:00
Roberto Ierusalimschy
6b8725b0ee new macro LUA_COMPAT to control some compatibility macros 2008-07-11 14:50:31 -03:00
Roberto Ierusalimschy
5fa55df2ca updated years in some comments/strings 2008-05-09 13:51:44 -03:00
Roberto Ierusalimschy
dd92af69db bug: pseudo-indices should be linked to maximum C stack size 2008-02-11 17:16:02 -02:00
Roberto Ierusalimschy
72c2f75648 detail (LUA_COPYRIGHT includes release number) 2007-08-07 13:53:40 -03:00
Roberto Ierusalimschy
619be354c8 lua_pushstring/pushlstring return string 2007-04-17 10:19:53 -03:00
Roberto Ierusalimschy
a7861d9d66 new year... 2007-02-07 15:54:52 -02:00
Roberto Ierusalimschy
c36e2265d9 detail (tab->space) 2006-11-30 09:25:40 -02:00
Roberto Ierusalimschy
3182ac69a7 towards 5.2 + detail in authors + avoiding reverse plicks 2006-10-17 16:59:04 -03:00
Roberto Ierusalimschy
afa0d0ac0d new constant LUA_OK 2006-10-10 14:40:17 -03:00
Roberto Ierusalimschy
d22526ec30 'lua_strlen' is for compatibility only 2006-09-18 11:03:18 -03:00
Roberto Ierusalimschy
a7c9e45c64 avoid trailing white spaces 2006-09-11 11:07:24 -03:00
Roberto Ierusalimschy
475b0ecbf1 new macro LUA_RELEASE 2006-06-02 12:34:00 -03:00
Roberto Ierusalimschy
414359b2f1 new version number 2006-05-31 13:50:40 -03:00
Roberto Ierusalimschy
fa936f8fa9 detail 2006-01-10 10:50:13 -02:00
Roberto Ierusalimschy
a486090a5c copyright will be 2006 2005-12-27 15:09:50 -02:00
Roberto Ierusalimschy
9f4211310f more precision for gc count 2005-10-20 09:35:50 -02:00
Roberto Ierusalimschy
d8f1cca16e new function 'lua_setallocf' 2005-09-20 14:55:10 -03:00
Roberto Ierusalimschy
3390f9a35a detail 2005-08-26 14:36:32 -03:00
Roberto Ierusalimschy
e4d369c9b7 comments 2005-08-12 10:34:15 -03:00
Roberto Ierusalimschy
62f786e08c new version (and new copyright)... 2005-08-09 14:57:54 -03:00
Roberto Ierusalimschy
d628795940 lua_objsize -> lua_objlen (more compatible with use of `len´ in other
places [opcode name, metamethod index, etc.])
2005-05-31 11:34:02 -03:00
Roberto Ierusalimschy
67578ec51f several small details 2005-05-17 16:49:15 -03:00
Roberto Ierusalimschy
da32450c3d new API function `lua_tolstring' 2005-05-16 16:21:11 -03:00
Roberto Ierusalimschy
1ab2b93462 debug information for last line of a function definition 2005-05-05 17:47:02 -03:00
Roberto Ierusalimschy
ade585bdf9 no more LUA_FIRSTINDEX 2005-03-28 14:17:53 -03:00
Roberto Ierusalimschy
03fb3c39d4 change #ifdef' for #if defined' 2005-03-23 14:51:11 -03:00
Roberto Ierusalimschy
390256edf7 better name for GC pause 2005-03-22 13:04:29 -03:00
Roberto Ierusalimschy
7d45a5f48f C functions and userdata also have environments 2005-02-18 10:40:02 -02:00
Roberto Ierusalimschy
ac71a0891d detail 2005-01-17 21:50:55 -02:00
Roberto Ierusalimschy
5be517602e no more generational collector (and no more `noinc' mode) 2005-01-14 12:19:42 -02:00
Roberto Ierusalimschy
6eb68ba57a all function declarations surround name with parentheses 2005-01-10 15:31:50 -02:00
Roberto Ierusalimschy
071b2ae0e1 details 2005-01-07 17:53:32 -02:00
Roberto Ierusalimschy
c6254dceff a different option for the GC 2004-12-13 10:15:11 -02:00
Roberto Ierusalimschy
39a8082f50 more options for controling the GC 2004-12-06 15:53:42 -02:00
Roberto Ierusalimschy
23b38176a7 `LUA_FIRSTINDEX' should not be configurable 2004-12-01 13:50:18 -02:00
Roberto Ierusalimschy
e5cfa7a367 use of parentheses around macro parameters in call lists, to avoid
problems with comma expressions
2004-10-18 09:51:44 -03:00
Roberto Ierusalimschy
2419f2bf02 cleaner API for coroutines 2004-09-15 17:39:42 -03:00
Roberto Ierusalimschy
345379b5ff option for garbage-collector `step' 2004-06-04 12:30:53 -03:00
Roberto Ierusalimschy
f4718544de what is provided by lauxlib.c should be defined at lauxlib.h 2004-06-02 14:37:03 -03:00
Roberto Ierusalimschy
0dfd04eb60 lua_strlen' upgraded to lua_objsize' (which also works with userdata) 2004-05-31 16:41:52 -03:00
Roberto Ierusalimschy
b4cd38ba6c new scheme for configuration through `luaconf.h' 2004-04-30 17:13:38 -03:00
Roberto Ierusalimschy
227bddafe8 new copyright year 2004-03-24 10:55:46 -03:00
Roberto Ierusalimschy
b876ec61c0 new (temporary?) API for garbage collector 2004-03-09 14:34:35 -03:00
Roberto Ierusalimschy
4d5fe1f54b detail 2003-12-10 09:04:54 -02:00
Roberto Ierusalimschy
fa198197a0 lua_(set)getglobal are ok to use 2003-11-05 09:59:14 -02:00
Roberto Ierusalimschy
d6d896b953 lua_set(get)global may use lua_set(get)field 2003-10-21 08:58:58 -02:00
Roberto Ierusalimschy
03bab90303 new function `lua_getallocf' to retrieve allocation function and data 2003-10-20 10:25:23 -02:00
Roberto Ierusalimschy
10de467c79 new function `lua_createtable' 2003-10-10 10:29:28 -03:00
Roberto Ierusalimschy
533737f26e new functions lua_getfield' and lua_setfield' 2003-10-10 09:57:55 -03:00
Roberto Ierusalimschy
f04fe526cd new functions `lua_tointeger' and lua_pushinteger' 2003-10-07 17:13:41 -03:00
Roberto Ierusalimschy
b97fb932ec Lua kernel does not use malloc/free functions. 2003-10-02 17:31:17 -03:00
Roberto Ierusalimschy
17f695157c define a `lua_isthread' for completeness 2003-07-07 10:30:57 -03:00
Roberto Ierusalimschy
859c7f7ce0 LUA_SIGNATURE is public 2003-05-15 09:20:04 -03:00
Roberto Ierusalimschy
dae99205cf no more compatibility code 2003-05-14 18:06:56 -03:00
Roberto Ierusalimschy
81cdbabf09 detail (change place of a prototype) 2003-03-18 09:31:39 -03:00
Roberto Ierusalimschy
92f6e0c1bf no-nonsense debug information about tail calls 2003-02-27 08:52:30 -03:00
Roberto Ierusalimschy
5cd99b82b7 set/getenvtable' -> set/getfenv' 2003-02-24 13:54:20 -03:00
Roberto Ierusalimschy
9866fb0ef1 set/getglobals' -> set/getenvtable' 2003-02-18 13:13:15 -03:00
Roberto Ierusalimschy
dce9a49a08 final version 2003-02-18 13:01:57 -03:00
Roberto Ierusalimschy
dd8edecae1 new functions to manipulate upvales (get/setupvalue) 2002-12-19 09:11:55 -02:00
Roberto Ierusalimschy
0bb8eb5151 new function `lua_cpcall' 2002-12-04 15:29:32 -02:00
Roberto Ierusalimschy
1f55dbc699 details 2002-11-26 10:53:29 -02:00
Roberto Ierusalimschy
5a228bb1d8 new function `lua_version' 2002-11-25 15:50:14 -02:00
Roberto Ierusalimschy
5f698f8b6f simpler interface to hooks + use of `int' to count hooks 2002-11-25 15:47:13 -02:00
Roberto Ierusalimschy
43013b39cc new representation for hooks (to allow asynchronous calls to sethook) 2002-11-18 09:01:55 -02:00
Roberto Ierusalimschy
5c5d9b2703 back to `__mode' metafield to specify weakness 2002-11-14 10:01:35 -02:00
Roberto Ierusalimschy
63633c5b5f better name for `lua_movethread' 2002-11-07 13:39:23 -02:00
Roberto Ierusalimschy
118347d8c3 new API for coroutines 2002-11-06 17:08:00 -02:00
Roberto Ierusalimschy
118e9cd843 new facility for dumping chunks 2002-10-25 18:31:28 -03:00
Roberto Ierusalimschy
96e15b8501 threads now are real Lua objects, subject to garbage collection 2002-10-25 17:05:28 -03:00
Roberto Ierusalimschy
6a77a6b73f avoid too much precision when printing numbers 2002-10-22 14:21:25 -03:00
Roberto Ierusalimschy
84e0b1bc97 small changes in type configuration facilities 2002-10-22 14:18:28 -03:00
Roberto Ierusalimschy
7c0ccdfd61 avoid the use of "enum" in the API, as they do not have a fixed representation 2002-09-02 17:00:41 -03:00
Roberto Ierusalimschy
2c670baf24 avoid the use of "obvious" names in header files to avoid conflicts 2002-08-30 17:00:59 -03:00
Roberto Ierusalimschy
fdafd4f4a8 new structure for collectable objects, sharing a common header 2002-08-30 16:09:21 -03:00
Roberto Ierusalimschy
8e4ac679ff use a linear count for count hook 2002-08-12 14:23:12 -03:00
Roberto Ierusalimschy
4664f2e927 any Lua closure has a table of globals (not only active functions) 2002-08-06 15:54:18 -03:00
Roberto Ierusalimschy
2e38c6ae5a luadebug.h' content now is included in lua.h' 2002-08-06 15:01:50 -03:00
Roberto Ierusalimschy
d3dd337fca lua_Chunkreader gets a lua_State, to avoid future incompatibilities 2002-08-06 14:26:45 -03:00
Roberto Ierusalimschy
634344d61f new API for weak mode 2002-08-06 14:06:56 -03:00
Roberto Ierusalimschy
a2fa48a570 new (old?) error handling scheme 2002-08-06 12:32:22 -03:00
Roberto Ierusalimschy
4a4f243795 new API for error handling 2002-08-05 11:51:47 -03:00
Roberto Ierusalimschy
79c8edb6c4 new names for light userdata operations 2002-07-17 13:25:13 -03:00
Roberto Ierusalimschy
d88860131a new macro `lua_isudataval' (for completude) 2002-07-09 11:58:28 -03:00
Roberto Ierusalimschy
68ee518e81 only tables need `lua_number2int' 2002-07-01 16:31:10 -03:00
Roberto Ierusalimschy
f67ccfbdeb no more `lua_getn' function 2002-06-26 16:28:44 -03:00
Roberto Ierusalimschy
78c507b7b8 lua_upcall' -> lua_call' 2002-06-25 16:18:49 -03:00
Roberto Ierusalimschy
3941af53ad first implementation of independent global table per function 2002-06-20 17:41:46 -03:00
Roberto Ierusalimschy
1dbe708aa8 new protocol for error handling 2002-06-18 12:19:27 -03:00
Roberto Ierusalimschy
eb3de8768a rawcall' -> upcall' (unprotected call) 2002-06-13 10:44:50 -03:00
Roberto Ierusalimschy
864c96f36c new fallback for equality `__eq' 2002-06-13 10:39:55 -03:00