lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


> Hi, I need to be able to use functions as keys in a table but 
> also need 
> to associate different indexed values for each function.  I could go 
> with keying first by function then via the index in 
> sub-tables, but for 
> my particular use it would be better to have all of the 
> references in a 
> single table.  Would it be good then to key by a string with 
> the index 
> appended?  Something analagous to this:
> 
> local function f() end
> local index = 3
> local value = "foo"
> local t = {}
> t[tostring(f) .. "_" .. index] = value


Untested:

T = {}

function setvalue(fn, index, value)
  if not T[fn] then T[fn] = {} end
  T[fn][index] = value
end

function getvalue(fn, index)
  return T[fn][index]
end