sessions = $sessions; } public function __invoke(User $user) { $session = new Session($user); $this->sessions->add($session); return $session; } } // usage (PHP 7) - see http://3v4l.org/kPnLM: $session = (new Login($sessionRepository))($user);