/** * Add a value to the appropriate field * * @param string $name The name of the argument * @param string $value The perceived value of the argument * @param string $next The next argument * @return integer The number to advance the counter */ private function processNamedArgument($name, $value, $next) { if (($field = $this->fieldCollection->getField($name)) === null) { throw new UnknownFieldException("unknown option '{$name}'"); } if ($field instanceof BooleanField || $next === null || $next[0] === '-') { $field->addValue($value); $ret = 0; } else { $field->addValue($next); $ret = 1; } $dataKey = constant(get_class($this->fieldCollection) . '::EVENT_DATA_KEY'); $field->fire('parse', [$dataKey => $this->fieldCollection, 'field' => $field, 'name' => $name]); return $ret; }
/** * Create the task and optionally add fields to it * * @param array.<sndsgd\Field> $fields */ public function __construct(array $fields = []) { parent::__construct($fields); }