aboutsummaryrefslogtreecommitdiff
path: root/lstring.h (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Scanner doesn't need to anchor reserved wordsRoberto Ierusalimschy2024-12-301-1/+1
|
* Added gcc option '-Wconversion'Roberto Ierusalimschy2024-07-271-1/+2
| | | | | No warnings for standard numerical types. Still pending alternative numerical types.
* Cleaning of llimits.hRoberto Ierusalimschy2024-06-201-0/+11
| | | | | | Several definitions that don't need to be "global" (that is, that concerns only specific parts of the code) moved out of llimits.h, to more appropriate places.
* Some 'unsigned int' changed to 'unsigned'Roberto Ierusalimschy2024-03-221-2/+2
| | | | | 'unsigned int' is too long sometimes. (We already write 'long' instead of 'long int'...)
* External stringsRoberto Ierusalimschy2023-11-091-7/+3
| | | | Strings can use external buffers to store their contents.
* Towards external stringsRoberto Ierusalimschy2023-11-081-2/+10
| | | | Long strings have a pointer to string contents.
* Hash always use all characters in a long stringRoberto Ierusalimschy2020-10-121-2/+1
| | | | | | | Hashes for long strings are computed only when they are used as keys in a table, not a too common case. And, in that case, it is to easy to force collisions changing only the characters which are not part of the hash.
* Cleaner definition for 'TString'Roberto Ierusalimschy2020-05-191-1/+5
| | | | | Use a variable-sized array to store string contents at the end of a structure 'TString', instead of raw memory.
* Short strings always use all bytes in the hashRoberto Ierusalimschy2020-04-011-1/+2
| | | | | | Collisions in short strings occurr just by their existence, when internalizing them. (Collisions in long strings is caused/controlled by the program, when adding them as keys to the same table.)
* Clearer distinction between types and tagsRoberto Ierusalimschy2020-01-311-2/+2
| | | | | LUA_T* represents only types; tags (types + Variants) are represented by LUA_V* constants.
* Strings inside Lua are not fully alignedRoberto Ierusalimschy2019-03-131-1/+1
| | | | | | Removed code to ensure that strings inside Lua (as returned by 'lua_tolstring') always start in fully aligned addresses. Since version 5.3 the documentation does not ensure that.
* Removed extra information from RCS keyword stringsRoberto Ierusalimschy2018-08-231-1/+1
| | | | | Version numbers and dates (mostly wrong) from RCS keyword strings removed from all source files; only the file name are kept.
* userdata can have multiple user valuesRoberto Ierusalimschy2018-02-201-5/+2
|
* detail (typo in comments)Roberto Ierusalimschy2017-11-231-2/+2
|
* no more reference 'memerrmsg' + new reference to "n"Roberto Ierusalimschy2017-07-271-1/+8
| | | | | | (both can be retrieved by 'luaS_newliteral' without creating anything, because they are fixed, but "n" deserves fast access while 'memerrmsg' does not)
* new function 'luaS_hashlongstr'Roberto Ierusalimschy2015-11-031-1/+2
|
* long strings are created directly in final position when possibleRoberto Ierusalimschy2015-09-081-1/+2
| | | | | (instead of using an auxiliar buffer to first create the string and then allocate the final string and copy result there)
* 'clearapihash' -> 'luaS_clearcache' and moved to 'lstring.c' (whichRoberto Ierusalimschy2015-03-251-1/+2
| | | | keeps all code related to this cache)
* new cache for interning stringsRoberto Ierusalimschy2015-03-041-1/+2
|
* size of short strings stored in a single byte, to reduce the sizeRoberto Ierusalimschy2015-01-161-2/+1
| | | | of struct 'TString'
* type 'Udata' refers directly to structure inside the union (unionRoberto Ierusalimschy2014-07-181-1/+2
| | | | used only for aligning purposes now)
* type 'TString' refers directly to the structure inside the unionRoberto Ierusalimschy2014-07-181-4/+5
| | | | (union used only for size purposes)
* removed function 'luaS_eqstr' (not used anywhere)Roberto Ierusalimschy2014-03-191-2/+1
|
* userdata can have any Lua value as uservalueRoberto Ierusalimschy2014-02-191-2/+2
|
* "fixed" objects kept in a separated list (instead of being kept inRoberto Ierusalimschy2013-08-211-3/+1
| | | | 'allgc' list with a bit marking them)
* change in string table: string table is now independent of GC lists; allRoberto Ierusalimschy2013-08-211-1/+2
| | | | strings live in 'normal' GC lists
* added 'local' bit (true => object is only refered by local variables)Roberto Ierusalimschy2013-08-161-2/+2
|
* random seed used in the hash of all strings to avoid intentionalRoberto Ierusalimschy2012-02-011-2/+2
| | | | collisions
* first implementation of long stringsRoberto Ierusalimschy2012-01-251-3/+6
|
* new macro 'isreserved' + 'eqstr' -> 'luaS_eqstr' (may be a function)Roberto Ierusalimschy2012-01-231-4/+10
|
* new macro 'eqstr'Roberto Ierusalimschy2010-04-051-1/+8
|
* 'luaS_new' changed from macro to functionRoberto Ierusalimschy2010-04-031-4/+2
|
* must include 'string.h' because a macro uses 'strlen'Roberto Ierusalimschy2010-03-131-1/+2
|
* added LUAI_FUNC to functions not in the APIRoberto Ierusalimschy2005-04-251-4/+4
|
* detailsRoberto Ierusalimschy2005-02-231-2/+2
|
* C functions and userdata also have environmentsRoberto Ierusalimschy2005-02-181-2/+2
|
* better control over memory-size overflowsRoberto Ierusalimschy2004-11-191-4/+3
|
* first implementation of generational GCRoberto Ierusalimschy2004-08-241-2/+1
|
* cleaner code for manipulation of `marked' fieldRoberto Ierusalimschy2003-11-171-3/+3
|
* cleaning the stage for generational collectionRoberto Ierusalimschy2002-08-161-10/+2
|
* new macro to `fix' stringsRoberto Ierusalimschy2002-04-301-1/+3
|
* no more explicit support for wide-chars; too much troble...Roberto Ierusalimschy2001-11-281-5/+5
|
* better syntax for type castsRoberto Ierusalimschy2001-08-311-4/+4
|
* cleaner way to ensure alignment for strings and userdataRoberto Ierusalimschy2001-06-151-13/+3
|
* new implementation for userdatas, without `keys'Roberto Ierusalimschy2001-06-061-6/+14
|
* first (big) step to support wide charsRoberto Ierusalimschy2001-02-231-5/+5
|
* better separation between basic typesRoberto Ierusalimschy2001-02-201-4/+6
|
* string pointers are always fully alignedRoberto Ierusalimschy2001-02-091-13/+2
|
* new semantics for pushuserdata (no more different userdatas with same value)Roberto Ierusalimschy2001-02-091-2/+2
|
* small changes in lstringRoberto Ierusalimschy2001-01-101-3/+3
|