private function addToOptionCache(string $identifier, $option) : void
    {
        if (!isset($option[$identifier])) {
            return;
        }
        $cacheKey = "${option['command']}${option[$identifier]}";
        if (!isset($this->optionsCache[$cacheKey])) {
            $this->optionsCache[$cacheKey] = $option;
        } else {
            throw new OptionExistsException(
                "An argument option with $identifier {$option['command']} {$option[$identifier]} already exists."
            );
        }
    }
private function addToOptionCache(string $identifier, $option) : void
    {
        if (!isset($option[$identifier])) {
            return;
        }
        $cacheKey = "${option['command']}${option[$identifier]}";
        if (!isset($this->optionsCache[$cacheKey])) {
            $this->optionsCache[$cacheKey] = $option;
        } else {
            throw new OptionExistsException(
                "An argument option with $identifier {$option['command']} {$option[$identifier]} already exists."
            );
        }
    }
private function addToOptionCache ( string $ identifier , $ option ) : void { if ( ! isset ( $ option [ $ identifier ] ) ) { return ; } $ cacheKey = "${option['command']}${option[$identifier]}" ; if ( ! isset ( $ this -> optionsCache [ $ cacheKey ] ) ) { $ this -> optionsCache [ $ cacheKey ] = $ option ; } else { throw new OptionExistsException ( "An argument option with $identifier {$option['command']} {$option[$identifier]} already exists." ) ; } }
Add an option to the option cache for easy access through associative arrays.
The option cache associates arguments with their options.

@param string $identifier
@param mixed $option
@throws OptionExistsException
Add an option to the option cache for easy access through associative arrays . The option cache associates arguments with their options .