1: <?php declare(strict_types=1);
2:
3: namespace PhpParser\Node\Stmt;
4:
5: use PhpParser\Node;
6:
7: class TraitUse extends Node\Stmt
8: {
9: /** @var Node\Name[] Traits */
10: public $traits;
11: /** @var TraitUseAdaptation[] Adaptations */
12: public $adaptations;
13:
14: /**
15: * Constructs a trait use node.
16: *
17: * @param Node\Name[] $traits Traits
18: * @param TraitUseAdaptation[] $adaptations Adaptations
19: * @param array $attributes Additional attributes
20: */
21: public function __construct(array $traits, array $adaptations = [], array $attributes = []) {
22: $this->attributes = $attributes;
23: $this->traits = $traits;
24: $this->adaptations = $adaptations;
25: }
26:
27: public function getSubNodeNames() : array {
28: return ['traits', 'adaptations'];
29: }
30:
31: public function getType() : string {
32: return 'Stmt_TraitUse';
33: }
34: }
35: