La différence entre les deux . et : en Lua

Je suis confus au sujet de la différence entre les appels de fonction via . et via :

> x = {foo = function(a,b) return a end, bar = function(a,b) return b end, }
> return x.foo(3,4)
3
> return x.bar(3,4)
4
> return x:foo(3,4)
table: 0x10a120
> return x:bar(3,4)
3

Quel est le : faire ?

InformationsquelleAutor Jason S | 2011-02-06