ArrayNode copyWith({ String? type, Location? loc, List<Node>? children, }) { return ArrayNode( type ?? this.type, loc ?? this.loc, children ?? this.children, ); }