*/ private array $arguments = [], ) {} public function compile(Compiler $compiler): Compiler { $compiler = $compiler ->compile($this->node) ->write('('); if ($this->arguments !== []) { $arguments = array_map( fn (Node $argument) => $compiler->sub()->compile($argument)->code(), $this->arguments, ); $compiler = $compiler->write(implode(', ', $arguments)); } return $compiler->write(')'); } }