Roberto Ierusalimschy
|
c86b9da022
|
userdata can have any Lua value as uservalue
|
11 years ago |
Roberto Ierusalimschy
|
4ea60463f5
|
UTF-8 encoding exported as format '%U' in 'lua_pushfstring'
|
11 years ago |
Roberto Ierusalimschy
|
cac1ebd1e0
|
detail ('ttisuserdata' renamed to 'ttisfulluserdata')
|
11 years ago |
Roberto Ierusalimschy
|
d3bbb34c24
|
back to open hashing for the string table (but with a different
'hnext' field, to strings are still collected like all other
objects)
|
11 years ago |
Roberto Ierusalimschy
|
af35c7f398
|
upvalues collected by reference count
|
11 years ago |
Roberto Ierusalimschy
|
caceeab750
|
'next' field for tables changed from pointer to integer (for better
alignment on 64-bit machines)
|
11 years ago |
Roberto Ierusalimschy
|
623e388bb4
|
double-linked list of all upvalues elliminated and changed to a
traversal of all non-marked threads
|
11 years ago |
Roberto Ierusalimschy
|
36e8771076
|
'luaO_str2int' more generic: accepts white spaces around the numeral
and handles signal
|
12 years ago |
Roberto Ierusalimschy
|
fa6ea831b3
|
macro 'nvalue' removed (direct conversion from integer to double,
without an intermediate variable, can cause "excessive precision"
|
12 years ago |
Roberto Ierusalimschy
|
67532d5a10
|
constant folding and API arithmetic with integers
|
12 years ago |
Roberto Ierusalimschy
|
00744a2729
|
'luaO_arith' -> 'luaO_numarith'
|
12 years ago |
Roberto Ierusalimschy
|
1294b09d8e
|
first implementation of literal integers (no constant folding yet)
|
12 years ago |
Roberto Ierusalimschy
|
07f861385e
|
first steps in the support of integers: basic representation + table indexing + basic API ops (tointeger/pushinteger) + equality + a few extra stuff
|
12 years ago |
Roberto Ierusalimschy
|
8f8665fffa
|
'ttypenv' -> 'ttnov'
|
12 years ago |
Roberto Ierusalimschy
|
cf160abcf9
|
no more macro 'changenvalue'
|
12 years ago |
Roberto Ierusalimschy
|
77cbd817d1
|
better(?) handling of '#define's for IEEE-related tricks + avoid using
IEEE trick for 64-bit integer types (lua_Integer on 64-bit machines)
|
13 years ago |
Roberto Ierusalimschy
|
3cadc37f47
|
no more 'Proto' objects on the stack. Protos are anchored on outer
Protos or on a Closure, which must be created before the Proto.
|
13 years ago |
Roberto Ierusalimschy
|
a4b96ce9a3
|
first implementation of long strings
|
13 years ago |
Roberto Ierusalimschy
|
291f564485
|
field 'reserved' -> 'extra' (may be used for other purposes too)
|
13 years ago |
Roberto Ierusalimschy
|
28f8ed9113
|
new macro 'checktype'
|
13 years ago |
Roberto Ierusalimschy
|
fd22ccd6d0
|
object tag keeps variant bits too -> no need for 'isC' field in
Closures + more strick typing for closure variants
|
13 years ago |
Roberto Ierusalimschy
|
87cf2bf711
|
extra comments about what fields are optional debug information
|
13 years ago |
Roberto Ierusalimschy
|
1350a2bcb5
|
more macros to try to make NaN trick work with other sizes of
IEEE float numbers. (It has not been tested with such different
sizes...)
|
13 years ago |
Roberto Ierusalimschy
|
87912786af
|
dead objects are not collectable.
|
13 years ago |
Roberto Ierusalimschy
|
9e89a55a4f
|
NILCONSTANT also depends no endianess (with NaN trick)
|
14 years ago |
Roberto Ierusalimschy
|
fd80e63468
|
configuration for NaN trick big-endian + macro 'luai_checknum' to
ensure numbers comming from C are not "improper" (some kinds of
signaling NaNs)
|
14 years ago |
Roberto Ierusalimschy
|
35391d9b1a
|
macro 'NNMARK' (mark for non-number values using the NaN trick)
|
14 years ago |
Roberto Ierusalimschy
|
99b1b8e918
|
first version with 'NANTRICK' (packing all Lua values inside a 'double')
|
14 years ago |
Roberto Ierusalimschy
|
3b44821334
|
stricter control (using tag variants) over closure kinds (Lua x C)
|
14 years ago |
Roberto Ierusalimschy
|
0214dab989
|
yet another macro ('num_')
|
14 years ago |
Roberto Ierusalimschy
|
9b7dddad7d
|
no need for two different implementations for equality (one raw and
one with metamethods)
|
14 years ago |
Roberto Ierusalimschy
|
2a59a999d4
|
yet another macro abstracting TValue representation
|
14 years ago |
Roberto Ierusalimschy
|
3cf1729a02
|
new macro 'lua_longassert' that is equivalent to an assertion without
a stringfication of the condition, to avoid too long string literals
(limited by C90 to ~510 characters)
|
14 years ago |
Roberto Ierusalimschy
|
25b4e35ee8
|
new macros abstracting TValue representation (to easy change to
other representations)
|
14 years ago |
Roberto Ierusalimschy
|
7e1facaa4e
|
detail in assertion
|
14 years ago |
Roberto Ierusalimschy
|
ad2531a0ee
|
more complete (and hopefuly more correct) handling of 'sizeof(char)'
|
14 years ago |
Roberto Ierusalimschy
|
a958b711f5
|
cleaner scheme of bits for variant types (light C functions) and
collectable types
|
14 years ago |
Roberto Ierusalimschy
|
83abbac946
|
all names used internally by macros end with '_'
|
14 years ago |
Roberto Ierusalimschy
|
98816d0ce5
|
small problems with 'luaone.c'
|
14 years ago |
Roberto Ierusalimschy
|
b63b0928cf
|
prototype for 'luaO_ceillog2' was different from definition
|
14 years ago |
Roberto Ierusalimschy
|
1aead7f553
|
'hexafloat' moved to 'lobject.c' (hexa conversion needs it too)
|
14 years ago |
Roberto Ierusalimschy
|
ccc4fc9cf0
|
detection of erroneous numeric strings with \0 (such as "1\0")
|
14 years ago |
Roberto Ierusalimschy
|
9b7a12c46d
|
finalizers (__gc) for tables
|
14 years ago |
Roberto Ierusalimschy
|
78f9635111
|
several new comments
|
14 years ago |
Roberto Ierusalimschy
|
575074fd85
|
Lua closures are cached for reuse
|
15 years ago |
Roberto Ierusalimschy
|
0bccf03d7e
|
slightly better definition for 'changenvalue'
|
15 years ago |
Roberto Ierusalimschy
|
53f9499f7f
|
"light C function" is a better name than "C-function pointer"
|
15 years ago |
Roberto Ierusalimschy
|
7dfa4cd655
|
first implementation of light C functions
|
15 years ago |
Roberto Ierusalimschy
|
d20ff60615
|
new macro LUA_NUMTAGS
|
15 years ago |
Roberto Ierusalimschy
|
064e406f67
|
no more fenvs!
|
15 years ago |