Roberto Ierusalimschy
|
817f8674af
|
avoid warning about -unsigned value
|
2011-06-16 11:14:31 -03:00 |
Roberto Ierusalimschy
|
f62565abea
|
avoid warnings with -Wstrict-overflow
|
2011-06-09 15:24:22 -03:00 |
Roberto Ierusalimschy
|
3b44821334
|
stricter control (using tag variants) over closure kinds (Lua x C)
|
2011-06-02 16:31:40 -03:00 |
Roberto Ierusalimschy
|
821bd7025e
|
more uniform names for 'equalobj'-related functions
|
2011-05-31 15:27:56 -03:00 |
Roberto Ierusalimschy
|
9b7dddad7d
|
no need for two different implementations for equality (one raw and
one with metamethods)
|
2011-05-31 15:24:36 -03:00 |
Roberto Ierusalimschy
|
c9ce754e38
|
comment
|
2011-05-02 14:33:01 -03:00 |
Roberto Ierusalimschy
|
1ffdd0bc7a
|
detail (should use macro 'ttisdeadkey')
|
2011-04-05 15:32:28 -03:00 |
Roberto Ierusalimschy
|
23b9ceb0a4
|
allows larger array parts in tables (no need to restrict it to 2^26)
|
2010-11-11 13:38:43 -02:00 |
Roberto Ierusalimschy
|
d9ea6eca7c
|
macro 'key2tal' replaced by 'gkey' (as both were equal)
|
2010-06-25 09:18:10 -03:00 |
Roberto Ierusalimschy
|
3819c30e55
|
better names for barrier macros
|
2010-06-04 10:05:29 -03:00 |
Roberto Ierusalimschy
|
53f9499f7f
|
"light C function" is a better name than "C-function pointer"
|
2010-04-18 10:22:48 -03:00 |
Roberto Ierusalimschy
|
7dfa4cd655
|
first implementation of light C functions
|
2010-04-14 12:13:48 -03:00 |
Roberto Ierusalimschy
|
d394d5536a
|
new macro 'eqstr'
|
2010-04-05 13:26:37 -03:00 |
Roberto Ierusalimschy
|
0bbdddc86b
|
allocator function receives the tag of object being allocated in 'osize'
when 'ptr' is NULL.
|
2009-12-17 13:46:44 -02:00 |
Roberto Ierusalimschy
|
3c4d970a7b
|
comment typos
|
2009-11-26 09:39:20 -02:00 |
Roberto Ierusalimschy
|
2e5ef6a9fb
|
new macro 'isdummy'
|
2009-11-19 15:54:07 -02:00 |
Roberto Ierusalimschy
|
49a67c6d3f
|
new macro 'NILCONSTANT' to initialize nil constants
|
2009-11-06 15:07:12 -02:00 |
Roberto Ierusalimschy
|
9756f56354
|
better control over accesses to TValue fields
|
2009-11-05 15:43:54 -02:00 |
Roberto Ierusalimschy
|
f6ed285cf2
|
new hash for doubles based on frexp, to avoid low-level tricks
|
2009-10-23 10:31:12 -02:00 |
Roberto Ierusalimschy
|
42167804b8
|
luaH_[gs]etnum renamed to luaH_[gs]etint (as they only accept integers,
not generic numbers).
|
2009-08-07 14:53:28 -03:00 |
Roberto Ierusalimschy
|
c6b442bd36
|
'luaM_freearray' does not need array type as argument
|
2009-04-17 11:40:13 -03:00 |
Roberto Ierusalimschy
|
a274596ecc
|
avoid making 'lastfree' an invalid pointer
|
2009-03-30 15:38:24 -03:00 |
Roberto Ierusalimschy
|
a76fa25199
|
'ceillog2' now is exported (other modules may need it)
|
2008-01-30 16:05:23 -02:00 |
Roberto Ierusalimschy
|
ae00b3a76f
|
another way to normalize -0 that avoids problems with very small
numbers (adding 1 turns them all into 1)
|
2007-04-18 16:24:35 -03:00 |
Roberto Ierusalimschy
|
94d40f3980
|
luaO_log2 can be private to ltable.c
|
2007-04-10 09:18:17 -03:00 |
Roberto Ierusalimschy
|
a7c9e45c64
|
avoid trailing white spaces
|
2006-09-11 11:07:24 -03:00 |
Roberto Ierusalimschy
|
dfe2f1eeff
|
macros luai_num* take a state L (when available) as argument, to allow
them to generate errors (and other facilities)
|
2006-08-07 16:14:30 -03:00 |
Roberto Ierusalimschy
|
3ca9af51a4
|
emergency garbage collector (core forces a GC when allocation fails)
|
2006-07-11 12:53:29 -03:00 |
Roberto Ierusalimschy
|
baffc37f5c
|
detail
|
2006-01-18 09:49:12 -02:00 |
Roberto Ierusalimschy
|
f8b7a5581e
|
avoid unnecessary exports
|
2006-01-10 11:13:06 -02:00 |
Roberto Ierusalimschy
|
ffb798e1e2
|
avoids type punning for table keys
|
2006-01-10 10:51:53 -02:00 |
Roberto Ierusalimschy
|
c505f341d6
|
small changes in casts
|
2005-12-22 14:19:56 -02:00 |
Roberto Ierusalimschy
|
db724e14e0
|
new macro luai_numisnan
|
2005-11-25 11:29:32 -02:00 |
Roberto Ierusalimschy
|
8e48ebb638
|
no more L in numer-operator macros (some functions that use those macros
have no access to L)
|
2005-10-24 15:37:52 -02:00 |
Roberto Ierusalimschy
|
0f30d00c87
|
warnings from Visual C
|
2005-07-11 11:01:37 -03:00 |
Roberto Ierusalimschy
|
90de38bf1f
|
warnings in VS .Net
|
2005-05-31 11:25:18 -03:00 |
Roberto Ierusalimschy
|
f21e9c172f
|
details
|
2005-05-20 12:53:42 -03:00 |
Roberto Ierusalimschy
|
67578ec51f
|
several small details
|
2005-05-17 16:49:15 -03:00 |
Roberto Ierusalimschy
|
c2bb9abcec
|
better quotes for strings in error messages
|
2005-05-16 18:19:00 -03:00 |
Roberto Ierusalimschy
|
d5fd44d747
|
corrected definition of lua_number2int for Windows
|
2005-05-03 16:30:17 -03:00 |
Roberto Ierusalimschy
|
409ee99900
|
detail
|
2005-04-01 10:51:37 -03:00 |
Roberto Ierusalimschy
|
9ffae705ee
|
new "primitive" getn
|
2005-03-16 13:58:41 -03:00 |
Roberto Ierusalimschy
|
370d31a559
|
`luac´ -> `luai' (to avoid confusion with other luac stuff)
|
2005-03-09 13:28:07 -03:00 |
Roberto Ierusalimschy
|
f8df21bd20
|
`luaconf.h´ exports all its definitions always (so all of them
must have a lua/LUA prefix).
|
2005-03-08 17:10:05 -03:00 |
Roberto Ierusalimschy
|
b5b230d95c
|
fewer #include's in luaconf.h
|
2005-03-08 15:09:16 -03:00 |
Roberto Ierusalimschy
|
8ddfe3df29
|
macros for all arithmetic operations over lua_Numbers
|
2005-01-10 16:17:39 -02:00 |
Roberto Ierusalimschy
|
e2498e079e
|
change in hash algorithm so that it does not need empty slot
(tables can be 100% full)
|
2005-01-05 16:20:51 -02:00 |
Roberto Ierusalimschy
|
65726f3e2e
|
cleaner interface to `ltable'
|
2005-01-04 13:55:12 -02:00 |
Roberto Ierusalimschy
|
531874f6ce
|
better (correct?) way to handle `next' over removed keys
|
2004-12-04 16:10:22 -02:00 |
Roberto Ierusalimschy
|
c78940f21a
|
static names do not need `luaX_' prefix
|
2004-12-03 18:50:25 -02:00 |
Roberto Ierusalimschy
|
0e002005b1
|
better names for `luaM_free...' macros
|
2004-11-24 17:20:21 -02:00 |
Roberto Ierusalimschy
|
1d99a7360b
|
details
|
2004-11-24 17:16:03 -02:00 |
Roberto Ierusalimschy
|
087df82a61
|
detail
|
2004-11-24 16:55:42 -02:00 |
Roberto Ierusalimschy
|
bd38017ddf
|
small optimization for table size in machines with double allignment
|
2004-10-06 15:34:16 -03:00 |
Roberto Ierusalimschy
|
66845f415f
|
small optimizations
|
2004-09-27 15:54:45 -03:00 |
Roberto Ierusalimschy
|
1dd8c9b6b6
|
detail
|
2004-08-31 14:57:33 -03:00 |
Roberto Ierusalimschy
|
26ae992129
|
less conservative write barrier for tables
|
2004-08-10 16:17:23 -03:00 |
Roberto Ierusalimschy
|
b4cd38ba6c
|
new scheme for configuration through `luaconf.h'
|
2004-04-30 17:13:38 -03:00 |
Roberto Ierusalimschy
|
4c5d7b2ddd
|
small optimization for {f()}
|
2004-03-26 11:02:41 -03:00 |
Roberto Ierusalimschy
|
47fc57a252
|
`TObject' renamed to `TValue' + other name changes and better assertions
for incremental garbage collection
|
2003-12-10 10:13:36 -02:00 |
Roberto Ierusalimschy
|
df429f163a
|
First version of incremental GC
|
2003-12-09 14:56:11 -02:00 |
Roberto Ierusalimschy
|
af850484a9
|
default metatable can be NULL
|
2003-12-01 16:22:56 -02:00 |
Roberto Ierusalimschy
|
8b97b072cd
|
details
|
2003-11-27 16:05:14 -02:00 |
Roberto Ierusalimschy
|
b114142799
|
new auxiliary function `luaH_setstr'
|
2003-08-26 09:04:13 -03:00 |
Roberto Ierusalimschy
|
572a69df78
|
Lua does not need all those different types...
|
2003-04-28 16:26:16 -03:00 |
Roberto Ierusalimschy
|
943c82b376
|
avoid unnecessary call to log2 on too large indices
|
2003-04-28 10:31:46 -03:00 |
Roberto Ierusalimschy
|
0d88545b82
|
warnings from several compilers (mainly typecasts when lua_Number is float)
|
2003-04-03 10:35:34 -03:00 |
Roberto Ierusalimschy
|
b858161fbc
|
new hash method for lua_Number (double) (due to a performance problem)
|
2003-03-24 11:18:42 -03:00 |
Roberto Ierusalimschy
|
5bb5a1831d
|
details
|
2003-03-20 17:26:33 -03:00 |
Roberto Ierusalimschy
|
ab9e062928
|
name changes to avoid name collision between macros and variables
|
2003-03-18 09:50:04 -03:00 |
Roberto Ierusalimschy
|
67f9a2a98f
|
details
|
2003-02-20 17:12:39 -03:00 |
Roberto Ierusalimschy
|
d6826dbc80
|
simpler way to count uses
|
2003-02-13 14:08:32 -02:00 |
Roberto Ierusalimschy
|
27c6b4d422
|
each .c file defines its own name
|
2002-12-04 15:38:31 -02:00 |
Roberto Ierusalimschy
|
24471525d7
|
details
|
2002-12-02 10:06:10 -02:00 |
Roberto Ierusalimschy
|
e47baca75a
|
warnings from Visual C++
|
2002-11-25 10:38:47 -02:00 |
Roberto Ierusalimschy
|
41fd639cab
|
documentation for write barriers
|
2002-11-14 14:15:53 -02:00 |
Roberto Ierusalimschy
|
5c5d9b2703
|
back to `__mode' metafield to specify weakness
|
2002-11-14 10:01:35 -02:00 |
Roberto Ierusalimschy
|
2f91f95d94
|
better control over GCObjects
|
2002-11-13 09:32:26 -02:00 |
Roberto Ierusalimschy
|
dff9be4224
|
new macros to distinguish different types of object moves (for future GC
evolution).
|
2002-11-07 13:37:10 -02:00 |
Roberto Ierusalimschy
|
4964e7c8a0
|
details
|
2002-09-02 16:54:49 -03:00 |
Roberto Ierusalimschy
|
fdafd4f4a8
|
new structure for collectable objects, sharing a common header
|
2002-08-30 16:09:21 -03:00 |
Roberto Ierusalimschy
|
da19c436cc
|
cleaning the stage for generational collection
|
2002-08-16 11:45:55 -03:00 |
Roberto Ierusalimschy
|
634344d61f
|
new API for weak mode
|
2002-08-06 14:06:56 -03:00 |
Roberto Ierusalimschy
|
5037196f6f
|
new macros `ttis*'
|
2002-08-05 11:50:39 -03:00 |
Roberto Ierusalimschy
|
79c8edb6c4
|
new names for light userdata operations
|
2002-07-17 13:25:13 -03:00 |
Roberto Ierusalimschy
|
84ad1eea81
|
use of NaN as key breaks some invariants
|
2002-07-02 14:54:23 -03:00 |
Roberto Ierusalimschy
|
68ee518e81
|
only tables need `lua_number2int'
|
2002-07-01 16:31:10 -03:00 |
Roberto Ierusalimschy
|
fdfd5b44ee
|
TM_GETTABLE/TM_SETTABLE don't need fast access anymore
|
2002-06-24 17:18:38 -03:00 |
Roberto Ierusalimschy
|
864c96f36c
|
new fallback for equality `__eq'
|
2002-06-13 10:39:55 -03:00 |
Roberto Ierusalimschy
|
46c471d7e9
|
new `__newindex' eventfield
|
2002-05-27 17:35:40 -03:00 |
Roberto Ierusalimschy
|
b7a0503c1d
|
new format for error messages
|
2002-05-15 15:57:44 -03:00 |
Roberto Ierusalimschy
|
58bf77bc7f
|
no more extra space when growing hash
|
2002-05-13 10:38:59 -03:00 |
Roberto Ierusalimschy
|
a4d06736d4
|
correct implementation for arrays of size 1
|
2002-05-08 14:34:00 -03:00 |
Roberto Ierusalimschy
|
383e8b9e77
|
use of a common `dummynode' for all empty tables
|
2002-04-23 12:04:39 -03:00 |
Roberto Ierusalimschy
|
f388ee4a82
|
new way to handle errors
|
2002-04-22 11:40:23 -03:00 |
Roberto Ierusalimschy
|
237969724f
|
support for `light' userdata + simpler support for `boxed' udata
|
2002-04-05 15:54:31 -03:00 |
Roberto Ierusalimschy
|
0b00e7f1a2
|
new macro to convert double->int
|
2002-03-18 15:18:35 -03:00 |
Roberto Ierusalimschy
|
bee86e23be
|
`luaH_next' works like `next' + better hash for pointers
|
2002-02-14 19:41:08 -02:00 |
Roberto Ierusalimschy
|
d5ceb369b1
|
boolean type must be 0 or 1
|
2002-02-07 15:26:10 -02:00 |
Roberto Ierusalimschy
|
d6fd33e76f
|
`eventtable' renamed to `metatable'
|
2002-01-30 15:26:44 -02:00 |
Roberto Ierusalimschy
|
eb262bc617
|
2^15 does not fit in a 16-bit int
|
2002-01-25 19:51:33 -02:00 |
Roberto Ierusalimschy
|
566310fa04
|
small optimization
|
2002-01-16 20:02:46 -02:00 |
Roberto Ierusalimschy
|
b3bb0f132b
|
new interface for weak modes
|
2002-01-09 19:50:35 -02:00 |
Roberto Ierusalimschy
|
f42cc90d2d
|
some warnings
|
2001-12-21 15:31:35 -02:00 |
Roberto Ierusalimschy
|
22dd271cbb
|
another bug in next (when n is a power of 2)
|
2001-12-19 16:11:00 -02:00 |
Roberto Ierusalimschy
|
9aff171f3b
|
new type `boolean'
|
2001-12-11 20:48:44 -02:00 |
Roberto Ierusalimschy
|
9d801f43d4
|
details
|
2001-12-10 20:12:08 -02:00 |
Roberto Ierusalimschy
|
592a309177
|
tag system replaced by event tables
|
2001-12-05 18:15:18 -02:00 |
Roberto Ierusalimschy
|
fca0a12e23
|
avoid clashing names between macros and fields
|
2001-11-29 18:21:46 -02:00 |
Roberto Ierusalimschy
|
72659a0605
|
no more explicit support for wide-chars; too much troble...
|
2001-11-28 18:13:13 -02:00 |
Roberto Ierusalimschy
|
657f65211a
|
bug: `next' did not work for numeric indices
|
2001-11-16 14:29:51 -02:00 |
Roberto Ierusalimschy
|
21aa7e55f2
|
optimization for array part of a Table
|
2001-10-25 17:14:14 -02:00 |
Roberto Ierusalimschy
|
4d0935ec0f
|
better definition for `luaM_freelem'
|
2001-09-07 14:30:16 -03:00 |
Roberto Ierusalimschy
|
e1d072571e
|
better syntax for type casts
|
2001-08-31 16:46:07 -03:00 |
Roberto Ierusalimschy
|
8c8ad5f3ff
|
better locality of assignment of table values
|
2001-08-30 17:56:43 -03:00 |
Roberto Ierusalimschy
|
654b16e83a
|
better performance for table operations (mainly for integer indices)
|
2001-07-05 17:31:14 -03:00 |
Roberto Ierusalimschy
|
37f3a1c045
|
too much optimization to "break" keys in tables; keep them as TObjects...
|
2001-06-26 10:20:45 -03:00 |
Roberto Ierusalimschy
|
8e586c13fc
|
cleaner way to ensure alignment for strings and userdata
|
2001-06-15 17:36:57 -03:00 |
Roberto Ierusalimschy
|
d5b83ead90
|
new implementation for userdatas, without `keys'
|
2001-06-06 15:00:19 -03:00 |
Roberto Ierusalimschy
|
0e0e4a480e
|
first implementation for weak tables
|
2001-04-11 11:42:41 -03:00 |
Roberto Ierusalimschy
|
dd3a63c205
|
new way to handle `profiles'
|
2001-03-26 11:31:49 -03:00 |
Roberto Ierusalimschy
|
39b7978329
|
first (big) step to support wide chars
|
2001-02-23 14:17:25 -03:00 |
Roberto Ierusalimschy
|
099442c41f
|
better separation between basic types
|
2001-02-20 15:15:33 -03:00 |
Roberto Ierusalimschy
|
e506b864cd
|
no need for tags in boxed values :-(
|
2001-02-01 15:40:48 -02:00 |
Roberto Ierusalimschy
|
44a53df688
|
better to avoid dirty tricks
|
2001-01-30 17:48:37 -02:00 |
Roberto Ierusalimschy
|
63a822c8e1
|
all boxed types start with their tags
|
2001-01-29 17:34:02 -02:00 |
Roberto Ierusalimschy
|
6b71a9cfe5
|
smaller tables for machines with 8-bit alignment
|
2001-01-29 15:17:26 -02:00 |
Roberto Ierusalimschy
|
caf01b5bfa
|
better implementation for list "for"
|
2001-01-29 11:14:49 -02:00 |
Roberto Ierusalimschy
|
b82242d4c4
|
detail
|
2001-01-26 13:58:50 -02:00 |
Roberto Ierusalimschy
|
ac390020e9
|
optimizations based on all types but number and nil are pointers
|
2001-01-26 12:16:35 -02:00 |
Roberto Ierusalimschy
|
7959f3aebb
|
easier way to erase 'dead' keys
|
2001-01-26 11:18:00 -02:00 |
Roberto Ierusalimschy
|
a53d9b66ca
|
first implementation for type names
|
2001-01-25 14:45:36 -02:00 |
Roberto Ierusalimschy
|
71ae4801d6
|
macros LUA_ENTRY/LUA_EXIT to control exclusive access to Lua core
|
2001-01-24 13:45:33 -02:00 |
Roberto Ierusalimschy
|
4ac58853dc
|
thead-specific state separated from "global" state
|
2001-01-19 11:20:30 -02:00 |
Roberto Ierusalimschy
|
f2c451d745
|
all accesses to TObjects done through macros
|
2001-01-18 13:59:09 -02:00 |
Roberto Ierusalimschy
|
dabb19fc17
|
specialized versions for luaH_set (numbers and strings)
|
2001-01-10 16:56:11 -02:00 |
Roberto Ierusalimschy
|
0183b8030c
|
`free' gets size of the block: complete control over memory use
|
2000-12-28 10:55:41 -02:00 |
Roberto Ierusalimschy
|
0066bbbb0b
|
details
|
2000-12-22 14:57:46 -02:00 |
Roberto Ierusalimschy
|
4894c27962
|
lua_Number defined in lua.h (1st version)
|
2000-12-04 16:33:40 -02:00 |
Roberto Ierusalimschy
|
96253ed8ce
|
better support for 64-bit machines (avoid excessive use of longs)
|
2000-11-24 15:39:56 -02:00 |
Roberto Ierusalimschy
|
b892f0a877
|
new API function `createuserdata'
|
2000-10-26 10:47:05 -02:00 |
Roberto Ierusalimschy
|
001f2bdd0e
|
new definition for types-tags
|
2000-10-05 09:14:08 -03:00 |
Roberto Ierusalimschy
|
dad808a73a
|
new way to count `nblocks' for GC (try to count bytes).
|
2000-09-29 09:42:13 -03:00 |
Roberto Ierusalimschy
|
8060193702
|
`lauxlib' is now part of the libraries (not used by core Lua)
|
2000-09-11 17:29:27 -03:00 |
Roberto Ierusalimschy
|
100bfec39a
|
new implementation for `next'
|
2000-08-31 11:08:27 -03:00 |
Roberto Ierusalimschy
|
e238efc536
|
default now is multi-state
|
2000-08-09 16:16:57 -03:00 |
Roberto Ierusalimschy
|
d9e61e8cea
|
new algorithm for traversing in GC to avoid deep recursion calls
|
2000-08-07 17:21:34 -03:00 |
Roberto Ierusalimschy
|
435f587ed0
|
(much) better handling of memory alloction errors
|
2000-08-04 16:38:35 -03:00 |
Roberto Ierusalimschy
|
cfba572076
|
remove dummy argument in LUA_ASSERT
|
2000-06-30 11:35:17 -03:00 |
Roberto Ierusalimschy
|
5362426ffa
|
error message
|
2000-06-28 14:03:56 -03:00 |