vals = { i=1, j=2}
setmetatable(vals, {
__add = function (a, b)
return a*b
end,
})
sr = vals.i+vals.j
print(sr)
It prints sr
as 3
. The expected answer is 2
as 1*2
equals to 2
. Why the addition operation (metamethod) is not getting into picture from the metatable of vars
?
the first argument of the
__add
method is table type