TraitUse.php 898 B

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