1: <?php declare(strict_types=1);
2:
3: namespace PhpParser\Node\Stmt\TraitUseAdaptation;
4:
5: use PhpParser\Node;
6:
7: class Alias extends Node\Stmt\TraitUseAdaptation
8: {
9: /** @var null|int New modifier */
10: public $newModifier;
11: /** @var null|Node\Identifier New name */
12: public $newName;
13:
14: /**
15: * Constructs a trait use precedence adaptation node.
16: *
17: * @param null|Node\Name $trait Trait name
18: * @param string|Node\Identifier $method Method name
19: * @param null|int $newModifier New modifier
20: * @param null|string|Node\Identifier $newName New name
21: * @param array $attributes Additional attributes
22: */
23: public function __construct($trait, $method, $newModifier, $newName, array $attributes = []) {
24: $this->attributes = $attributes;
25: $this->trait = $trait;
26: $this->method = \is_string($method) ? new Node\Identifier($method) : $method;
27: $this->newModifier = $newModifier;
28: $this->newName = \is_string($newName) ? new Node\Identifier($newName) : $newName;
29: }
30:
31: public function getSubNodeNames() : array {
32: return ['trait', 'method', 'newModifier', 'newName'];
33: }
34:
35: public function getType() : string {
36: return 'Stmt_TraitUseAdaptation_Alias';
37: }
38: }
39: