class com.oracle.svm.driver.MacroOptionHandler extends com.oracle.svm.driver.NativeImage$OptionHandler<com.oracle.svm.driver.NativeImage>
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.oracle.svm.driver.MacroOptionHandler
  super_class: com.oracle.svm.driver.NativeImage$OptionHandler
{
  private static final java.lang.String PATH_SEPARATOR_REGEX;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 67
            invokestatic com.oracle.svm.core.OS.getCurrent:()Lcom/oracle/svm/core/OS;
            getstatic com.oracle.svm.core.OS.WINDOWS:Lcom/oracle/svm/core/OS;
            invokevirtual com.oracle.svm.core.OS.equals:(Ljava/lang/Object;)Z
            ifeq 3
         1: .line 68
            ldc ":|;"
            putstatic com.oracle.svm.driver.MacroOptionHandler.PATH_SEPARATOR_REGEX:Ljava/lang/String;
         2: .line 69
            goto 4
         3: .line 70
      StackMap locals:
      StackMap stack:
            getstatic java.io.File.pathSeparator:Ljava/lang/String;
            putstatic com.oracle.svm.driver.MacroOptionHandler.PATH_SEPARATOR_REGEX:Ljava/lang/String;
         4: .line 72
      StackMap locals:
      StackMap stack:
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(com.oracle.svm.driver.NativeImage);
    descriptor: (Lcom/oracle/svm/driver/NativeImage;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.svm.driver.MacroOptionHandler this
        start local 1 // com.oracle.svm.driver.NativeImage nativeImage
         0: .line 43
            aload 0 /* this */
            aload 1 /* nativeImage */
            invokespecial com.oracle.svm.driver.NativeImage$OptionHandler.<init>:(Lcom/oracle/svm/driver/NativeImage;)V
         1: .line 44
            return
        end local 1 // com.oracle.svm.driver.NativeImage nativeImage
        end local 0 // com.oracle.svm.driver.MacroOptionHandler this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lcom/oracle/svm/driver/MacroOptionHandler;
            0    2     1  nativeImage  Lcom/oracle/svm/driver/NativeImage;
    MethodParameters:
             Name  Flags
      nativeImage  

  public boolean consume(java.util.Queue<java.lang.String>);
    descriptor: (Ljava/util/Queue;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // com.oracle.svm.driver.MacroOptionHandler this
        start local 1 // java.util.Queue args
         0: .line 48
            aload 1 /* args */
            invokeinterface java.util.Queue.peek:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* headArg */
        start local 2 // java.lang.String headArg
         1: .line 49
            iconst_0
            istore 3 /* consumed */
        start local 3 // boolean consumed
         2: .line 51
            aload 0 /* this */
            getfield com.oracle.svm.driver.MacroOptionHandler.nativeImage:Lcom/oracle/svm/driver/NativeImage;
            getfield com.oracle.svm.driver.NativeImage.optionRegistry:Lcom/oracle/svm/driver/MacroOption$Registry;
            aload 0 /* this */
            getfield com.oracle.svm.driver.MacroOptionHandler.nativeImage:Lcom/oracle/svm/driver/NativeImage;
            getfield com.oracle.svm.driver.NativeImage.config:Lcom/oracle/svm/driver/NativeImage$BuildConfiguration;
            aload 2 /* headArg */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            aconst_null
            aload 0 /* this */
            invokedynamic accept(Lcom/oracle/svm/driver/MacroOptionHandler;)Ljava/util/function/Consumer;
              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;)V
                  com/oracle/svm/driver/MacroOptionHandler.applyEnabled(Lcom/oracle/svm/driver/MacroOption$EnabledOption;)V (7)
                  (Lcom/oracle/svm/driver/MacroOption$EnabledOption;)V
            invokevirtual com.oracle.svm.driver.MacroOption$Registry.enableOption:(Lcom/oracle/svm/driver/NativeImage$BuildConfiguration;Ljava/lang/String;Ljava/util/HashSet;Lcom/oracle/svm/driver/MacroOption;Ljava/util/function/Consumer;)Z
            istore 3 /* consumed */
         3: .line 52
            goto 12
      StackMap locals: com.oracle.svm.driver.MacroOptionHandler java.util.Queue java.lang.String int
      StackMap stack: com.oracle.svm.driver.MacroOption$VerboseInvalidMacroException
         4: astore 4 /* e1 */
        start local 4 // com.oracle.svm.driver.MacroOption$VerboseInvalidMacroException e1
         5: .line 53
            aload 4 /* e1 */
            aload 0 /* this */
            getfield com.oracle.svm.driver.MacroOptionHandler.nativeImage:Lcom/oracle/svm/driver/NativeImage;
            getfield com.oracle.svm.driver.NativeImage.optionRegistry:Lcom/oracle/svm/driver/MacroOption$Registry;
            invokevirtual com.oracle.svm.driver.MacroOption$VerboseInvalidMacroException.getMessage:(Lcom/oracle/svm/driver/MacroOption$Registry;)Ljava/lang/String;
            invokestatic com.oracle.svm.driver.NativeImage.showError:(Ljava/lang/String;)Ljava/lang/Error;
            pop
        end local 4 // com.oracle.svm.driver.MacroOption$VerboseInvalidMacroException e1
         6: goto 12
         7: .line 54
      StackMap locals:
      StackMap stack: java.lang.RuntimeException
            astore 4 /* e */
        start local 4 // java.lang.RuntimeException e
         8: .line 55
            aload 4 /* e */
            invokevirtual java.lang.RuntimeException.getMessage:()Ljava/lang/String;
            invokestatic com.oracle.svm.driver.NativeImage.showError:(Ljava/lang/String;)Ljava/lang/Error;
            pop
        end local 4 // java.lang.RuntimeException e
         9: goto 12
        10: .line 56
      StackMap locals:
      StackMap stack: com.oracle.svm.driver.NativeImage$NativeImageError
            astore 4 /* err */
        start local 4 // com.oracle.svm.driver.NativeImage$NativeImageError err
        11: .line 57
            new java.lang.StringBuilder
            dup
            ldc "Applying MacroOption "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* headArg */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " failed"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 4 /* err */
            invokestatic com.oracle.svm.driver.NativeImage.showError:(Ljava/lang/String;Ljava/lang/Throwable;)Ljava/lang/Error;
            pop
        end local 4 // com.oracle.svm.driver.NativeImage$NativeImageError err
        12: .line 59
      StackMap locals:
      StackMap stack:
            iload 3 /* consumed */
            ifeq 14
        13: .line 60
            aload 1 /* args */
            invokeinterface java.util.Queue.poll:()Ljava/lang/Object;
            pop
        14: .line 62
      StackMap locals:
      StackMap stack:
            iload 3 /* consumed */
            ireturn
        end local 3 // boolean consumed
        end local 2 // java.lang.String headArg
        end local 1 // java.util.Queue args
        end local 0 // com.oracle.svm.driver.MacroOptionHandler this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   15     0      this  Lcom/oracle/svm/driver/MacroOptionHandler;
            0   15     1      args  Ljava/util/Queue<Ljava/lang/String;>;
            1   15     2   headArg  Ljava/lang/String;
            2   15     3  consumed  Z
            5    6     4        e1  Lcom/oracle/svm/driver/MacroOption$VerboseInvalidMacroException;
            8    9     4         e  Ljava/lang/RuntimeException;
           11   12     4       err  Lcom/oracle/svm/driver/NativeImage$NativeImageError;
      Exception table:
        from    to  target  type
           2     3       4  Class com.oracle.svm.driver.MacroOption$VerboseInvalidMacroException
           2     3       7  Class com.oracle.svm.driver.MacroOption$InvalidMacroException
           2     3       7  Class com.oracle.svm.driver.MacroOption$AddedTwiceException
           2     3      10  Class com.oracle.svm.driver.NativeImage$NativeImageError
    Signature: (Ljava/util/Queue<Ljava/lang/String;>;)Z
    MethodParameters:
      Name  Flags
      args  

  private void applyEnabled(com.oracle.svm.driver.MacroOption$EnabledOption);
    descriptor: (Lcom/oracle/svm/driver/MacroOption$EnabledOption;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=10, args_size=2
        start local 0 // com.oracle.svm.driver.MacroOptionHandler this
        start local 1 // com.oracle.svm.driver.MacroOption$EnabledOption enabledOption
         0: .line 75
            aload 1 /* enabledOption */
            invokevirtual com.oracle.svm.driver.MacroOption$EnabledOption.getOption:()Lcom/oracle/svm/driver/MacroOption;
            invokevirtual com.oracle.svm.driver.MacroOption.getOptionDirectory:()Ljava/nio/file/Path;
            astore 2 /* imageJarsDirectory */
        start local 2 // java.nio.file.Path imageJarsDirectory
         1: .line 76
            aload 2 /* imageJarsDirectory */
            ifnonnull 3
         2: .line 77
            return
         3: .line 80
      StackMap locals: java.nio.file.Path
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.svm.driver.MacroOptionHandler.nativeImage:Lcom/oracle/svm/driver/NativeImage;
            getfield com.oracle.svm.driver.NativeImage.config:Lcom/oracle/svm/driver/NativeImage$BuildConfiguration;
            astore 3 /* config */
        start local 3 // com.oracle.svm.driver.NativeImage$BuildConfiguration config
         4: .line 81
            aload 3 /* config */
            invokeinterface com.oracle.svm.driver.NativeImage$BuildConfiguration.useJavaModules:()Z
            ifne 7
         5: .line 82
            aload 1 /* enabledOption */
            aload 3 /* config */
            ldc "ImageBuilderBootClasspath8"
            aload 0 /* this */
            invokedynamic accept(Lcom/oracle/svm/driver/MacroOptionHandler;)Ljava/util/function/Consumer;
              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;)V
                  com/oracle/svm/driver/MacroOptionHandler.lambda$1(Ljava/lang/String;)V (7)
                  (Ljava/lang/String;)V
            getstatic com.oracle.svm.driver.MacroOptionHandler.PATH_SEPARATOR_REGEX:Ljava/lang/String;
            invokevirtual com.oracle.svm.driver.MacroOption$EnabledOption.forEachPropertyValue:(Lcom/oracle/svm/driver/NativeImage$BuildConfiguration;Ljava/lang/String;Ljava/util/function/Consumer;Ljava/lang/String;)Z
            pop
         6: .line 83
            goto 8
         7: .line 84
      StackMap locals: com.oracle.svm.driver.NativeImage$BuildConfiguration
      StackMap stack:
            aload 1 /* enabledOption */
            aload 3 /* config */
            ldc "ImageIncludeBuiltinModules"
            aload 0 /* this */
            invokedynamic accept(Lcom/oracle/svm/driver/MacroOptionHandler;)Ljava/util/function/Consumer;
              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;)V
                  com/oracle/svm/driver/MacroOptionHandler.lambda$2(Ljava/lang/String;)V (7)
                  (Ljava/lang/String;)V
            ldc ","
            invokevirtual com.oracle.svm.driver.MacroOption$EnabledOption.forEachPropertyValue:(Lcom/oracle/svm/driver/NativeImage$BuildConfiguration;Ljava/lang/String;Ljava/util/function/Consumer;Ljava/lang/String;)Z
            pop
         8: .line 87
      StackMap locals:
      StackMap stack:
            aload 1 /* enabledOption */
            aload 3 /* config */
            ldc "ImageBuilderClasspath"
            aload 0 /* this */
            invokedynamic accept(Lcom/oracle/svm/driver/MacroOptionHandler;)Ljava/util/function/Consumer;
              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;)V
                  com/oracle/svm/driver/MacroOptionHandler.lambda$3(Ljava/lang/String;)V (7)
                  (Ljava/lang/String;)V
            getstatic com.oracle.svm.driver.MacroOptionHandler.PATH_SEPARATOR_REGEX:Ljava/lang/String;
            invokevirtual com.oracle.svm.driver.MacroOption$EnabledOption.forEachPropertyValue:(Lcom/oracle/svm/driver/NativeImage$BuildConfiguration;Ljava/lang/String;Ljava/util/function/Consumer;Ljava/lang/String;)Z
            ifne 12
         9: .line 88
            aload 2 /* imageJarsDirectory */
            ldc "builder"
            invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
            astore 4 /* builderJarsDirectory */
        start local 4 // java.nio.file.Path builderJarsDirectory
        10: .line 89
            aload 4 /* builderJarsDirectory */
            iconst_0
            anewarray java.nio.file.LinkOption
            invokestatic java.nio.file.Files.isDirectory:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
            ifeq 12
        11: .line 90
            aload 4 /* builderJarsDirectory */
            iconst_0
            anewarray java.lang.String
            invokestatic com.oracle.svm.driver.NativeImage.getJars:(Ljava/nio/file/Path;[Ljava/lang/String;)Ljava/util/List;
            aload 0 /* this */
            getfield com.oracle.svm.driver.MacroOptionHandler.nativeImage:Lcom/oracle/svm/driver/NativeImage;
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic accept(Lcom/oracle/svm/driver/NativeImage;)Ljava/util/function/Consumer;
              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;)V
                  com/oracle/svm/driver/NativeImage.addImageBuilderClasspath(Ljava/nio/file/Path;)V (5)
                  (Ljava/nio/file/Path;)V
            invokeinterface java.util.List.forEach:(Ljava/util/function/Consumer;)V
        end local 4 // java.nio.file.Path builderJarsDirectory
        12: .line 94
      StackMap locals:
      StackMap stack:
            aload 1 /* enabledOption */
            aload 3 /* config */
            ldc "ImageClasspath"
            aload 0 /* this */
            invokedynamic accept(Lcom/oracle/svm/driver/MacroOptionHandler;)Ljava/util/function/Consumer;
              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;)V
                  com/oracle/svm/driver/MacroOptionHandler.lambda$5(Ljava/lang/String;)V (7)
                  (Ljava/lang/String;)V
            getstatic com.oracle.svm.driver.MacroOptionHandler.PATH_SEPARATOR_REGEX:Ljava/lang/String;
            invokevirtual com.oracle.svm.driver.MacroOption$EnabledOption.forEachPropertyValue:(Lcom/oracle/svm/driver/NativeImage$BuildConfiguration;Ljava/lang/String;Ljava/util/function/Consumer;Ljava/lang/String;)Z
            ifne 14
        13: .line 95
            aload 2 /* imageJarsDirectory */
            iconst_0
            anewarray java.lang.String
            invokestatic com.oracle.svm.driver.NativeImage.getJars:(Ljava/nio/file/Path;[Ljava/lang/String;)Ljava/util/List;
            aload 0 /* this */
            getfield com.oracle.svm.driver.MacroOptionHandler.nativeImage:Lcom/oracle/svm/driver/NativeImage;
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic accept(Lcom/oracle/svm/driver/NativeImage;)Ljava/util/function/Consumer;
              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;)V
                  com/oracle/svm/driver/NativeImage.addImageClasspath(Ljava/nio/file/Path;)V (5)
                  (Ljava/nio/file/Path;)V
            invokeinterface java.util.List.forEach:(Ljava/util/function/Consumer;)V
        14: .line 98
      StackMap locals:
      StackMap stack:
            aload 1 /* enabledOption */
            aload 3 /* config */
            ldc "ImageName"
            invokevirtual com.oracle.svm.driver.MacroOption$EnabledOption.getProperty:(Lcom/oracle/svm/driver/NativeImage$BuildConfiguration;Ljava/lang/String;)Ljava/lang/String;
            astore 5 /* imageName */
        start local 5 // java.lang.String imageName
        15: .line 99
            aload 5 /* imageName */
            ifnull 17
        16: .line 100
            aload 0 /* this */
            getfield com.oracle.svm.driver.MacroOptionHandler.nativeImage:Lcom/oracle/svm/driver/NativeImage;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield com.oracle.svm.driver.MacroOptionHandler.nativeImage:Lcom/oracle/svm/driver/NativeImage;
            getfield com.oracle.svm.driver.NativeImage.oHName:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* imageName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.oracle.svm.driver.NativeImage.addPlainImageBuilderArg:(Ljava/lang/String;)V
        17: .line 103
      StackMap locals: com.oracle.svm.driver.MacroOptionHandler com.oracle.svm.driver.MacroOption$EnabledOption java.nio.file.Path com.oracle.svm.driver.NativeImage$BuildConfiguration top java.lang.String
      StackMap stack:
            aload 1 /* enabledOption */
            aload 3 /* config */
            ldc "ImagePath"
            invokevirtual com.oracle.svm.driver.MacroOption$EnabledOption.getProperty:(Lcom/oracle/svm/driver/NativeImage$BuildConfiguration;Ljava/lang/String;)Ljava/lang/String;
            astore 6 /* imagePath */
        start local 6 // java.lang.String imagePath
        18: .line 104
            aload 6 /* imagePath */
            ifnull 20
        19: .line 105
            aload 0 /* this */
            getfield com.oracle.svm.driver.MacroOptionHandler.nativeImage:Lcom/oracle/svm/driver/NativeImage;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield com.oracle.svm.driver.MacroOptionHandler.nativeImage:Lcom/oracle/svm/driver/NativeImage;
            getfield com.oracle.svm.driver.NativeImage.oHPath:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* imagePath */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.oracle.svm.driver.NativeImage.addPlainImageBuilderArg:(Ljava/lang/String;)V
        20: .line 108
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* enabledOption */
            aload 3 /* config */
            ldc "ImageClass"
            invokevirtual com.oracle.svm.driver.MacroOption$EnabledOption.getProperty:(Lcom/oracle/svm/driver/NativeImage$BuildConfiguration;Ljava/lang/String;)Ljava/lang/String;
            astore 7 /* imageClass */
        start local 7 // java.lang.String imageClass
        21: .line 109
            aload 7 /* imageClass */
            ifnull 23
        22: .line 110
            aload 0 /* this */
            getfield com.oracle.svm.driver.MacroOptionHandler.nativeImage:Lcom/oracle/svm/driver/NativeImage;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield com.oracle.svm.driver.MacroOptionHandler.nativeImage:Lcom/oracle/svm/driver/NativeImage;
            getfield com.oracle.svm.driver.NativeImage.oHClass:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 7 /* imageClass */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.oracle.svm.driver.NativeImage.addPlainImageBuilderArg:(Ljava/lang/String;)V
        23: .line 113
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* enabledOption */
            aload 3 /* config */
            ldc "JavaArgs"
            aload 0 /* this */
            invokedynamic accept(Lcom/oracle/svm/driver/MacroOptionHandler;)Ljava/util/function/Consumer;
              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;)V
                  com/oracle/svm/driver/MacroOptionHandler.lambda$8(Ljava/lang/String;)V (7)
                  (Ljava/lang/String;)V
            invokevirtual com.oracle.svm.driver.MacroOption$EnabledOption.forEachPropertyValue:(Lcom/oracle/svm/driver/NativeImage$BuildConfiguration;Ljava/lang/String;Ljava/util/function/Consumer;)Z
            pop
        24: .line 114
            new com.oracle.svm.driver.NativeImage$NativeImageArgsProcessor
            dup
            aload 0 /* this */
            getfield com.oracle.svm.driver.MacroOptionHandler.nativeImage:Lcom/oracle/svm/driver/NativeImage;
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokespecial com.oracle.svm.driver.NativeImage$NativeImageArgsProcessor.<init>:(Lcom/oracle/svm/driver/NativeImage;)V
            astore 9 /* args */
        start local 9 // com.oracle.svm.driver.NativeImage$NativeImageArgsProcessor args
        25: .line 115
            aload 1 /* enabledOption */
            aload 3 /* config */
            ldc "Args"
            aload 9 /* args */
            invokevirtual com.oracle.svm.driver.MacroOption$EnabledOption.forEachPropertyValue:(Lcom/oracle/svm/driver/NativeImage$BuildConfiguration;Ljava/lang/String;Ljava/util/function/Consumer;)Z
            pop
        26: .line 116
            aload 9 /* args */
            iconst_1
            invokevirtual com.oracle.svm.driver.NativeImage$NativeImageArgsProcessor.apply:(Z)Ljava/util/List;
            pop
        27: .line 117
            return
        end local 9 // com.oracle.svm.driver.NativeImage$NativeImageArgsProcessor args
        end local 7 // java.lang.String imageClass
        end local 6 // java.lang.String imagePath
        end local 5 // java.lang.String imageName
        end local 3 // com.oracle.svm.driver.NativeImage$BuildConfiguration config
        end local 2 // java.nio.file.Path imageJarsDirectory
        end local 1 // com.oracle.svm.driver.MacroOption$EnabledOption enabledOption
        end local 0 // com.oracle.svm.driver.MacroOptionHandler this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   28     0                  this  Lcom/oracle/svm/driver/MacroOptionHandler;
            0   28     1         enabledOption  Lcom/oracle/svm/driver/MacroOption$EnabledOption;
            1   28     2    imageJarsDirectory  Ljava/nio/file/Path;
            4   28     3                config  Lcom/oracle/svm/driver/NativeImage$BuildConfiguration;
           10   12     4  builderJarsDirectory  Ljava/nio/file/Path;
           15   28     5             imageName  Ljava/lang/String;
           18   28     6             imagePath  Ljava/lang/String;
           21   28     7            imageClass  Ljava/lang/String;
           25   28     9                  args  Lcom/oracle/svm/driver/NativeImage$NativeImageArgsProcessor;
    MethodParameters:
               Name  Flags
      enabledOption  

  private void lambda$1(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.svm.driver.MacroOptionHandler this
        start local 1 // java.lang.String entry
         0: .line 82
            aload 0 /* this */
            getfield com.oracle.svm.driver.MacroOptionHandler.nativeImage:Lcom/oracle/svm/driver/NativeImage;
            aload 1 /* entry */
            invokestatic com.oracle.svm.core.util.ClasspathUtils.stringToClasspath:(Ljava/lang/String;)Ljava/nio/file/Path;
            invokevirtual com.oracle.svm.driver.NativeImage.addImageBuilderBootClasspath:(Ljava/nio/file/Path;)V
            return
        end local 1 // java.lang.String entry
        end local 0 // com.oracle.svm.driver.MacroOptionHandler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lcom/oracle/svm/driver/MacroOptionHandler;
            0    1     1  entry  Ljava/lang/String;

  private void lambda$2(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.svm.driver.MacroOptionHandler this
        start local 1 // java.lang.String entry
         0: .line 84
            aload 0 /* this */
            getfield com.oracle.svm.driver.MacroOptionHandler.nativeImage:Lcom/oracle/svm/driver/NativeImage;
            aload 1 /* entry */
            invokevirtual com.oracle.svm.driver.NativeImage.addImageIncludeBuiltinModules:(Ljava/lang/String;)V
            return
        end local 1 // java.lang.String entry
        end local 0 // com.oracle.svm.driver.MacroOptionHandler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lcom/oracle/svm/driver/MacroOptionHandler;
            0    1     1  entry  Ljava/lang/String;

  private void lambda$3(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.svm.driver.MacroOptionHandler this
        start local 1 // java.lang.String entry
         0: .line 87
            aload 0 /* this */
            getfield com.oracle.svm.driver.MacroOptionHandler.nativeImage:Lcom/oracle/svm/driver/NativeImage;
            aload 1 /* entry */
            invokestatic com.oracle.svm.core.util.ClasspathUtils.stringToClasspath:(Ljava/lang/String;)Ljava/nio/file/Path;
            invokevirtual com.oracle.svm.driver.NativeImage.addImageBuilderClasspath:(Ljava/nio/file/Path;)V
            return
        end local 1 // java.lang.String entry
        end local 0 // com.oracle.svm.driver.MacroOptionHandler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lcom/oracle/svm/driver/MacroOptionHandler;
            0    1     1  entry  Ljava/lang/String;

  private void lambda$5(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.svm.driver.MacroOptionHandler this
        start local 1 // java.lang.String entry
         0: .line 94
            aload 0 /* this */
            getfield com.oracle.svm.driver.MacroOptionHandler.nativeImage:Lcom/oracle/svm/driver/NativeImage;
            aload 1 /* entry */
            invokestatic com.oracle.svm.core.util.ClasspathUtils.stringToClasspath:(Ljava/lang/String;)Ljava/nio/file/Path;
            invokevirtual com.oracle.svm.driver.NativeImage.addImageClasspath:(Ljava/nio/file/Path;)V
            return
        end local 1 // java.lang.String entry
        end local 0 // com.oracle.svm.driver.MacroOptionHandler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lcom/oracle/svm/driver/MacroOptionHandler;
            0    1     1  entry  Ljava/lang/String;

  private void lambda$8(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // com.oracle.svm.driver.MacroOptionHandler this
        start local 1 // java.lang.String  arg0
         0: .line 1
            aload 0 /* this */
            getfield com.oracle.svm.driver.MacroOptionHandler.nativeImage:Lcom/oracle/svm/driver/NativeImage;
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 1 /*  arg0 */
            aastore
            invokevirtual com.oracle.svm.driver.NativeImage.addImageBuilderJavaArgs:([Ljava/lang/String;)V
            return
        end local 1 // java.lang.String  arg0
        end local 0 // com.oracle.svm.driver.MacroOptionHandler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lcom/oracle/svm/driver/MacroOptionHandler;
            0    1     1   arg0  Ljava/lang/String;
}
Signature: Lcom/oracle/svm/driver/NativeImage$OptionHandler<Lcom/oracle/svm/driver/NativeImage;>;
SourceFile: "MacroOptionHandler.java"
InnerClasses:
  final AddedTwiceException = com.oracle.svm.driver.MacroOption$AddedTwiceException of com.oracle.svm.driver.MacroOption
  final EnabledOption = com.oracle.svm.driver.MacroOption$EnabledOption of com.oracle.svm.driver.MacroOption
  final InvalidMacroException = com.oracle.svm.driver.MacroOption$InvalidMacroException of com.oracle.svm.driver.MacroOption
  final Registry = com.oracle.svm.driver.MacroOption$Registry of com.oracle.svm.driver.MacroOption
  final VerboseInvalidMacroException = com.oracle.svm.driver.MacroOption$VerboseInvalidMacroException of com.oracle.svm.driver.MacroOption
  public abstract BuildConfiguration = com.oracle.svm.driver.NativeImage$BuildConfiguration of com.oracle.svm.driver.NativeImage
  NativeImageArgsProcessor = com.oracle.svm.driver.NativeImage$NativeImageArgsProcessor of com.oracle.svm.driver.NativeImage
  public final NativeImageError = com.oracle.svm.driver.NativeImage$NativeImageError of com.oracle.svm.driver.NativeImage
  abstract OptionHandler = com.oracle.svm.driver.NativeImage$OptionHandler of com.oracle.svm.driver.NativeImage
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles