You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
45 lines
1.2 KiB
45 lines
1.2 KiB
<?php declare(strict_types=1); |
|
|
|
namespace PhpParser\Node\Expr; |
|
|
|
use PhpParser\Node; |
|
use PhpParser\Node\Arg; |
|
use PhpParser\Node\Expr; |
|
use PhpParser\Node\Identifier; |
|
use PhpParser\Node\VariadicPlaceholder; |
|
|
|
class MethodCall extends CallLike { |
|
/** @var Expr Variable holding object */ |
|
public Expr $var; |
|
/** @var Identifier|Expr Method name */ |
|
public Node $name; |
|
/** @var array<Arg|VariadicPlaceholder> Arguments */ |
|
public array $args; |
|
|
|
/** |
|
* Constructs a function call node. |
|
* |
|
* @param Expr $var Variable holding object |
|
* @param string|Identifier|Expr $name Method name |
|
* @param array<Arg|VariadicPlaceholder> $args Arguments |
|
* @param array<string, mixed> $attributes Additional attributes |
|
*/ |
|
public function __construct(Expr $var, $name, array $args = [], array $attributes = []) { |
|
$this->attributes = $attributes; |
|
$this->var = $var; |
|
$this->name = \is_string($name) ? new Identifier($name) : $name; |
|
$this->args = $args; |
|
} |
|
|
|
public function getSubNodeNames(): array { |
|
return ['var', 'name', 'args']; |
|
} |
|
|
|
public function getType(): string { |
|
return 'Expr_MethodCall'; |
|
} |
|
|
|
public function getRawArgs(): array { |
|
return $this->args; |
|
} |
|
}
|
|
|