lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]

> In section 3, you say "The form t:f(x) is syntactic sugar for t.f(t,x), which
> calls the method f from the table t passing the table itself as the first
> parameter (see Section 4.5.9).".

> In section 4.5.9, you say "The statement function v:f (...) ... end is just
> syntactic sugar for v.f = function (self, ...) ... end
> Note that the function gets an extra formal parameter called self."

You're just confusing formal and actual parameters: if you define a function

v:f () ... end

you actually get

v.f = function (self) ... end

and then when you call it with v:f(), the actual call made is v:f(v), so
self gets set to v within f.

-- | certain, a.  insufficiently analysed