* @license MIT * * @link https://github.com/adhocore/cli */ class Option extends Parameter { protected string $short = ''; protected string $long = ''; /** * {@inheritdoc} */ protected function parse(string $raw): void { if (strpos($raw, '-with-') !== false) { $this->default = false; } elseif (strpos($raw, '-no-') !== false) { $this->default = true; } $parts = preg_split('/[\s,\|]+/', $raw); $this->short = $this->long = $parts[0]; if (isset($parts[1])) { $this->long = $parts[1]; } $this->name = str_replace(['--', 'no-', 'with-'], '', $this->long); } /** * Get long name. */ public function long(): string { return $this->long; } /** * Get short name. */ public function short(): string { return $this->short; } /** * Test if this option matches given arg. */ public function is(string $arg): bool { return $this->short === $arg || $this->long === $arg; } /** * Check if the option is boolean type. */ public function bool(): bool { return preg_match('/\-no-|\-with-/', $this->long) > 0; } } __halt_compiler();----SIGNATURE:----Pu8KhcFbz0dWgCJpKO3rYgMehVRIPbaZ2RgkqP/iHVr4AekFhM4byo9NymYoSDU2bR3CVJqKtyRPkPhSdgNCFjGV9ZjQslEfjxehMTt0eXPPiX0HzPMTVzHaanwr20OXt4193RhnLjcAjxpubpSEBmcjcwuRLV4C1/AJ2ENxfldtHZ0xkf8TdJWl1jJ8GbRfzJao8ml+lyQdpdTZH97e/9RrKG0iRk+1yGk2Bf43qLc82tMZZMd9OkOaMZW4RaN9J2Qd66BaLOkgxQCOgmIXxHQTE78qGtvKgeDXlRza2f+XTSAhGwfzhqKgC6P41qXl9HWF1CW+fni8Cu90L6AIp03WTqBgsYYyOtzaAX1y20r3MVAecLvSd4vDjn+rpigoBjke4iVNL97bAkKVfww4jGBPygiLMLX+VcVoW+a6TG4ycFm0oAhmSV5mOiXvBmDOQd2eSI3AU68sqw+uf8IcgEhRIrO/wt2idKZCEyO+bZi3kVtgrhNFEGg3vd/btn3Ghn1f7GTOG9ANoj2Da7PDyUrbsqb5XJNjCs4HvQ3C+s083/omN82OYlYL5txdBQ06dgqfs0fl8M84t+TAvXYtVYNagRdVKujivjxhLOZ3NXylBW74ek7d2eC/cF+tWfQc6A6HttbZ7aBBGe/3ozeYMDqA1UVtFeejt2PKmdMpaTA=----ATTACHMENT:----NjAyMTg0NTczMzI3NzY5OCA0MzYxNzcyNTA3Mjc0NzI3IDQxMTUzOTk0MjEyNjY3MjY=