diff options
Diffstat (limited to 'vendor/ramsey/collection/src/Map/NamedParameterMap.php')
-rw-r--r-- | vendor/ramsey/collection/src/Map/NamedParameterMap.php | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/vendor/ramsey/collection/src/Map/NamedParameterMap.php b/vendor/ramsey/collection/src/Map/NamedParameterMap.php index f948e476c..9926ddd8c 100644 --- a/vendor/ramsey/collection/src/Map/NamedParameterMap.php +++ b/vendor/ramsey/collection/src/Map/NamedParameterMap.php @@ -26,7 +26,7 @@ use function is_int; * `NamedParameterMap` represents a mapping of values to a set of named keys * that may optionally be typed * - * @extends AbstractMap<string, mixed> + * @extends AbstractMap<mixed> */ class NamedParameterMap extends AbstractMap { @@ -38,13 +38,13 @@ class NamedParameterMap extends AbstractMap * * @var array<string, string> */ - private readonly array $namedParameters; + protected $namedParameters; /** * Constructs a new `NamedParameterMap`. * * @param array<array-key, string> $namedParameters The named parameters defined for this map. - * @param array<string, mixed> $data An initial set of data to set on this map. + * @param array<array-key, mixed> $data An initial set of data to set on this map. */ public function __construct(array $namedParameters, array $data = []) { @@ -62,12 +62,22 @@ class NamedParameterMap extends AbstractMap return $this->namedParameters; } - public function offsetSet(mixed $offset, mixed $value): void + /** + * @inheritDoc + */ + public function offsetSet($offset, $value): void { + if ($offset === null) { + throw new InvalidArgumentException( + 'Map elements are key/value pairs; a key must be provided for ' + . 'value ' . var_export($value, true) + ); + } + if (!array_key_exists($offset, $this->namedParameters)) { throw new InvalidArgumentException( 'Attempting to set value for unconfigured parameter \'' - . $this->toolValueToString($offset) . '\'', + . $offset . '\'' ); } @@ -75,7 +85,7 @@ class NamedParameterMap extends AbstractMap throw new InvalidArgumentException( 'Value for \'' . $offset . '\' must be of type ' . $this->namedParameters[$offset] . '; value is ' - . $this->toolValueToString($value), + . $this->toolValueToString($value) ); } |