bug #40427 [Console] Stop accepting ints as InputOption defaults

The types accepted and provided by `InputInterface::getOption`
and `setOption` do not include `int` (and passing something like
`--option=123` will set the option to the string `"123"`, not
to the integer `123`).

The `InputOption` default types should match this.
This commit is contained in:
Oliver Klee 2021-03-09 17:59:23 +01:00
parent 756522e977
commit 3a2d1b4a0a
2 changed files with 12 additions and 12 deletions

View File

@ -394,11 +394,11 @@ class Command
/** /**
* Adds an option. * Adds an option.
* *
* @param string $name The option name * @param string $name The option name
* @param string|array|null $shortcut The shortcuts, can be null, a string of shortcuts delimited by | or an array of shortcuts * @param string|array|null $shortcut The shortcuts, can be null, a string of shortcuts delimited by | or an array of shortcuts
* @param int|null $mode The option mode: One of the InputOption::VALUE_* constants * @param int|null $mode The option mode: One of the InputOption::VALUE_* constants
* @param string $description A description text * @param string $description A description text
* @param string|string[]|int|bool|null $default The default value (must be null for InputOption::VALUE_NONE) * @param string|string[]|bool|null $default The default value (must be null for InputOption::VALUE_NONE)
* *
* @throws InvalidArgumentException If option mode is invalid or incompatible * @throws InvalidArgumentException If option mode is invalid or incompatible
* *

View File

@ -33,11 +33,11 @@ class InputOption
private $description; private $description;
/** /**
* @param string $name The option name * @param string $name The option name
* @param string|array|null $shortcut The shortcuts, can be null, a string of shortcuts delimited by | or an array of shortcuts * @param string|array|null $shortcut The shortcuts, can be null, a string of shortcuts delimited by | or an array of shortcuts
* @param int|null $mode The option mode: One of the VALUE_* constants * @param int|null $mode The option mode: One of the VALUE_* constants
* @param string $description A description text * @param string $description A description text
* @param string|string[]|int|bool|null $default The default value (must be null for self::VALUE_NONE) * @param string|string[]|bool|null $default The default value (must be null for self::VALUE_NONE)
* *
* @throws InvalidArgumentException If option mode is invalid or incompatible * @throws InvalidArgumentException If option mode is invalid or incompatible
*/ */
@ -149,7 +149,7 @@ class InputOption
/** /**
* Sets the default value. * Sets the default value.
* *
* @param string|string[]|int|bool|null $default The default value * @param string|string[]|bool|null $default The default value
* *
* @throws LogicException When incorrect default value is given * @throws LogicException When incorrect default value is given
*/ */
@ -173,7 +173,7 @@ class InputOption
/** /**
* Returns the default value. * Returns the default value.
* *
* @return string|string[]|int|bool|null The default value * @return string|string[]|bool|null The default value
*/ */
public function getDefault() public function getDefault()
{ {