Subversion-Projekte lars-tiefland.laravel_shop

Revision

Details | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
148 lars 1
<?php declare(strict_types=1);
2
 
3
namespace PhpParser\Node\Expr;
4
 
5
use PhpParser\Node;
6
use PhpParser\Node\Arg;
7
use PhpParser\Node\Expr;
8
use PhpParser\Node\Identifier;
9
use PhpParser\Node\VariadicPlaceholder;
10
 
11
class StaticCall extends CallLike
12
{
13
    /** @var Node\Name|Expr Class name */
14
    public $class;
15
    /** @var Identifier|Expr Method name */
16
    public $name;
17
    /** @var array<Arg|VariadicPlaceholder> Arguments */
18
    public $args;
19
 
20
    /**
21
     * Constructs a static method call node.
22
     *
23
     * @param Node\Name|Expr                 $class      Class name
24
     * @param string|Identifier|Expr         $name       Method name
25
     * @param array<Arg|VariadicPlaceholder> $args       Arguments
26
     * @param array                          $attributes Additional attributes
27
     */
28
    public function __construct($class, $name, array $args = [], array $attributes = []) {
29
        $this->attributes = $attributes;
30
        $this->class = $class;
31
        $this->name = \is_string($name) ? new Identifier($name) : $name;
32
        $this->args = $args;
33
    }
34
 
35
    public function getSubNodeNames() : array {
36
        return ['class', 'name', 'args'];
37
    }
38
 
39
    public function getType() : string {
40
        return 'Expr_StaticCall';
41
    }
42
 
43
    public function getRawArgs(): array {
44
        return $this->args;
45
    }
46
}