code: @Override @DefinedBy(Api.COMPILER)
      public boolean handleOption(String current, Iterator<String> remaining) {
          OptionHelper helper = new GrumpyHelper(log) {
              @Override
              public String get(Option option) {
                  return options.get(option);
              }
  
              @Override
              public void put(String name, String value) {
                  options.put(name, value);
              }
  
              @Override
              public void remove(String name) {
                  options.remove(name);
              }
  
              @Override
              public boolean handleFileManagerOption(Option option, String value) {
                  return handleOption(option, value);
              }
          };
  
          Option o = Option.lookup(current, javacFileManagerOptions);
          if (o == null) {
              return false;
          }
  
          try {
              o.handleOption(helper, current, remaining);
          } catch (Option.InvalidValueException e) {
              throw new IllegalArgumentException(e.getMessage(), e);
          }
  
          return true;
      }
docs: <editor-fold defaultstate="collapsed" desc="Option handling">