1<?php declare(strict_types=1); 2 3namespace PhpParser\Node; 4 5use PhpParser\Node; 6use PhpParser\NodeAbstract; 7 8class Attribute extends NodeAbstract { 9 /** @var Name Attribute name */ 10 public Name $name; 11 12 /** @var list<Arg> Attribute arguments */ 13 public array $args; 14 15 /** 16 * @param Node\Name $name Attribute name 17 * @param list<Arg> $args Attribute arguments 18 * @param array<string, mixed> $attributes Additional node attributes 19 */ 20 public function __construct(Name $name, array $args = [], array $attributes = []) { 21 $this->attributes = $attributes; 22 $this->name = $name; 23 $this->args = $args; 24 } 25 26 public function getSubNodeNames(): array { 27 return ['name', 'args']; 28 } 29 30 public function getType(): string { 31 return 'Attribute'; 32 } 33} 34