2
0

_hx_tab_array.lua 589 B

1234567891011121314151617181920212223
  1. local _hx_hidden = {__id__=true, hx__closures=true, super=true, prototype=true, __fields__=true, __ifields__=true, __class__=true, __properties__=true, __fields__=true, __name__=true}
  2. _hx_array_mt = {
  3. __newindex = function(t,k,v)
  4. local len = t.length
  5. t.length = k >= len and (k + 1) or len
  6. rawset(t,k,v)
  7. end
  8. }
  9. function _hx_is_array(o)
  10. return type(o) == "table"
  11. and o.__enum__ == nil
  12. and getmetatable(o) == _hx_array_mt
  13. end
  14. function _hx_tab_array(tab, length)
  15. tab.length = length
  16. return setmetatable(tab, _hx_array_mt)
  17. end