I believe that the following two excerpts from the the Lua 5.1
reference manual mean that strings, booleans, and numbers are always
strongly referenced, even in situations where other types would be
weak referenced (as in weak tables).
2.10.2 - "In other words, if the only references to an object are weak
references, then the garbage collector will collect this object."
2.2(.0) - "Tables, functions, threads, and (full) userdata values
are objects"
On Tue, Oct 20, 2009 at 4:04 PM, Gary Bringhurst <garyb@strata.com>
wrote:
My google fu is failing me on this one.
Where can I find a definitive discussion of weak keyed tables and the
behavior of primitive data types as those weak keys? My tests say
that
unique string keys are never collected, and while I can see a
justification
for that I'd really like to know the relationship of primitive
types such as
strings to the garbage collector. Do we have to use tables or user
data as
keys in weak keyed tables in order for them to be collected?
Many thanks in advance,
Gary Bringhurst