public function apply()

in src/CLIOptions/CLIOptionWithRequiredValue.hack [37:54]


  public function apply(
    string $as_given,
    ?string $value,
    vec<string> $argv,
  ): vec<string> {
    if ($value === null) {
      if (C\is_empty($argv) || $argv[0] === '--') {
        throw new InvalidArgumentException(
          "option '%s' requires a value",
          $as_given,
        );
      }
      $value = C\firstx($argv);
      $argv = Vec\drop($argv, 1);
    }
    $this->set($as_given, $value);
    return $argv;
  }