1<?php declare(strict_types=1); 2 3namespace PhpParser\Node\Expr; 4 5use PhpParser\Node\Expr; 6 7class 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