public function runMacro($name, $args) { if (isset($this->macros[$name])) { if (is_callable($this->macros[$name])) { return call_user_func_array($this->macros[$name], array_merge([$this], $args)); } } }