Metamethod when accessing a key as mutable

Viewed 175

__index is called when accessing as immutable :

local foo = bar["foo"];

__newindex is called when access as mutable an index that doesn't exist :

local bar = { }
bar["foo"] = 123 -- calls __newindex
bar["foo"] = 456 -- does NOT call __newindex

Is there a metamethod that can be called when accessing a key as mutable evey time, i.e not only if the key doesn't exist yet?

I would like to create a behavior so that when a users sets a key in a table, it calls a native method instead, regardless if the key already exists or not.

3 Answers
Related