• Die Martin Die@sh.itjust.works
    link
    fedilink
    arrow-up
    0
    ·
    6 days ago

    Kinda.

    Lua defines it implicitly only when you use the

    function foo:bar(a, b, c) -- note the colon
    

    syntactic sugar, which gets translated to

    function foo.bar(self, a, b, c)` -- note the period
    

    In all other cases, self is a regular variable name. You can even redeclare a new local with that name even when the old one is in scope.