setmetatable

  table setmetatable( table Tab, table Metatable )

Açıklama

Bir tablonun metatablosunu ayarlar, değiştirir veya kaldırır. Tab'ı (ilk argümanı) döndürür.

Argümanlar

1 table Tab
Metatablosu değiştirilecek olan tablo.
2 table Metatable
Atanacak olan metatablo.
Eğer nil ise, metatablo kaldırılacaktır.

Dönen Değer

1 table
İlk argüman.

Örnek

Bir metatablo oluşturur ve bunu bir tabloya atar.

local Pupil_meta = { GetName = function(self) return self.name end } Pupil_meta.__index = Pupil_meta -- Eğer bir anahtar nesnede bulunamazsa, metatablosunun __index metamethod'una bakacaktır. local Pupil = { name = "John Doe" } setmetatable(Pupil, Pupil_meta) print( Pupil:GetName() ) -- Bu, Pupil içinde "GetName" anahtarını arayacaktır, ancak böyle bir anahtar yoktur. Bu yüzden bunun yerine metatablosunun (Pupil_meta) __index anahtarına bakacaktır.
Çıktı: "John Doe"

Tüm sunucular · GmodTR Launcher · Rehber · GMod Wiki · GmodTR nedir? · Sunucu ekle · Discord