http://www.perlmonks.org?node_id=730192


in reply to Re^4: OOP: ->Coderef for calling Private Methods (possibilites?)
in thread OOP: Obj->Coderef for calling Private Methods

This? perlobj#Method-Invocation
  1. An object is simply a reference that happens to know which class it belongs to.
  2. A class is simply a package that happens to provide methods to deal with object references.
  3. A method is simply a subroutine that expects an object reference (or a package name, for class methods) as the first argument.

...

Whatever is on the left side of the arrow, whether a reference or a class name, is passed to the method subroutine as its first argument.