callback = $callback; $this->modifierName = $modifierName; } public function handle(...$params) { try { return call_user_func_array($this->callback, $params); } catch (\ArgumentCountError $e) { throw new Exception("Invalid number of arguments to modifier " . $this->modifierName); } } }