Garry's Mod Wiki

getmetatable

any getmetatable( any object )

Description

Returns the metatable of an object. This function obeys the metatable's __metatable field, and will return that field if the metatable has it set.

Use debug.getmetatable if you want the true metatable of the object.

Arguments

1 any object
The value to return the metatable of.

Returns

1 any
The metatable of the value. This is not always a table.

Example

Use a table's metatable and alter it.

print(getmetatable(Pupil).__index.GetName(Pupil)) -- getmetatable(Pupil) will return Pupil_meta. -- Same as print(Pupil:GetName()) -- This is what the Lua interpreter basically does. (When __index is a table.) getmetatable(Pupil).SetName = function(self, newName) self.name = newName end -- We're adding a new method to Pupil's metatable print(getmetatable(Pupil).GetName(Pupil)) -- Still the same, because Pupil_meta.__index is Pupil_meta.
Output: "John Doe"

Page Links


Special Pages


Wikis

?

Render Time: 32ms

Session 0
DB GetPage 4
Generate Html 2
SaveChanges 11
Render Body 0
Render Sidebar 13