Difference between revisions of "Debug.settypemt"
From GiderosMobile
(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...") |
|||
Line 21: | Line 21: | ||
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. | 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. | ||
<source lang="lua"> | <source lang="lua"> | ||
− | + | debug.settypemt() | |
</source> | </source> |
Revision as of 10:21, 23 August 2018
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()