/** * Add option object * * @param Object $spec the option object. */ public function addObject(Option $spec) { $this->data[$spec->getId()] = $spec; if ($spec->long) { $this->longOptions[$spec->long] = $spec; } if ($spec->short) { $this->shortOptions[$spec->short] = $spec; } $this->options[] = $spec; if (!$spec->long && !$spec->short) { throw new Exception('Wrong option spec'); } }
/** * Add option object. * * @param object $spec the option object. */ public function addOption(Option $spec) { $this->data[$spec->getId()] = $spec; if ($spec->long) { $this->longOptions[$spec->long] = $spec; } if ($spec->short) { $this->shortOptions[$spec->short] = $spec; } $this->options[] = $spec; if (!$spec->long && !$spec->short) { throw new Exception('Neither long option name nor short name is not given.'); } }