name = self::normalizeName($name); $this->typeSpecified = $type !== null; $this->setValue($value, $type); } /** * Retrieves the Parameter name. */ public function getName(): string { return $this->name; } /** * Retrieves the Parameter value. */ public function getValue(): mixed { return $this->value; } /** * Retrieves the Parameter type. */ public function getType(): mixed { return $this->type; } /** * Defines the Parameter value. */ public function setValue(mixed $value, mixed $type = null): void { $this->value = $value; $this->type = $type ?: ParameterTypeInferer::inferType($value); } public function typeWasSpecified(): bool { return $this->typeSpecified; } }