Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- table1 = {}
- table2 = {}
- behavior = {myfunction = function() return 10 end}
- setmetatable(table1, behavior)
- setmetatable(table2, behavior)
- a.myfunction() --> 10
- b.myfunction() --> 10
- behavior_derived = {myNewFunction = function() return 20 end}
- -- merge the base behavior in with our derived behavior
- for k,v in pairs(behavior) do behavior_derived[k] = v end
- a_derived = {}
- b_derived = {}
- setmetatable(a_derived, behavior_derived)
- setmetatable(b_derived, behavior_derived)
- a_derived.myfunction() --> 10
- a_derived.myNewFunction() --> 20
- b_derived.myfunction() --> 10
- b_derived.myNewFunction() --> 20
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement