Debug.settypemt

From GiderosMobile
Revision as of 10:04, 23 August 2018 by Hgy29 (talk | contribs) (Created page with "__NOTOC__ '''Available since:''' Gideros 2016.08<br/> === Description === Set meta table type From http://lua-users.org/wiki/LuaPowerPatches Useful to extend Lua syntax and f...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Available since: Gideros 2016.08

Description

Set meta table type

From http://lua-users.org/wiki/LuaPowerPatches Useful to extend Lua syntax and for some tricks.

Adds new method to debug library: debug.settypemt(type, metatable) Supported types: "nil","boolean","lightuserdata","number","string","table","function","userdata","thread".

For example:

<code>
-- enable string indexing (s[n]) to get character at utf8 position
string.__index = function(s, n) return utf8.sub(s, n, n) end
debug.settypemt("string", string)
local s = "Hello, world!"
print(s[8]) --> w
</code>

Also sets table library as default type metatable for all tables without user defined metatables i.e. enables following syntax: t:insert(3); t:remove(2); t:sort(func); etc.

= debug.settypemt()