name: InputDefinition class_comment: '# * A InputDefinition represents a set of valid command line arguments and options. # * # * Usage: # * # * $definition = new InputDefinition([ # * new InputArgument(''name'', InputArgument::REQUIRED), # * new InputOption(''foo'', ''f'', InputOption::VALUE_REQUIRED), # * ]); # * # * @author Fabien Potencier ' dependencies: - name: InvalidArgumentException type: class source: Symfony\Component\Console\Exception\InvalidArgumentException - name: LogicException type: class source: Symfony\Component\Console\Exception\LogicException properties: [] methods: - name: __construct visibility: public parameters: - name: definition default: '[]' comment: "# * A InputDefinition represents a set of valid command line arguments\ \ and options.\n# *\n# * Usage:\n# *\n# * $definition = new InputDefinition([\n\ # * new InputArgument('name', InputArgument::REQUIRED),\n# * new\ \ InputOption('foo', 'f', InputOption::VALUE_REQUIRED),\n# * ]);\n# *\n# *\ \ @author Fabien Potencier \n# */\n# class InputDefinition\n\ # {\n# private array $arguments = [];\n# private int $requiredCount = 0;\n# private\ \ ?InputArgument $lastArrayArgument = null;\n# private ?InputArgument $lastOptionalArgument\ \ = null;\n# private array $options = [];\n# private array $negations = [];\n\ # private array $shortcuts = [];\n# \n# /**\n# * @param array $definition An array\ \ of InputArgument and InputOption instance" - name: setDefinition visibility: public parameters: - name: definition comment: '# * Sets the definition of the input.' - name: setArguments visibility: public parameters: - name: arguments default: '[]' comment: '# * Sets the InputArgument objects. # * # * @param InputArgument[] $arguments An array of InputArgument objects' - name: addArguments visibility: public parameters: - name: arguments default: '[]' comment: '# * Adds an array of InputArgument objects. # * # * @param InputArgument[] $arguments An array of InputArgument objects' - name: addArgument visibility: public parameters: - name: argument comment: '# * @throws LogicException When incorrect argument is given' - name: getArgument visibility: public parameters: - name: name comment: '# * Returns an InputArgument by name or by position. # * # * @throws InvalidArgumentException When argument given doesn''t exist' - name: hasArgument visibility: public parameters: - name: name comment: '# * Returns true if an InputArgument object exists by name or position.' - name: getArguments visibility: public parameters: [] comment: '# * Gets the array of InputArgument objects. # * # * @return InputArgument[]' - name: getArgumentCount visibility: public parameters: [] comment: '# * Returns the number of InputArguments.' - name: getArgumentRequiredCount visibility: public parameters: [] comment: '# * Returns the number of required InputArguments.' - name: getArgumentDefaults visibility: public parameters: [] comment: '# * @return array' - name: setOptions visibility: public parameters: - name: options default: '[]' comment: '# * Sets the InputOption objects. # * # * @param InputOption[] $options An array of InputOption objects' - name: addOptions visibility: public parameters: - name: options default: '[]' comment: '# * Adds an array of InputOption objects. # * # * @param InputOption[] $options An array of InputOption objects' - name: addOption visibility: public parameters: - name: option comment: '# * @throws LogicException When option given already exist' - name: getOption visibility: public parameters: - name: name comment: '# * Returns an InputOption by name. # * # * @throws InvalidArgumentException When option given doesn''t exist' - name: hasOption visibility: public parameters: - name: name comment: '# * Returns true if an InputOption object exists by name. # * # * This method can''t be used to check if the user included the option when # * executing the command (use getOption() instead).' - name: getOptions visibility: public parameters: [] comment: '# * Gets the array of InputOption objects. # * # * @return InputOption[]' - name: hasShortcut visibility: public parameters: - name: name comment: '# * Returns true if an InputOption object exists by shortcut.' - name: hasNegation visibility: public parameters: - name: name comment: '# * Returns true if an InputOption object exists by negated name.' - name: getOptionForShortcut visibility: public parameters: - name: shortcut comment: '# * Gets an InputOption by shortcut.' - name: getOptionDefaults visibility: public parameters: [] comment: '# * @return array' - name: shortcutToName visibility: public parameters: - name: shortcut comment: '# * Returns the InputOption name given a shortcut. # * # * @throws InvalidArgumentException When option given does not exist # * # * @internal' - name: negationToName visibility: public parameters: - name: negation comment: '# * Returns the InputOption name given a negation. # * # * @throws InvalidArgumentException When option given does not exist # * # * @internal' - name: getSynopsis visibility: public parameters: - name: short default: 'false' comment: '# * Gets the synopsis.' traits: - Symfony\Component\Console\Exception\InvalidArgumentException - Symfony\Component\Console\Exception\LogicException interfaces: []