Protection des tables

Vous pouvez utiliser des métatables pour rendre certaines tables en lecture seule ou pour restreindre l'accès à certaines opérations.


local myTable = { key = "valeur" }
local myMetatable = {
    __index = myTable,
    __newindex = function(table, key, value)
        print("Modification interdite.")
    end
}
setmetatable(myTable, myMetatable)

print(myTable.key)  -- Affiche "valeur"
myTable.newKey = "nouvelle valeur"  -- Affiche "Modification interdite."

Dernière mise à jour