__construct__TImmutableInternalArray($initial, $throwsForNonExistentElement); $arrayNew = []; foreach ($this->array as $key => $value) { $arrayNew[mb_strtolower($key)] = $value; } $this->array = $arrayNew; } /** * @inheritDoc */ public function has ($cellName): bool { return $this->has__TImmutableInternalArray(mb_strtolower($cellName)); } /** * @inheritDoc */ public function get ($cellName, ?bool $throwsForNonExistentElement = null) { return $this->get__TImmutableInternalArray(mb_strtolower($cellName), $throwsForNonExistentElement); } /** * @inheritDoc */ public function toMutable (): IArrayClass { return new InsensitiveCaseArrayClass($this->array, $this->throwsForNonExistentElement()); } }