public class io.vertx.core.cli.impl.DefaultCommandLine implements io.vertx.core.cli.CommandLine
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.vertx.core.cli.impl.DefaultCommandLine
  super_class: java.lang.Object
{
  protected final io.vertx.core.cli.CLI cli;
    descriptor: Lio/vertx/core/cli/CLI;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected java.util.List<java.lang.String> allArgs;
    descriptor: Ljava/util/List;
    flags: (0x0004) ACC_PROTECTED
    Signature: Ljava/util/List<Ljava/lang/String;>;

  protected java.util.Map<io.vertx.core.cli.Option, java.util.List<java.lang.String>> optionValues;
    descriptor: Ljava/util/Map;
    flags: (0x0004) ACC_PROTECTED
    Signature: Ljava/util/Map<Lio/vertx/core/cli/Option;Ljava/util/List<Ljava/lang/String;>;>;

  protected java.util.List<io.vertx.core.cli.Option> optionsSeenInCommandLine;
    descriptor: Ljava/util/List;
    flags: (0x0004) ACC_PROTECTED
    Signature: Ljava/util/List<Lio/vertx/core/cli/Option;>;

  protected java.util.Map<io.vertx.core.cli.Argument, java.util.List<java.lang.String>> argumentValues;
    descriptor: Ljava/util/Map;
    flags: (0x0004) ACC_PROTECTED
    Signature: Ljava/util/Map<Lio/vertx/core/cli/Argument;Ljava/util/List<Ljava/lang/String;>;>;

  protected boolean valid;
    descriptor: Z
    flags: (0x0004) ACC_PROTECTED

  public void <init>(io.vertx.core.cli.CLI);
    descriptor: (Lio/vertx/core/cli/CLI;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
        start local 1 // io.vertx.core.cli.CLI cli
         0: .line 35
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 29
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield io.vertx.core.cli.impl.DefaultCommandLine.allArgs:Ljava/util/List;
         2: .line 30
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield io.vertx.core.cli.impl.DefaultCommandLine.optionValues:Ljava/util/Map;
         3: .line 31
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield io.vertx.core.cli.impl.DefaultCommandLine.optionsSeenInCommandLine:Ljava/util/List;
         4: .line 32
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield io.vertx.core.cli.impl.DefaultCommandLine.argumentValues:Ljava/util/Map;
         5: .line 36
            aload 0 /* this */
            aload 1 /* cli */
            putfield io.vertx.core.cli.impl.DefaultCommandLine.cli:Lio/vertx/core/cli/CLI;
         6: .line 37
            return
        end local 1 // io.vertx.core.cli.CLI cli
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lio/vertx/core/cli/impl/DefaultCommandLine;
            0    7     1   cli  Lio/vertx/core/cli/CLI;
    MethodParameters:
      Name  Flags
      cli   

  public io.vertx.core.cli.CLI cli();
    descriptor: ()Lio/vertx/core/cli/CLI;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
         0: .line 44
            aload 0 /* this */
            getfield io.vertx.core.cli.impl.DefaultCommandLine.cli:Lio/vertx/core/cli/CLI;
            areturn
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/cli/impl/DefaultCommandLine;

  public java.util.List<java.lang.String> allArguments();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
         0: .line 53
            aload 0 /* this */
            getfield io.vertx.core.cli.impl.DefaultCommandLine.allArgs:Ljava/util/List;
            areturn
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/cli/impl/DefaultCommandLine;
    Signature: ()Ljava/util/List<Ljava/lang/String;>;

  public io.vertx.core.cli.CommandLine addArgumentValue(java.lang.String);
    descriptor: (Ljava/lang/String;)Lio/vertx/core/cli/CommandLine;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
        start local 1 // java.lang.String argument
         0: .line 63
            aload 0 /* this */
            getfield io.vertx.core.cli.impl.DefaultCommandLine.allArgs:Ljava/util/List;
            aload 1 /* argument */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         1: .line 64
            aload 0 /* this */
            areturn
        end local 1 // java.lang.String argument
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lio/vertx/core/cli/impl/DefaultCommandLine;
            0    2     1  argument  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      argument  

  public <T> T getOptionValue(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
        start local 1 // java.lang.String name
         0: .line 70
            aload 0 /* this */
            getfield io.vertx.core.cli.impl.DefaultCommandLine.cli:Lio/vertx/core/cli/CLI;
            aload 1 /* name */
            invokeinterface io.vertx.core.cli.CLI.getOption:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
            astore 2 /* option */
        start local 2 // io.vertx.core.cli.Option option
         1: .line 71
            aload 2 /* option */
            ifnonnull 3
         2: .line 72
            aconst_null
            areturn
         3: .line 74
      StackMap locals: io.vertx.core.cli.Option
      StackMap stack:
            aload 2 /* option */
            instanceof io.vertx.core.cli.TypedOption
            ifeq 5
         4: .line 75
            aload 0 /* this */
            aload 2 /* option */
            checkcast io.vertx.core.cli.TypedOption
            invokevirtual io.vertx.core.cli.impl.DefaultCommandLine.getValue:(Lio/vertx/core/cli/TypedOption;)Ljava/lang/Object;
            areturn
         5: .line 77
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* option */
            invokevirtual io.vertx.core.cli.impl.DefaultCommandLine.getRawValueForOption:(Lio/vertx/core/cli/Option;)Ljava/lang/String;
            areturn
        end local 2 // io.vertx.core.cli.Option option
        end local 1 // java.lang.String name
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lio/vertx/core/cli/impl/DefaultCommandLine;
            0    6     1    name  Ljava/lang/String;
            1    6     2  option  Lio/vertx/core/cli/Option;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/String;)TT;
    MethodParameters:
      Name  Flags
      name  

  public boolean isFlagEnabled(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
        start local 1 // java.lang.String name
         0: .line 83
            aload 0 /* this */
            getfield io.vertx.core.cli.impl.DefaultCommandLine.cli:Lio/vertx/core/cli/CLI;
            aload 1 /* name */
            invokeinterface io.vertx.core.cli.CLI.getOption:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
            astore 2 /* option */
        start local 2 // io.vertx.core.cli.Option option
         1: .line 84
            aload 2 /* option */
            ifnonnull 3
         2: .line 85
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Cannot find the option '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 87
      StackMap locals: io.vertx.core.cli.Option
      StackMap stack:
            aload 2 /* option */
            invokevirtual io.vertx.core.cli.Option.isFlag:()Z
            ifeq 5
         4: .line 88
            aload 0 /* this */
            getfield io.vertx.core.cli.impl.DefaultCommandLine.optionsSeenInCommandLine:Ljava/util/List;
            aload 2 /* option */
            invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
            ireturn
         5: .line 90
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Cannot retrieve the flag value on a non-flag option ("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // io.vertx.core.cli.Option option
        end local 1 // java.lang.String name
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lio/vertx/core/cli/impl/DefaultCommandLine;
            0    6     1    name  Ljava/lang/String;
            1    6     2  option  Lio/vertx/core/cli/Option;
    MethodParameters:
      Name  Flags
      name  

  public <T> java.util.List<T> getOptionValues(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
        start local 1 // java.lang.String name
         0: .line 97
            aload 0 /* this */
            getfield io.vertx.core.cli.impl.DefaultCommandLine.cli:Lio/vertx/core/cli/CLI;
            aload 1 /* name */
            invokeinterface io.vertx.core.cli.CLI.getOption:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
            astore 2 /* option */
        start local 2 // io.vertx.core.cli.Option option
         1: .line 98
            aload 2 /* option */
            ifnonnull 3
         2: .line 99
            aconst_null
            areturn
         3: .line 101
      StackMap locals: io.vertx.core.cli.Option
      StackMap stack:
            aload 2 /* option */
            instanceof io.vertx.core.cli.TypedOption
            ifeq 10
         4: .line 102
            aload 2 /* option */
            checkcast io.vertx.core.cli.TypedOption
            astore 3 /* typed */
        start local 3 // io.vertx.core.cli.TypedOption typed
         5: .line 103
            aload 3 /* typed */
            invokevirtual io.vertx.core.cli.TypedOption.isParsedAsList:()Z
            ifeq 7
         6: .line 104
            aload 0 /* this */
            aload 2 /* option */
            invokevirtual io.vertx.core.cli.impl.DefaultCommandLine.getRawValueForOption:(Lio/vertx/core/cli/Option;)Ljava/lang/String;
            aload 3 /* typed */
            invokestatic io.vertx.core.cli.impl.DefaultCommandLine.createFromList:(Ljava/lang/String;Lio/vertx/core/cli/TypedOption;)Ljava/util/List;
            areturn
         7: .line 106
      StackMap locals: io.vertx.core.cli.TypedOption
      StackMap stack:
            aload 0 /* this */
            aload 2 /* option */
            invokevirtual io.vertx.core.cli.impl.DefaultCommandLine.getRawValuesForOption:(Lio/vertx/core/cli/Option;)Ljava/util/List;
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
            aload 3 /* typed */
            invokedynamic apply(Lio/vertx/core/cli/TypedOption;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  io/vertx/core/cli/impl/DefaultCommandLine.lambda$0(Lio/vertx/core/cli/TypedOption;Ljava/lang/String;)Ljava/lang/Object; (6)
                  (Ljava/lang/String;)Ljava/lang/Object;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         8: .line 107
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
         9: .line 106
            areturn
        end local 3 // io.vertx.core.cli.TypedOption typed
        10: .line 110
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* option */
            invokevirtual io.vertx.core.cli.impl.DefaultCommandLine.getRawValuesForOption:(Lio/vertx/core/cli/Option;)Ljava/util/List;
            areturn
        end local 2 // io.vertx.core.cli.Option option
        end local 1 // java.lang.String name
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Lio/vertx/core/cli/impl/DefaultCommandLine;
            0   11     1    name  Ljava/lang/String;
            1   11     2  option  Lio/vertx/core/cli/Option;
            5   10     3   typed  Lio/vertx/core/cli/TypedOption<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/String;)Ljava/util/List<TT;>;
    MethodParameters:
      Name  Flags
      name  

  public <T> java.util.List<T> getArgumentValues(int);
    descriptor: (I)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
        start local 1 // int index
         0: .line 125
            aload 0 /* this */
            getfield io.vertx.core.cli.impl.DefaultCommandLine.cli:Lio/vertx/core/cli/CLI;
            iload 1 /* index */
            invokeinterface io.vertx.core.cli.CLI.getArgument:(I)Lio/vertx/core/cli/Argument;
            astore 2 /* argument */
        start local 2 // io.vertx.core.cli.Argument argument
         1: .line 126
            aload 2 /* argument */
            ifnonnull 3
         2: .line 127
            aconst_null
            areturn
         3: .line 129
      StackMap locals: io.vertx.core.cli.Argument
      StackMap stack:
            aload 2 /* argument */
            instanceof io.vertx.core.cli.TypedArgument
            ifeq 8
         4: .line 130
            aload 2 /* argument */
            checkcast io.vertx.core.cli.TypedArgument
            astore 3 /* typed */
        start local 3 // io.vertx.core.cli.TypedArgument typed
         5: .line 131
            aload 0 /* this */
            aload 3 /* typed */
            invokevirtual io.vertx.core.cli.impl.DefaultCommandLine.getRawValuesForArgument:(Lio/vertx/core/cli/Argument;)Ljava/util/List;
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
            aload 3 /* typed */
            invokedynamic apply(Lio/vertx/core/cli/TypedArgument;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  io/vertx/core/cli/impl/DefaultCommandLine.lambda$1(Lio/vertx/core/cli/TypedArgument;Ljava/lang/String;)Ljava/lang/Object; (6)
                  (Ljava/lang/String;)Ljava/lang/Object;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         6: .line 132
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
         7: .line 131
            areturn
        end local 3 // io.vertx.core.cli.TypedArgument typed
         8: .line 134
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* argument */
            invokevirtual io.vertx.core.cli.impl.DefaultCommandLine.getRawValuesForArgument:(Lio/vertx/core/cli/Argument;)Ljava/util/List;
            areturn
        end local 2 // io.vertx.core.cli.Argument argument
        end local 1 // int index
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lio/vertx/core/cli/impl/DefaultCommandLine;
            0    9     1     index  I
            1    9     2  argument  Lio/vertx/core/cli/Argument;
            5    8     3     typed  Lio/vertx/core/cli/TypedArgument<TT;>;
    Signature: <T:Ljava/lang/Object;>(I)Ljava/util/List<TT;>;
    MethodParameters:
       Name  Flags
      index  

  public <T> T getArgumentValue(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
        start local 1 // java.lang.String name
         0: .line 140
            aload 0 /* this */
            getfield io.vertx.core.cli.impl.DefaultCommandLine.cli:Lio/vertx/core/cli/CLI;
            aload 1 /* name */
            invokeinterface io.vertx.core.cli.CLI.getArgument:(Ljava/lang/String;)Lio/vertx/core/cli/Argument;
            astore 2 /* arg */
        start local 2 // io.vertx.core.cli.Argument arg
         1: .line 141
            aload 2 /* arg */
            ifnonnull 3
         2: .line 142
            aconst_null
            areturn
         3: .line 144
      StackMap locals: io.vertx.core.cli.Argument
      StackMap stack:
            aload 0 /* this */
            aload 2 /* arg */
            invokevirtual io.vertx.core.cli.Argument.getIndex:()I
            invokevirtual io.vertx.core.cli.impl.DefaultCommandLine.getArgumentValue:(I)Ljava/lang/Object;
            areturn
        end local 2 // io.vertx.core.cli.Argument arg
        end local 1 // java.lang.String name
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lio/vertx/core/cli/impl/DefaultCommandLine;
            0    4     1  name  Ljava/lang/String;
            1    4     2   arg  Lio/vertx/core/cli/Argument;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/String;)TT;
    MethodParameters:
      Name  Flags
      name  

  public <T> T getArgumentValue();
    descriptor: (I)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
        start local 1 // int index
         0: .line 150
            aload 0 /* this */
            getfield io.vertx.core.cli.impl.DefaultCommandLine.cli:Lio/vertx/core/cli/CLI;
            iload 1 /* index */
            invokeinterface io.vertx.core.cli.CLI.getArgument:(I)Lio/vertx/core/cli/Argument;
            astore 2 /* arg */
        start local 2 // io.vertx.core.cli.Argument arg
         1: .line 151
            aload 2 /* arg */
            ifnonnull 3
         2: .line 152
            aconst_null
            areturn
         3: .line 154
      StackMap locals: io.vertx.core.cli.Argument
      StackMap stack:
            aload 2 /* arg */
            instanceof io.vertx.core.cli.TypedArgument
            ifeq 5
         4: .line 155
            aload 0 /* this */
            aload 2 /* arg */
            invokevirtual io.vertx.core.cli.impl.DefaultCommandLine.getRawValueForArgument:(Lio/vertx/core/cli/Argument;)Ljava/lang/String;
            aload 2 /* arg */
            checkcast io.vertx.core.cli.TypedArgument
            invokestatic io.vertx.core.cli.impl.DefaultCommandLine.create:(Ljava/lang/String;Lio/vertx/core/cli/TypedArgument;)Ljava/lang/Object;
            areturn
         5: .line 157
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* arg */
            invokevirtual io.vertx.core.cli.impl.DefaultCommandLine.getRawValueForArgument:(Lio/vertx/core/cli/Argument;)Ljava/lang/String;
            areturn
        end local 2 // io.vertx.core.cli.Argument arg
        end local 1 // int index
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lio/vertx/core/cli/impl/DefaultCommandLine;
            0    6     1  index  I
            1    6     2    arg  Lio/vertx/core/cli/Argument;
    Signature: <T:Ljava/lang/Object;>(I)TT;
    MethodParameters:
       Name  Flags
      index  

  public boolean isOptionAssigned(io.vertx.core.cli.Option);
    descriptor: (Lio/vertx/core/cli/Option;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
        start local 1 // io.vertx.core.cli.Option option
         0: .line 163
            aload 0 /* this */
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.impl.DefaultCommandLine.getRawValuesForOption:(Lio/vertx/core/cli/Option;)Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 1 // io.vertx.core.cli.Option option
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lio/vertx/core/cli/impl/DefaultCommandLine;
            0    3     1  option  Lio/vertx/core/cli/Option;
    MethodParameters:
        Name  Flags
      option  

  public java.util.List<java.lang.String> getRawValuesForOption(io.vertx.core.cli.Option);
    descriptor: (Lio/vertx/core/cli/Option;)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
        start local 1 // io.vertx.core.cli.Option option
         0: .line 168
            aload 0 /* this */
            getfield io.vertx.core.cli.impl.DefaultCommandLine.optionValues:Ljava/util/Map;
            aload 1 /* option */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
            astore 2 /* list */
        start local 2 // java.util.List list
         1: .line 169
            aload 2 /* list */
            ifnull 3
         2: .line 170
            aload 2 /* list */
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  java/lang/Object.toString()Ljava/lang/String; (5)
                  (Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
            areturn
         3: .line 172
      StackMap locals: java.util.List
      StackMap stack:
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            areturn
        end local 2 // java.util.List list
        end local 1 // io.vertx.core.cli.Option option
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lio/vertx/core/cli/impl/DefaultCommandLine;
            0    4     1  option  Lio/vertx/core/cli/Option;
            1    4     2    list  Ljava/util/List<*>;
    Signature: (Lio/vertx/core/cli/Option;)Ljava/util/List<Ljava/lang/String;>;
    MethodParameters:
        Name  Flags
      option  

  public java.util.List<java.lang.String> getRawValuesForArgument(io.vertx.core.cli.Argument);
    descriptor: (Lio/vertx/core/cli/Argument;)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
        start local 1 // io.vertx.core.cli.Argument argument
         0: .line 177
            aload 0 /* this */
            getfield io.vertx.core.cli.impl.DefaultCommandLine.argumentValues:Ljava/util/Map;
            aload 1 /* argument */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
            astore 2 /* list */
        start local 2 // java.util.List list
         1: .line 178
            aload 2 /* list */
            ifnull 3
         2: .line 179
            aload 2 /* list */
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  java/lang/Object.toString()Ljava/lang/String; (5)
                  (Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
            areturn
         3: .line 181
      StackMap locals: java.util.List
      StackMap stack:
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            areturn
        end local 2 // java.util.List list
        end local 1 // io.vertx.core.cli.Argument argument
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lio/vertx/core/cli/impl/DefaultCommandLine;
            0    4     1  argument  Lio/vertx/core/cli/Argument;
            1    4     2      list  Ljava/util/List<*>;
    Signature: (Lio/vertx/core/cli/Argument;)Ljava/util/List<Ljava/lang/String;>;
    MethodParameters:
          Name  Flags
      argument  

  public io.vertx.core.cli.impl.DefaultCommandLine addRawValue(io.vertx.core.cli.Option, java.lang.String);
    descriptor: (Lio/vertx/core/cli/Option;Ljava/lang/String;)Lio/vertx/core/cli/impl/DefaultCommandLine;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
        start local 1 // io.vertx.core.cli.Option option
        start local 2 // java.lang.String value
         0: .line 185
            aload 0 /* this */
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.impl.DefaultCommandLine.acceptMoreValues:(Lio/vertx/core/cli/Option;)Z
            ifne 4
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.Option.isFlag:()Z
            ifne 4
         1: .line 186
            new io.vertx.core.cli.CLIException
            dup
            new java.lang.StringBuilder
            dup
            ldc "The option "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.Option.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " does not accept value or has "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         2: .line 187
            ldc "already been set"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 186
            invokespecial io.vertx.core.cli.CLIException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 189
      StackMap locals:
      StackMap stack:
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.Option.getChoices:()Ljava/util/Set;
            invokeinterface java.util.Set.isEmpty:()Z
            ifne 6
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.Option.getChoices:()Ljava/util/Set;
            aload 2 /* value */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 6
         5: .line 190
            new io.vertx.core.cli.InvalidValueException
            dup
            aload 1 /* option */
            aload 2 /* value */
            invokespecial io.vertx.core.cli.InvalidValueException.<init>:(Lio/vertx/core/cli/Option;Ljava/lang/String;)V
            athrow
         6: .line 192
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.vertx.core.cli.impl.DefaultCommandLine.optionValues:Ljava/util/Map;
            aload 1 /* option */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
            astore 3 /* list */
        start local 3 // java.util.List list
         7: .line 193
            aload 3 /* list */
            ifnonnull 10
         8: .line 194
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* list */
         9: .line 195
            aload 0 /* this */
            getfield io.vertx.core.cli.impl.DefaultCommandLine.optionValues:Ljava/util/Map;
            aload 1 /* option */
            aload 3 /* list */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 197
      StackMap locals: java.util.List
      StackMap stack:
            aload 3 /* list */
            aload 2 /* value */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        11: .line 198
            aload 0 /* this */
            areturn
        end local 3 // java.util.List list
        end local 2 // java.lang.String value
        end local 1 // io.vertx.core.cli.Option option
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   12     0    this  Lio/vertx/core/cli/impl/DefaultCommandLine;
            0   12     1  option  Lio/vertx/core/cli/Option;
            0   12     2   value  Ljava/lang/String;
            7   12     3    list  Ljava/util/List<Ljava/lang/String;>;
    MethodParameters:
        Name  Flags
      option  
      value   

  public java.lang.String getRawValueForOption(io.vertx.core.cli.Option);
    descriptor: (Lio/vertx/core/cli/Option;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
        start local 1 // io.vertx.core.cli.Option option
         0: .line 203
            aload 0 /* this */
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.impl.DefaultCommandLine.isOptionAssigned:(Lio/vertx/core/cli/Option;)Z
            ifeq 2
         1: .line 204
            aload 0 /* this */
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.impl.DefaultCommandLine.getRawValuesForOption:(Lio/vertx/core/cli/Option;)Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            areturn
         2: .line 206
      StackMap locals:
      StackMap stack:
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.Option.getDefaultValue:()Ljava/lang/String;
            areturn
        end local 1 // io.vertx.core.cli.Option option
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lio/vertx/core/cli/impl/DefaultCommandLine;
            0    3     1  option  Lio/vertx/core/cli/Option;
    MethodParameters:
        Name  Flags
      option  

  public boolean acceptMoreValues(io.vertx.core.cli.Option);
    descriptor: (Lio/vertx/core/cli/Option;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
        start local 1 // io.vertx.core.cli.Option option
         0: .line 211
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.Option.isMultiValued:()Z
            ifne 2
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.Option.isSingleValued:()Z
            ifeq 1
            aload 0 /* this */
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.impl.DefaultCommandLine.isOptionAssigned:(Lio/vertx/core/cli/Option;)Z
            ifeq 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_1
            ireturn
        end local 1 // io.vertx.core.cli.Option option
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lio/vertx/core/cli/impl/DefaultCommandLine;
            0    3     1  option  Lio/vertx/core/cli/Option;
    MethodParameters:
        Name  Flags
      option  

  public java.lang.String getRawValueForArgument(io.vertx.core.cli.Argument);
    descriptor: (Lio/vertx/core/cli/Argument;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
        start local 1 // io.vertx.core.cli.Argument arg
         0: .line 216
            aload 0 /* this */
            getfield io.vertx.core.cli.impl.DefaultCommandLine.argumentValues:Ljava/util/Map;
            aload 1 /* arg */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
            astore 2 /* values */
        start local 2 // java.util.List values
         1: .line 217
            aload 2 /* values */
            ifnull 2
            aload 2 /* values */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 3
         2: .line 218
      StackMap locals: java.util.List
      StackMap stack:
            aload 1 /* arg */
            invokevirtual io.vertx.core.cli.Argument.getDefaultValue:()Ljava/lang/String;
            areturn
         3: .line 220
      StackMap locals:
      StackMap stack:
            aload 2 /* values */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.util.List values
        end local 1 // io.vertx.core.cli.Argument arg
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lio/vertx/core/cli/impl/DefaultCommandLine;
            0    4     1     arg  Lio/vertx/core/cli/Argument;
            1    4     2  values  Ljava/util/List;
    MethodParameters:
      Name  Flags
      arg   

  public io.vertx.core.cli.impl.DefaultCommandLine setRawValue(io.vertx.core.cli.Argument, java.lang.String);
    descriptor: (Lio/vertx/core/cli/Argument;Ljava/lang/String;)Lio/vertx/core/cli/impl/DefaultCommandLine;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
        start local 1 // io.vertx.core.cli.Argument arg
        start local 2 // java.lang.String rawValue
         0: .line 224
            aload 0 /* this */
            getfield io.vertx.core.cli.impl.DefaultCommandLine.argumentValues:Ljava/util/Map;
            aload 1 /* arg */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
            astore 3 /* list */
        start local 3 // java.util.List list
         1: .line 225
            aload 3 /* list */
            ifnonnull 4
         2: .line 226
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* list */
         3: .line 227
            aload 0 /* this */
            getfield io.vertx.core.cli.impl.DefaultCommandLine.argumentValues:Ljava/util/Map;
            aload 1 /* arg */
            aload 3 /* list */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 229
      StackMap locals: java.util.List
      StackMap stack:
            aload 3 /* list */
            aload 2 /* rawValue */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         5: .line 230
            aload 0 /* this */
            areturn
        end local 3 // java.util.List list
        end local 2 // java.lang.String rawValue
        end local 1 // io.vertx.core.cli.Argument arg
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lio/vertx/core/cli/impl/DefaultCommandLine;
            0    6     1       arg  Lio/vertx/core/cli/Argument;
            0    6     2  rawValue  Ljava/lang/String;
            1    6     3      list  Ljava/util/List<Ljava/lang/String;>;
    MethodParameters:
          Name  Flags
      arg       
      rawValue  

  public boolean isArgumentAssigned(io.vertx.core.cli.Argument);
    descriptor: (Lio/vertx/core/cli/Argument;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
        start local 1 // io.vertx.core.cli.Argument arg
         0: .line 235
            aload 0 /* this */
            getfield io.vertx.core.cli.impl.DefaultCommandLine.argumentValues:Ljava/util/Map;
            aload 1 /* arg */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // io.vertx.core.cli.Argument arg
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/core/cli/impl/DefaultCommandLine;
            0    2     1   arg  Lio/vertx/core/cli/Argument;
    MethodParameters:
      Name  Flags
      arg   

  public io.vertx.core.cli.impl.DefaultCommandLine setSeenInCommandLine(io.vertx.core.cli.Option);
    descriptor: (Lio/vertx/core/cli/Option;)Lio/vertx/core/cli/impl/DefaultCommandLine;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
        start local 1 // io.vertx.core.cli.Option option
         0: .line 245
            aload 0 /* this */
            getfield io.vertx.core.cli.impl.DefaultCommandLine.optionsSeenInCommandLine:Ljava/util/List;
            aload 1 /* option */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         1: .line 246
            aload 0 /* this */
            areturn
        end local 1 // io.vertx.core.cli.Option option
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lio/vertx/core/cli/impl/DefaultCommandLine;
            0    2     1  option  Lio/vertx/core/cli/Option;
    MethodParameters:
        Name  Flags
      option  

  public boolean isSeenInCommandLine(io.vertx.core.cli.Option);
    descriptor: (Lio/vertx/core/cli/Option;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
        start local 1 // io.vertx.core.cli.Option option
         0: .line 251
            aload 0 /* this */
            getfield io.vertx.core.cli.impl.DefaultCommandLine.optionsSeenInCommandLine:Ljava/util/List;
            aload 1 /* option */
            invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // io.vertx.core.cli.Option option
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lio/vertx/core/cli/impl/DefaultCommandLine;
            0    1     1  option  Lio/vertx/core/cli/Option;
    MethodParameters:
        Name  Flags
      option  

  private <T> T getValue(io.vertx.core.cli.TypedOption<T>);
    descriptor: (Lio/vertx/core/cli/TypedOption;)Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
        start local 1 // io.vertx.core.cli.TypedOption option
         0: .line 256
            aload 0 /* this */
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.impl.DefaultCommandLine.isOptionAssigned:(Lio/vertx/core/cli/Option;)Z
            ifeq 2
         1: .line 257
            aload 0 /* this */
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.impl.DefaultCommandLine.getRawValueForOption:(Lio/vertx/core/cli/Option;)Ljava/lang/String;
            aload 1 /* option */
            invokestatic io.vertx.core.cli.impl.DefaultCommandLine.create:(Ljava/lang/String;Lio/vertx/core/cli/TypedOption;)Ljava/lang/Object;
            areturn
         2: .line 259
      StackMap locals:
      StackMap stack:
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.TypedOption.getDefaultValue:()Ljava/lang/String;
            ifnull 4
         3: .line 260
            aload 0 /* this */
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.impl.DefaultCommandLine.getRawValueForOption:(Lio/vertx/core/cli/Option;)Ljava/lang/String;
            aload 1 /* option */
            invokestatic io.vertx.core.cli.impl.DefaultCommandLine.create:(Ljava/lang/String;Lio/vertx/core/cli/TypedOption;)Ljava/lang/Object;
            areturn
         4: .line 262
      StackMap locals:
      StackMap stack:
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.TypedOption.isFlag:()Z
            ifne 5
            aload 0 /* this */
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.impl.DefaultCommandLine.isBoolean:(Lio/vertx/core/cli/TypedOption;)Z
            ifeq 12
         5: .line 264
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.impl.DefaultCommandLine.isSeenInCommandLine:(Lio/vertx/core/cli/Option;)Z
            ifeq 8
         6: .line 265
            getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
         7: areturn
         8: .line 267
      StackMap locals:
      StackMap stack:
            getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
         9: areturn
        10: .line 269
      StackMap locals:
      StackMap stack: io.vertx.core.cli.InvalidValueException
            astore 2 /* e */
        start local 2 // io.vertx.core.cli.InvalidValueException e
        11: .line 270
            new java.lang.IllegalArgumentException
            dup
            aload 2 /* e */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 2 // io.vertx.core.cli.InvalidValueException e
        12: .line 274
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // io.vertx.core.cli.TypedOption option
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   13     0    this  Lio/vertx/core/cli/impl/DefaultCommandLine;
            0   13     1  option  Lio/vertx/core/cli/TypedOption<TT;>;
           11   12     2       e  Lio/vertx/core/cli/InvalidValueException;
      Exception table:
        from    to  target  type
           5     7      10  Class io.vertx.core.cli.InvalidValueException
           8     9      10  Class io.vertx.core.cli.InvalidValueException
    Signature: <T:Ljava/lang/Object;>(Lio/vertx/core/cli/TypedOption<TT;>;)TT;
    MethodParameters:
        Name  Flags
      option  

  private boolean isBoolean(io.vertx.core.cli.TypedOption);
    descriptor: (Lio/vertx/core/cli/TypedOption;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
        start local 1 // io.vertx.core.cli.TypedOption option
         0: .line 278
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.TypedOption.getType:()Ljava/lang/Class;
            astore 2 /* type */
        start local 2 // java.lang.Class type
         1: .line 279
            aload 2 /* type */
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            if_acmpeq 2
            aload 2 /* type */
            ldc Ljava/lang/Boolean;
            if_acmpeq 2
            iconst_0
            ireturn
      StackMap locals: java.lang.Class
      StackMap stack:
         2: iconst_1
            ireturn
        end local 2 // java.lang.Class type
        end local 1 // io.vertx.core.cli.TypedOption option
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lio/vertx/core/cli/impl/DefaultCommandLine;
            0    3     1  option  Lio/vertx/core/cli/TypedOption;
            1    3     2    type  Ljava/lang/Class;
    MethodParameters:
        Name  Flags
      option  

  public static <T> T create(java.lang.String, io.vertx.core.cli.TypedArgument<T>);
    descriptor: (Ljava/lang/String;Lio/vertx/core/cli/TypedArgument;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // java.lang.String value
        start local 1 // io.vertx.core.cli.TypedArgument argument
         0: .line 289
            aload 1 /* argument */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 290
            aload 0 /* value */
            ifnonnull 3
         2: .line 291
            aload 1 /* argument */
            invokevirtual io.vertx.core.cli.TypedArgument.getDefaultValue:()Ljava/lang/String;
            astore 0 /* value */
         3: .line 294
      StackMap locals:
      StackMap stack:
            aload 0 /* value */
            ifnonnull 5
         4: .line 295
            aconst_null
            areturn
         5: .line 299
      StackMap locals:
      StackMap stack:
            aload 1 /* argument */
            invokevirtual io.vertx.core.cli.TypedArgument.getConverter:()Lio/vertx/core/cli/converters/Converter;
            ifnull 8
         6: .line 300
            aload 0 /* value */
            aload 1 /* argument */
            invokevirtual io.vertx.core.cli.TypedArgument.getConverter:()Lio/vertx/core/cli/converters/Converter;
            invokestatic io.vertx.core.cli.converters.Converters.create:(Ljava/lang/String;Lio/vertx/core/cli/converters/Converter;)Ljava/lang/Object;
         7: areturn
         8: .line 302
      StackMap locals:
      StackMap stack:
            aload 1 /* argument */
            invokevirtual io.vertx.core.cli.TypedArgument.getType:()Ljava/lang/Class;
            aload 0 /* value */
            invokestatic io.vertx.core.cli.converters.Converters.create:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Object;
         9: areturn
        10: .line 304
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 2 /* e */
        start local 2 // java.lang.Exception e
        11: .line 305
            new io.vertx.core.cli.InvalidValueException
            dup
            aload 1 /* argument */
            aload 0 /* value */
            aload 2 /* e */
            invokespecial io.vertx.core.cli.InvalidValueException.<init>:(Lio/vertx/core/cli/Argument;Ljava/lang/String;Ljava/lang/Exception;)V
            athrow
        end local 2 // java.lang.Exception e
        end local 1 // io.vertx.core.cli.TypedArgument argument
        end local 0 // java.lang.String value
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0     value  Ljava/lang/String;
            0   12     1  argument  Lio/vertx/core/cli/TypedArgument<TT;>;
           11   12     2         e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           5     7      10  Class java.lang.Exception
           8     9      10  Class java.lang.Exception
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/String;Lio/vertx/core/cli/TypedArgument<TT;>;)TT;
    MethodParameters:
          Name  Flags
      value     
      argument  

  public static <T> T create(java.lang.String, io.vertx.core.cli.TypedOption<T>);
    descriptor: (Ljava/lang/String;Lio/vertx/core/cli/TypedOption;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // java.lang.String value
        start local 1 // io.vertx.core.cli.TypedOption option
         0: .line 316
            aload 1 /* option */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 317
            aload 0 /* value */
            ifnonnull 3
         2: .line 318
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.TypedOption.getDefaultValue:()Ljava/lang/String;
            astore 0 /* value */
         3: .line 321
      StackMap locals:
      StackMap stack:
            aload 0 /* value */
            ifnonnull 5
         4: .line 322
            aconst_null
            areturn
         5: .line 326
      StackMap locals:
      StackMap stack:
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.TypedOption.getConverter:()Lio/vertx/core/cli/converters/Converter;
            ifnull 8
         6: .line 327
            aload 0 /* value */
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.TypedOption.getConverter:()Lio/vertx/core/cli/converters/Converter;
            invokestatic io.vertx.core.cli.converters.Converters.create:(Ljava/lang/String;Lio/vertx/core/cli/converters/Converter;)Ljava/lang/Object;
         7: areturn
         8: .line 329
      StackMap locals:
      StackMap stack:
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.TypedOption.getType:()Ljava/lang/Class;
            aload 0 /* value */
            invokestatic io.vertx.core.cli.converters.Converters.create:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Object;
         9: areturn
        10: .line 331
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 2 /* e */
        start local 2 // java.lang.Exception e
        11: .line 332
            new io.vertx.core.cli.InvalidValueException
            dup
            aload 1 /* option */
            aload 0 /* value */
            aload 2 /* e */
            invokespecial io.vertx.core.cli.InvalidValueException.<init>:(Lio/vertx/core/cli/Option;Ljava/lang/String;Ljava/lang/Exception;)V
            athrow
        end local 2 // java.lang.Exception e
        end local 1 // io.vertx.core.cli.TypedOption option
        end local 0 // java.lang.String value
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   12     0   value  Ljava/lang/String;
            0   12     1  option  Lio/vertx/core/cli/TypedOption<TT;>;
           11   12     2       e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           5     7      10  Class java.lang.Exception
           8     9      10  Class java.lang.Exception
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/String;Lio/vertx/core/cli/TypedOption<TT;>;)TT;
    MethodParameters:
        Name  Flags
      value   
      option  

  public static <T> java.util.List<T> createFromList(java.lang.String, io.vertx.core.cli.TypedOption<T>);
    descriptor: (Ljava/lang/String;Lio/vertx/core/cli/TypedOption;)Ljava/util/List;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.lang.String raw
        start local 1 // io.vertx.core.cli.TypedOption option
         0: .line 338
            aload 0 /* raw */
            ifnonnull 2
         1: .line 339
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            areturn
         2: .line 341
      StackMap locals:
      StackMap stack:
            aload 0 /* raw */
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.TypedOption.getListSeparator:()Ljava/lang/String;
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            astore 2 /* segments */
        start local 2 // java.lang.String[] segments
         3: .line 342
            aload 2 /* segments */
            invokestatic java.util.Arrays.stream:([Ljava/lang/Object;)Ljava/util/stream/Stream;
            aload 1 /* option */
            invokedynamic apply(Lio/vertx/core/cli/TypedOption;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  io/vertx/core/cli/impl/DefaultCommandLine.lambda$4(Lio/vertx/core/cli/TypedOption;Ljava/lang/String;)Ljava/lang/Object; (6)
                  (Ljava/lang/String;)Ljava/lang/Object;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
            areturn
        end local 2 // java.lang.String[] segments
        end local 1 // io.vertx.core.cli.TypedOption option
        end local 0 // java.lang.String raw
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0       raw  Ljava/lang/String;
            0    4     1    option  Lio/vertx/core/cli/TypedOption<TT;>;
            3    4     2  segments  [Ljava/lang/String;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/String;Lio/vertx/core/cli/TypedOption<TT;>;)Ljava/util/List<TT;>;
    MethodParameters:
        Name  Flags
      raw     
      option  

  public boolean isValid();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
         0: .line 353
            aload 0 /* this */
            getfield io.vertx.core.cli.impl.DefaultCommandLine.valid:Z
            ireturn
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/cli/impl/DefaultCommandLine;

  void setValidity(boolean);
    descriptor: (Z)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
        start local 1 // boolean validity
         0: .line 362
            aload 0 /* this */
            iload 1 /* validity */
            putfield io.vertx.core.cli.impl.DefaultCommandLine.valid:Z
         1: .line 363
            return
        end local 1 // boolean validity
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lio/vertx/core/cli/impl/DefaultCommandLine;
            0    2     1  validity  Z
    MethodParameters:
          Name  Flags
      validity  

  public boolean isAskingForHelp();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
         0: .line 372
            aload 0 /* this */
            getfield io.vertx.core.cli.impl.DefaultCommandLine.cli:Lio/vertx/core/cli/CLI;
            invokeinterface io.vertx.core.cli.CLI.getOptions:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2
            goto 4
      StackMap locals: io.vertx.core.cli.impl.DefaultCommandLine top java.util.Iterator
      StackMap stack:
         1: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast io.vertx.core.cli.Option
            astore 1 /* option */
        start local 1 // io.vertx.core.cli.Option option
         2: .line 373
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.Option.isHelp:()Z
            ifeq 4
            aload 0 /* this */
            aload 1 /* option */
            invokevirtual io.vertx.core.cli.impl.DefaultCommandLine.isSeenInCommandLine:(Lio/vertx/core/cli/Option;)Z
            ifeq 4
         3: .line 374
            iconst_1
            ireturn
        end local 1 // io.vertx.core.cli.Option option
         4: .line 372
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 377
            iconst_0
            ireturn
        end local 0 // io.vertx.core.cli.impl.DefaultCommandLine this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lio/vertx/core/cli/impl/DefaultCommandLine;
            2    4     1  option  Lio/vertx/core/cli/Option;

  private static java.lang.Object lambda$0(io.vertx.core.cli.TypedOption, java.lang.String);
    descriptor: (Lio/vertx/core/cli/TypedOption;Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // java.lang.String s
         0: .line 106
            aload 1 /* s */
            aload 0
            invokestatic io.vertx.core.cli.impl.DefaultCommandLine.create:(Ljava/lang/String;Lio/vertx/core/cli/TypedOption;)Ljava/lang/Object;
            areturn
        end local 1 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1     s  Ljava/lang/String;

  private static java.lang.Object lambda$1(io.vertx.core.cli.TypedArgument, java.lang.String);
    descriptor: (Lio/vertx/core/cli/TypedArgument;Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // java.lang.String s
         0: .line 131
            aload 1 /* s */
            aload 0
            invokestatic io.vertx.core.cli.impl.DefaultCommandLine.create:(Ljava/lang/String;Lio/vertx/core/cli/TypedArgument;)Ljava/lang/Object;
            areturn
        end local 1 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1     s  Ljava/lang/String;

  private static java.lang.Object lambda$4(io.vertx.core.cli.TypedOption, java.lang.String);
    descriptor: (Lio/vertx/core/cli/TypedOption;Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // java.lang.String s
         0: .line 342
            aload 1 /* s */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            aload 0
            invokestatic io.vertx.core.cli.impl.DefaultCommandLine.create:(Ljava/lang/String;Lio/vertx/core/cli/TypedOption;)Ljava/lang/Object;
            areturn
        end local 1 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1     s  Ljava/lang/String;
}
SourceFile: "DefaultCommandLine.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles