public class examples.cli.CLIExamples
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: examples.cli.CLIExamples
  super_class: java.lang.Object
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // examples.cli.CLIExamples this
         0: .line 26
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // examples.cli.CLIExamples this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lexamples/cli/CLIExamples;

  public void example1();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // examples.cli.CLIExamples this
         0: .line 29
            ldc "copy"
            invokestatic io.vertx.core.cli.CLI.create:(Ljava/lang/String;)Lio/vertx/core/cli/CLI;
         1: .line 30
            ldc "A command line interface to copy files."
            invokeinterface io.vertx.core.cli.CLI.setSummary:(Ljava/lang/String;)Lio/vertx/core/cli/CLI;
         2: .line 31
            new io.vertx.core.cli.Option
            dup
            invokespecial io.vertx.core.cli.Option.<init>:()V
         3: .line 32
            ldc "directory"
            invokevirtual io.vertx.core.cli.Option.setLongName:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
         4: .line 33
            ldc "R"
            invokevirtual io.vertx.core.cli.Option.setShortName:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
         5: .line 34
            ldc "enables directory support"
            invokevirtual io.vertx.core.cli.Option.setDescription:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
         6: .line 35
            iconst_1
            invokevirtual io.vertx.core.cli.Option.setFlag:(Z)Lio/vertx/core/cli/Option;
         7: .line 31
            invokeinterface io.vertx.core.cli.CLI.addOption:(Lio/vertx/core/cli/Option;)Lio/vertx/core/cli/CLI;
         8: .line 36
            new io.vertx.core.cli.Argument
            dup
            invokespecial io.vertx.core.cli.Argument.<init>:()V
         9: .line 37
            iconst_0
            invokevirtual io.vertx.core.cli.Argument.setIndex:(I)Lio/vertx/core/cli/Argument;
        10: .line 38
            ldc "The source"
            invokevirtual io.vertx.core.cli.Argument.setDescription:(Ljava/lang/String;)Lio/vertx/core/cli/Argument;
        11: .line 39
            ldc "source"
            invokevirtual io.vertx.core.cli.Argument.setArgName:(Ljava/lang/String;)Lio/vertx/core/cli/Argument;
        12: .line 36
            invokeinterface io.vertx.core.cli.CLI.addArgument:(Lio/vertx/core/cli/Argument;)Lio/vertx/core/cli/CLI;
        13: .line 40
            new io.vertx.core.cli.Argument
            dup
            invokespecial io.vertx.core.cli.Argument.<init>:()V
        14: .line 41
            iconst_1
            invokevirtual io.vertx.core.cli.Argument.setIndex:(I)Lio/vertx/core/cli/Argument;
        15: .line 42
            ldc "The destination"
            invokevirtual io.vertx.core.cli.Argument.setDescription:(Ljava/lang/String;)Lio/vertx/core/cli/Argument;
        16: .line 43
            ldc "target"
            invokevirtual io.vertx.core.cli.Argument.setArgName:(Ljava/lang/String;)Lio/vertx/core/cli/Argument;
        17: .line 40
            invokeinterface io.vertx.core.cli.CLI.addArgument:(Lio/vertx/core/cli/Argument;)Lio/vertx/core/cli/CLI;
            pop
        18: .line 44
            return
        end local 0 // examples.cli.CLIExamples this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   19     0  this  Lexamples/cli/CLIExamples;

  public void example2();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // examples.cli.CLIExamples this
         0: .line 47
            ldc "some-name"
            invokestatic io.vertx.core.cli.CLI.create:(Ljava/lang/String;)Lio/vertx/core/cli/CLI;
         1: .line 48
            ldc "A command line interface illustrating the options valuation."
            invokeinterface io.vertx.core.cli.CLI.setSummary:(Ljava/lang/String;)Lio/vertx/core/cli/CLI;
         2: .line 49
            new io.vertx.core.cli.Option
            dup
            invokespecial io.vertx.core.cli.Option.<init>:()V
         3: .line 50
            ldc "flag"
            invokevirtual io.vertx.core.cli.Option.setLongName:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
            ldc "f"
            invokevirtual io.vertx.core.cli.Option.setShortName:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
            iconst_1
            invokevirtual io.vertx.core.cli.Option.setFlag:(Z)Lio/vertx/core/cli/Option;
            ldc "a flag"
            invokevirtual io.vertx.core.cli.Option.setDescription:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
         4: .line 49
            invokeinterface io.vertx.core.cli.CLI.addOption:(Lio/vertx/core/cli/Option;)Lio/vertx/core/cli/CLI;
         5: .line 51
            new io.vertx.core.cli.Option
            dup
            invokespecial io.vertx.core.cli.Option.<init>:()V
         6: .line 52
            ldc "single"
            invokevirtual io.vertx.core.cli.Option.setLongName:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
            ldc "s"
            invokevirtual io.vertx.core.cli.Option.setShortName:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
            ldc "a single-valued option"
            invokevirtual io.vertx.core.cli.Option.setDescription:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
         7: .line 51
            invokeinterface io.vertx.core.cli.CLI.addOption:(Lio/vertx/core/cli/Option;)Lio/vertx/core/cli/CLI;
         8: .line 53
            new io.vertx.core.cli.Option
            dup
            invokespecial io.vertx.core.cli.Option.<init>:()V
         9: .line 54
            ldc "multiple"
            invokevirtual io.vertx.core.cli.Option.setLongName:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
            ldc "m"
            invokevirtual io.vertx.core.cli.Option.setShortName:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
            iconst_1
            invokevirtual io.vertx.core.cli.Option.setMultiValued:(Z)Lio/vertx/core/cli/Option;
        10: .line 55
            ldc "a multi-valued option"
            invokevirtual io.vertx.core.cli.Option.setDescription:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
        11: .line 53
            invokeinterface io.vertx.core.cli.CLI.addOption:(Lio/vertx/core/cli/Option;)Lio/vertx/core/cli/CLI;
            pop
        12: .line 56
            return
        end local 0 // examples.cli.CLIExamples this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Lexamples/cli/CLIExamples;

  public void example3();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // examples.cli.CLIExamples this
         0: .line 59
            ldc "some-name"
            invokestatic io.vertx.core.cli.CLI.create:(Ljava/lang/String;)Lio/vertx/core/cli/CLI;
         1: .line 60
            new io.vertx.core.cli.Option
            dup
            invokespecial io.vertx.core.cli.Option.<init>:()V
         2: .line 61
            ldc "mandatory"
            invokevirtual io.vertx.core.cli.Option.setLongName:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
         3: .line 62
            iconst_1
            invokevirtual io.vertx.core.cli.Option.setRequired:(Z)Lio/vertx/core/cli/Option;
         4: .line 63
            ldc "a mandatory option"
            invokevirtual io.vertx.core.cli.Option.setDescription:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
         5: .line 60
            invokeinterface io.vertx.core.cli.CLI.addOption:(Lio/vertx/core/cli/Option;)Lio/vertx/core/cli/CLI;
            pop
         6: .line 64
            return
        end local 0 // examples.cli.CLIExamples this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lexamples/cli/CLIExamples;

  public void example4();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // examples.cli.CLIExamples this
         0: .line 67
            ldc "some-name"
            invokestatic io.vertx.core.cli.CLI.create:(Ljava/lang/String;)Lio/vertx/core/cli/CLI;
         1: .line 68
            new io.vertx.core.cli.Option
            dup
            invokespecial io.vertx.core.cli.Option.<init>:()V
         2: .line 69
            ldc "optional"
            invokevirtual io.vertx.core.cli.Option.setLongName:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
         3: .line 70
            ldc "hello"
            invokevirtual io.vertx.core.cli.Option.setDefaultValue:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
         4: .line 71
            ldc "an optional option with a default value"
            invokevirtual io.vertx.core.cli.Option.setDescription:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
         5: .line 68
            invokeinterface io.vertx.core.cli.CLI.addOption:(Lio/vertx/core/cli/Option;)Lio/vertx/core/cli/CLI;
            pop
         6: .line 72
            return
        end local 0 // examples.cli.CLIExamples this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lexamples/cli/CLIExamples;

  public void example41();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // examples.cli.CLIExamples this
         0: .line 75
            ldc "some-name"
            invokestatic io.vertx.core.cli.CLI.create:(Ljava/lang/String;)Lio/vertx/core/cli/CLI;
         1: .line 76
            new io.vertx.core.cli.Option
            dup
            invokespecial io.vertx.core.cli.Option.<init>:()V
         2: .line 77
            ldc "color"
            invokevirtual io.vertx.core.cli.Option.setLongName:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
         3: .line 78
            ldc "green"
            invokevirtual io.vertx.core.cli.Option.setDefaultValue:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
         4: .line 79
            ldc "blue"
            invokevirtual io.vertx.core.cli.Option.addChoice:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
            ldc "red"
            invokevirtual io.vertx.core.cli.Option.addChoice:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
            ldc "green"
            invokevirtual io.vertx.core.cli.Option.addChoice:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
         5: .line 80
            ldc "a color"
            invokevirtual io.vertx.core.cli.Option.setDescription:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
         6: .line 76
            invokeinterface io.vertx.core.cli.CLI.addOption:(Lio/vertx/core/cli/Option;)Lio/vertx/core/cli/CLI;
            pop
         7: .line 81
            return
        end local 0 // examples.cli.CLIExamples this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lexamples/cli/CLIExamples;

  public void example5();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // examples.cli.CLIExamples this
         0: .line 84
            ldc "some-name"
            invokestatic io.vertx.core.cli.CLI.create:(Ljava/lang/String;)Lio/vertx/core/cli/CLI;
         1: .line 85
            new io.vertx.core.cli.Argument
            dup
            invokespecial io.vertx.core.cli.Argument.<init>:()V
         2: .line 86
            iconst_0
            invokevirtual io.vertx.core.cli.Argument.setIndex:(I)Lio/vertx/core/cli/Argument;
         3: .line 87
            ldc "the first argument"
            invokevirtual io.vertx.core.cli.Argument.setDescription:(Ljava/lang/String;)Lio/vertx/core/cli/Argument;
         4: .line 88
            ldc "arg1"
            invokevirtual io.vertx.core.cli.Argument.setArgName:(Ljava/lang/String;)Lio/vertx/core/cli/Argument;
         5: .line 85
            invokeinterface io.vertx.core.cli.CLI.addArgument:(Lio/vertx/core/cli/Argument;)Lio/vertx/core/cli/CLI;
         6: .line 89
            new io.vertx.core.cli.Argument
            dup
            invokespecial io.vertx.core.cli.Argument.<init>:()V
         7: .line 90
            iconst_1
            invokevirtual io.vertx.core.cli.Argument.setIndex:(I)Lio/vertx/core/cli/Argument;
         8: .line 91
            ldc "the second argument"
            invokevirtual io.vertx.core.cli.Argument.setDescription:(Ljava/lang/String;)Lio/vertx/core/cli/Argument;
         9: .line 92
            ldc "arg2"
            invokevirtual io.vertx.core.cli.Argument.setArgName:(Ljava/lang/String;)Lio/vertx/core/cli/Argument;
        10: .line 89
            invokeinterface io.vertx.core.cli.CLI.addArgument:(Lio/vertx/core/cli/Argument;)Lio/vertx/core/cli/CLI;
            pop
        11: .line 93
            return
        end local 0 // examples.cli.CLIExamples this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Lexamples/cli/CLIExamples;

  public void example51();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // examples.cli.CLIExamples this
         0: .line 96
            ldc "some-name"
            invokestatic io.vertx.core.cli.CLI.create:(Ljava/lang/String;)Lio/vertx/core/cli/CLI;
         1: .line 98
            new io.vertx.core.cli.Argument
            dup
            invokespecial io.vertx.core.cli.Argument.<init>:()V
         2: .line 99
            ldc "the first argument"
            invokevirtual io.vertx.core.cli.Argument.setDescription:(Ljava/lang/String;)Lio/vertx/core/cli/Argument;
         3: .line 100
            ldc "arg1"
            invokevirtual io.vertx.core.cli.Argument.setArgName:(Ljava/lang/String;)Lio/vertx/core/cli/Argument;
         4: .line 98
            invokeinterface io.vertx.core.cli.CLI.addArgument:(Lio/vertx/core/cli/Argument;)Lio/vertx/core/cli/CLI;
         5: .line 102
            new io.vertx.core.cli.Argument
            dup
            invokespecial io.vertx.core.cli.Argument.<init>:()V
         6: .line 103
            ldc "the second argument"
            invokevirtual io.vertx.core.cli.Argument.setDescription:(Ljava/lang/String;)Lio/vertx/core/cli/Argument;
         7: .line 104
            ldc "arg2"
            invokevirtual io.vertx.core.cli.Argument.setArgName:(Ljava/lang/String;)Lio/vertx/core/cli/Argument;
         8: .line 102
            invokeinterface io.vertx.core.cli.CLI.addArgument:(Lio/vertx/core/cli/Argument;)Lio/vertx/core/cli/CLI;
            pop
         9: .line 105
            return
        end local 0 // examples.cli.CLIExamples this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lexamples/cli/CLIExamples;

  public void example6();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // examples.cli.CLIExamples this
         0: .line 108
            ldc "copy"
            invokestatic io.vertx.core.cli.CLI.create:(Ljava/lang/String;)Lio/vertx/core/cli/CLI;
         1: .line 109
            ldc "A command line interface to copy files."
            invokeinterface io.vertx.core.cli.CLI.setSummary:(Ljava/lang/String;)Lio/vertx/core/cli/CLI;
         2: .line 110
            new io.vertx.core.cli.Option
            dup
            invokespecial io.vertx.core.cli.Option.<init>:()V
         3: .line 111
            ldc "directory"
            invokevirtual io.vertx.core.cli.Option.setLongName:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
         4: .line 112
            ldc "R"
            invokevirtual io.vertx.core.cli.Option.setShortName:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
         5: .line 113
            ldc "enables directory support"
            invokevirtual io.vertx.core.cli.Option.setDescription:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
         6: .line 114
            iconst_1
            invokevirtual io.vertx.core.cli.Option.setFlag:(Z)Lio/vertx/core/cli/Option;
         7: .line 110
            invokeinterface io.vertx.core.cli.CLI.addOption:(Lio/vertx/core/cli/Option;)Lio/vertx/core/cli/CLI;
         8: .line 115
            new io.vertx.core.cli.Argument
            dup
            invokespecial io.vertx.core.cli.Argument.<init>:()V
         9: .line 116
            iconst_0
            invokevirtual io.vertx.core.cli.Argument.setIndex:(I)Lio/vertx/core/cli/Argument;
        10: .line 117
            ldc "The source"
            invokevirtual io.vertx.core.cli.Argument.setDescription:(Ljava/lang/String;)Lio/vertx/core/cli/Argument;
        11: .line 118
            ldc "source"
            invokevirtual io.vertx.core.cli.Argument.setArgName:(Ljava/lang/String;)Lio/vertx/core/cli/Argument;
        12: .line 115
            invokeinterface io.vertx.core.cli.CLI.addArgument:(Lio/vertx/core/cli/Argument;)Lio/vertx/core/cli/CLI;
        13: .line 119
            new io.vertx.core.cli.Argument
            dup
            invokespecial io.vertx.core.cli.Argument.<init>:()V
        14: .line 120
            iconst_0
            invokevirtual io.vertx.core.cli.Argument.setIndex:(I)Lio/vertx/core/cli/Argument;
        15: .line 121
            ldc "The destination"
            invokevirtual io.vertx.core.cli.Argument.setDescription:(Ljava/lang/String;)Lio/vertx/core/cli/Argument;
        16: .line 122
            ldc "target"
            invokevirtual io.vertx.core.cli.Argument.setArgName:(Ljava/lang/String;)Lio/vertx/core/cli/Argument;
        17: .line 119
            invokeinterface io.vertx.core.cli.CLI.addArgument:(Lio/vertx/core/cli/Argument;)Lio/vertx/core/cli/CLI;
        18: .line 108
            astore 1 /* cli */
        start local 1 // io.vertx.core.cli.CLI cli
        19: .line 124
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 2 /* builder */
        start local 2 // java.lang.StringBuilder builder
        20: .line 125
            aload 1 /* cli */
            aload 2 /* builder */
            invokeinterface io.vertx.core.cli.CLI.usage:(Ljava/lang/StringBuilder;)Lio/vertx/core/cli/CLI;
            pop
        21: .line 126
            return
        end local 2 // java.lang.StringBuilder builder
        end local 1 // io.vertx.core.cli.CLI cli
        end local 0 // examples.cli.CLIExamples this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   22     0     this  Lexamples/cli/CLIExamples;
           19   22     1      cli  Lio/vertx/core/cli/CLI;
           20   22     2  builder  Ljava/lang/StringBuilder;

  public void example7(io.vertx.core.cli.CLI, java.util.List<java.lang.String>);
    descriptor: (Lio/vertx/core/cli/CLI;Ljava/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // examples.cli.CLIExamples this
        start local 1 // io.vertx.core.cli.CLI cli
        start local 2 // java.util.List userCommandLineArguments
         0: .line 129
            aload 1 /* cli */
            aload 2 /* userCommandLineArguments */
            invokeinterface io.vertx.core.cli.CLI.parse:(Ljava/util/List;)Lio/vertx/core/cli/CommandLine;
            pop
         1: .line 130
            return
        end local 2 // java.util.List userCommandLineArguments
        end local 1 // io.vertx.core.cli.CLI cli
        end local 0 // examples.cli.CLIExamples this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0    2     0                      this  Lexamples/cli/CLIExamples;
            0    2     1                       cli  Lio/vertx/core/cli/CLI;
            0    2     2  userCommandLineArguments  Ljava/util/List<Ljava/lang/String;>;
    Signature: (Lio/vertx/core/cli/CLI;Ljava/util/List<Ljava/lang/String;>;)V
    MethodParameters:
                          Name  Flags
      cli                       
      userCommandLineArguments  

  public void example8(io.vertx.core.cli.CLI, java.util.List<java.lang.String>);
    descriptor: (Lio/vertx/core/cli/CLI;Ljava/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // examples.cli.CLIExamples this
        start local 1 // io.vertx.core.cli.CLI cli
        start local 2 // java.util.List userCommandLineArguments
         0: .line 133
            aload 1 /* cli */
            aload 2 /* userCommandLineArguments */
            invokeinterface io.vertx.core.cli.CLI.parse:(Ljava/util/List;)Lio/vertx/core/cli/CommandLine;
            astore 3 /* commandLine */
        start local 3 // io.vertx.core.cli.CommandLine commandLine
         1: .line 134
            aload 3 /* commandLine */
            ldc "my-option"
            invokeinterface io.vertx.core.cli.CommandLine.getOptionValue:(Ljava/lang/String;)Ljava/lang/Object;
            checkcast java.lang.String
            pop
         2: .line 135
            aload 3 /* commandLine */
            ldc "my-flag"
            invokeinterface io.vertx.core.cli.CommandLine.isFlagEnabled:(Ljava/lang/String;)Z
            pop
         3: .line 136
            aload 3 /* commandLine */
            iconst_0
            invokeinterface io.vertx.core.cli.CommandLine.getArgumentValue:(I)Ljava/lang/Object;
            checkcast java.lang.String
            pop
         4: .line 137
            return
        end local 3 // io.vertx.core.cli.CommandLine commandLine
        end local 2 // java.util.List userCommandLineArguments
        end local 1 // io.vertx.core.cli.CLI cli
        end local 0 // examples.cli.CLIExamples this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0    5     0                      this  Lexamples/cli/CLIExamples;
            0    5     1                       cli  Lio/vertx/core/cli/CLI;
            0    5     2  userCommandLineArguments  Ljava/util/List<Ljava/lang/String;>;
            1    5     3               commandLine  Lio/vertx/core/cli/CommandLine;
    Signature: (Lio/vertx/core/cli/CLI;Ljava/util/List<Ljava/lang/String;>;)V
    MethodParameters:
                          Name  Flags
      cli                       
      userCommandLineArguments  

  public void example9(java.io.PrintStream);
    descriptor: (Ljava/io/PrintStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // examples.cli.CLIExamples this
        start local 1 // java.io.PrintStream stream
         0: .line 140
            ldc "test"
            invokestatic io.vertx.core.cli.CLI.create:(Ljava/lang/String;)Lio/vertx/core/cli/CLI;
         1: .line 142
            new io.vertx.core.cli.Option
            dup
            invokespecial io.vertx.core.cli.Option.<init>:()V
            ldc "help"
            invokevirtual io.vertx.core.cli.Option.setLongName:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
            ldc "h"
            invokevirtual io.vertx.core.cli.Option.setShortName:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
            iconst_1
            invokevirtual io.vertx.core.cli.Option.setFlag:(Z)Lio/vertx/core/cli/Option;
            iconst_1
            invokevirtual io.vertx.core.cli.Option.setHelp:(Z)Lio/vertx/core/cli/Option;
         2: .line 141
            invokeinterface io.vertx.core.cli.CLI.addOption:(Lio/vertx/core/cli/Option;)Lio/vertx/core/cli/CLI;
         3: .line 144
            new io.vertx.core.cli.Option
            dup
            invokespecial io.vertx.core.cli.Option.<init>:()V
            ldc "mandatory"
            invokevirtual io.vertx.core.cli.Option.setLongName:(Ljava/lang/String;)Lio/vertx/core/cli/Option;
            iconst_1
            invokevirtual io.vertx.core.cli.Option.setRequired:(Z)Lio/vertx/core/cli/Option;
         4: .line 143
            invokeinterface io.vertx.core.cli.CLI.addOption:(Lio/vertx/core/cli/Option;)Lio/vertx/core/cli/CLI;
         5: .line 140
            astore 2 /* cli */
        start local 2 // io.vertx.core.cli.CLI cli
         6: .line 146
            aload 2 /* cli */
            ldc "-h"
            invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
            invokeinterface io.vertx.core.cli.CLI.parse:(Ljava/util/List;)Lio/vertx/core/cli/CommandLine;
            astore 3 /* line */
        start local 3 // io.vertx.core.cli.CommandLine line
         7: .line 149
            aload 3 /* line */
            invokeinterface io.vertx.core.cli.CommandLine.isValid:()Z
            ifne 11
            aload 3 /* line */
            invokeinterface io.vertx.core.cli.CommandLine.isAskingForHelp:()Z
            ifeq 11
         8: .line 150
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 4 /* builder */
        start local 4 // java.lang.StringBuilder builder
         9: .line 151
            aload 2 /* cli */
            aload 4 /* builder */
            invokeinterface io.vertx.core.cli.CLI.usage:(Ljava/lang/StringBuilder;)Lio/vertx/core/cli/CLI;
            pop
        10: .line 152
            aload 1 /* stream */
            aload 4 /* builder */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
        end local 4 // java.lang.StringBuilder builder
        11: .line 154
      StackMap locals: io.vertx.core.cli.CLI io.vertx.core.cli.CommandLine
      StackMap stack:
            return
        end local 3 // io.vertx.core.cli.CommandLine line
        end local 2 // io.vertx.core.cli.CLI cli
        end local 1 // java.io.PrintStream stream
        end local 0 // examples.cli.CLIExamples this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Lexamples/cli/CLIExamples;
            0   12     1   stream  Ljava/io/PrintStream;
            6   12     2      cli  Lio/vertx/core/cli/CLI;
            7   12     3     line  Lio/vertx/core/cli/CommandLine;
            9   11     4  builder  Ljava/lang/StringBuilder;
    MethodParameters:
        Name  Flags
      stream  
}
SourceFile: "CLIExamples.java"