lua-users home
lua-l archive

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



On 4 October 2013 00:26, Sean Conner <sean@conman.org> wrote:
It was thus said that the Great liam mail once stated:
>
> I agree with Justin here for userdata types, in fact a certain library[1]
> does not even know the types of userdata[2] in C++ which is not so
> unusual[3]. If you really wanted to check the type then using the debug
> library seems very very wrong to me; just don't set a __metatable entry to
> hide it, grab the metatable and check against the type you want.

  Be careful, because that isn't always true.  I wrote code to bind Xlib to
Lua [4], and each userdata created gets its own distinct metatable. [5]  Of
course, that metatable has a _TYPE field associated with it ...

For the case I would personally set a __metatable entry to return one specific table for all instances of the same _TYPE.

--Liam