1: <?php declare(strict_types=1);
2:
3: namespace PhpParser\Node\Expr;
4:
5: use PhpParser\Node\Expr;
6:
7: class ArrayDimFetch extends Expr {
8: /** @var Expr Variable */
9: public Expr $var;
10: /** @var null|Expr Array index / dim */
11: public ?Expr $dim;
12:
13: /**
14: * Constructs an array index fetch node.
15: *
16: * @param Expr $var Variable
17: * @param null|Expr $dim Array index / dim
18: * @param array<string, mixed> $attributes Additional attributes
19: */
20: public function __construct(Expr $var, ?Expr $dim = null, array $attributes = []) {
21: $this->attributes = $attributes;
22: $this->var = $var;
23: $this->dim = $dim;
24: }
25:
26: public function getSubNodeNames(): array {
27: return ['var', 'dim'];
28: }
29:
30: public function getType(): string {
31: return 'Expr_ArrayDimFetch';
32: }
33: }
34: