public class com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl extends com.oracle.svm.hosted.FeatureImpl$FeatureAccessImpl implements org.graalvm.nativeimage.hosted.Feature$BeforeImageWriteAccess
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl
  super_class: com.oracle.svm.hosted.FeatureImpl$FeatureAccessImpl
{
  private java.util.List<java.util.function.Function<com.oracle.svm.core.LinkerInvocation, com.oracle.svm.core.LinkerInvocation>> linkerInvocationTransformers;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Ljava/util/function/Function<Lcom/oracle/svm/core/LinkerInvocation;Lcom/oracle/svm/core/LinkerInvocation;>;>;

  protected final java.lang.String imageName;
    descriptor: Ljava/lang/String;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final com.oracle.svm.hosted.image.AbstractBootImage image;
    descriptor: Lcom/oracle/svm/hosted/image/AbstractBootImage;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final com.oracle.svm.core.graal.meta.RuntimeConfiguration runtimeConfig;
    descriptor: Lcom/oracle/svm/core/graal/meta/RuntimeConfiguration;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final com.oracle.graal.pointsto.meta.AnalysisUniverse aUniverse;
    descriptor: Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final com.oracle.svm.hosted.meta.HostedUniverse hUniverse;
    descriptor: Lcom/oracle/svm/hosted/meta/HostedUniverse;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final com.oracle.svm.hosted.option.HostedOptionProvider optionProvider;
    descriptor: Lcom/oracle/svm/hosted/option/HostedOptionProvider;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final com.oracle.svm.hosted.meta.HostedMetaAccess hMetaAccess;
    descriptor: Lcom/oracle/svm/hosted/meta/HostedMetaAccess;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  void <init>(com.oracle.svm.hosted.FeatureHandler, com.oracle.svm.hosted.ImageClassLoader, java.lang.String, com.oracle.svm.hosted.image.AbstractBootImage, com.oracle.svm.core.graal.meta.RuntimeConfiguration, com.oracle.graal.pointsto.meta.AnalysisUniverse, com.oracle.svm.hosted.meta.HostedUniverse, com.oracle.svm.hosted.option.HostedOptionProvider, com.oracle.svm.hosted.meta.HostedMetaAccess, org.graalvm.compiler.debug.DebugContext);
    descriptor: (Lcom/oracle/svm/hosted/FeatureHandler;Lcom/oracle/svm/hosted/ImageClassLoader;Ljava/lang/String;Lcom/oracle/svm/hosted/image/AbstractBootImage;Lcom/oracle/svm/core/graal/meta/RuntimeConfiguration;Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;Lcom/oracle/svm/hosted/meta/HostedUniverse;Lcom/oracle/svm/hosted/option/HostedOptionProvider;Lcom/oracle/svm/hosted/meta/HostedMetaAccess;Lorg/graalvm/compiler/debug/DebugContext;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=11, args_size=11
        start local 0 // com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl this
        start local 1 // com.oracle.svm.hosted.FeatureHandler featureHandler
        start local 2 // com.oracle.svm.hosted.ImageClassLoader imageClassLoader
        start local 3 // java.lang.String imageName
        start local 4 // com.oracle.svm.hosted.image.AbstractBootImage image
        start local 5 // com.oracle.svm.core.graal.meta.RuntimeConfiguration runtimeConfig
        start local 6 // com.oracle.graal.pointsto.meta.AnalysisUniverse aUniverse
        start local 7 // com.oracle.svm.hosted.meta.HostedUniverse hUniverse
        start local 8 // com.oracle.svm.hosted.option.HostedOptionProvider optionProvider
        start local 9 // com.oracle.svm.hosted.meta.HostedMetaAccess hMetaAccess
        start local 10 // org.graalvm.compiler.debug.DebugContext debugContext
         0: .line 625
            aload 0 /* this */
            aload 1 /* featureHandler */
            aload 2 /* imageClassLoader */
            aload 10 /* debugContext */
            invokespecial com.oracle.svm.hosted.FeatureImpl$FeatureAccessImpl.<init>:(Lcom/oracle/svm/hosted/FeatureHandler;Lcom/oracle/svm/hosted/ImageClassLoader;Lorg/graalvm/compiler/debug/DebugContext;)V
         1: .line 613
            aload 0 /* this */
            aconst_null
            putfield com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl.linkerInvocationTransformers:Ljava/util/List;
         2: .line 626
            aload 0 /* this */
            aload 3 /* imageName */
            putfield com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl.imageName:Ljava/lang/String;
         3: .line 627
            aload 0 /* this */
            aload 4 /* image */
            putfield com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl.image:Lcom/oracle/svm/hosted/image/AbstractBootImage;
         4: .line 628
            aload 0 /* this */
            aload 5 /* runtimeConfig */
            putfield com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl.runtimeConfig:Lcom/oracle/svm/core/graal/meta/RuntimeConfiguration;
         5: .line 629
            aload 0 /* this */
            aload 6 /* aUniverse */
            putfield com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl.aUniverse:Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
         6: .line 630
            aload 0 /* this */
            aload 7 /* hUniverse */
            putfield com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl.hUniverse:Lcom/oracle/svm/hosted/meta/HostedUniverse;
         7: .line 631
            aload 0 /* this */
            aload 8 /* optionProvider */
            putfield com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl.optionProvider:Lcom/oracle/svm/hosted/option/HostedOptionProvider;
         8: .line 632
            aload 0 /* this */
            aload 9 /* hMetaAccess */
            putfield com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl.hMetaAccess:Lcom/oracle/svm/hosted/meta/HostedMetaAccess;
         9: .line 633
            return
        end local 10 // org.graalvm.compiler.debug.DebugContext debugContext
        end local 9 // com.oracle.svm.hosted.meta.HostedMetaAccess hMetaAccess
        end local 8 // com.oracle.svm.hosted.option.HostedOptionProvider optionProvider
        end local 7 // com.oracle.svm.hosted.meta.HostedUniverse hUniverse
        end local 6 // com.oracle.graal.pointsto.meta.AnalysisUniverse aUniverse
        end local 5 // com.oracle.svm.core.graal.meta.RuntimeConfiguration runtimeConfig
        end local 4 // com.oracle.svm.hosted.image.AbstractBootImage image
        end local 3 // java.lang.String imageName
        end local 2 // com.oracle.svm.hosted.ImageClassLoader imageClassLoader
        end local 1 // com.oracle.svm.hosted.FeatureHandler featureHandler
        end local 0 // com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   10     0              this  Lcom/oracle/svm/hosted/FeatureImpl$BeforeImageWriteAccessImpl;
            0   10     1    featureHandler  Lcom/oracle/svm/hosted/FeatureHandler;
            0   10     2  imageClassLoader  Lcom/oracle/svm/hosted/ImageClassLoader;
            0   10     3         imageName  Ljava/lang/String;
            0   10     4             image  Lcom/oracle/svm/hosted/image/AbstractBootImage;
            0   10     5     runtimeConfig  Lcom/oracle/svm/core/graal/meta/RuntimeConfiguration;
            0   10     6         aUniverse  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0   10     7         hUniverse  Lcom/oracle/svm/hosted/meta/HostedUniverse;
            0   10     8    optionProvider  Lcom/oracle/svm/hosted/option/HostedOptionProvider;
            0   10     9       hMetaAccess  Lcom/oracle/svm/hosted/meta/HostedMetaAccess;
            0   10    10      debugContext  Lorg/graalvm/compiler/debug/DebugContext;
    MethodParameters:
                  Name  Flags
      featureHandler    
      imageClassLoader  
      imageName         
      image             
      runtimeConfig     
      aUniverse         
      hUniverse         
      optionProvider    
      hMetaAccess       
      debugContext      

  public java.lang.String getImageName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl this
         0: .line 636
            aload 0 /* this */
            getfield com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl.imageName:Ljava/lang/String;
            areturn
        end local 0 // com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/svm/hosted/FeatureImpl$BeforeImageWriteAccessImpl;

  public com.oracle.svm.hosted.image.AbstractBootImage getImage();
    descriptor: ()Lcom/oracle/svm/hosted/image/AbstractBootImage;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl this
         0: .line 640
            aload 0 /* this */
            getfield com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl.image:Lcom/oracle/svm/hosted/image/AbstractBootImage;
            areturn
        end local 0 // com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/svm/hosted/FeatureImpl$BeforeImageWriteAccessImpl;

  public com.oracle.svm.core.graal.meta.RuntimeConfiguration getRuntimeConfiguration();
    descriptor: ()Lcom/oracle/svm/core/graal/meta/RuntimeConfiguration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl this
         0: .line 644
            aload 0 /* this */
            getfield com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl.runtimeConfig:Lcom/oracle/svm/core/graal/meta/RuntimeConfiguration;
            areturn
        end local 0 // com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/svm/hosted/FeatureImpl$BeforeImageWriteAccessImpl;

  public com.oracle.svm.hosted.meta.HostedUniverse getHostedUniverse();
    descriptor: ()Lcom/oracle/svm/hosted/meta/HostedUniverse;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl this
         0: .line 648
            aload 0 /* this */
            getfield com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl.hUniverse:Lcom/oracle/svm/hosted/meta/HostedUniverse;
            areturn
        end local 0 // com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/svm/hosted/FeatureImpl$BeforeImageWriteAccessImpl;

  public com.oracle.svm.hosted.option.HostedOptionProvider getHostedOptionProvider();
    descriptor: ()Lcom/oracle/svm/hosted/option/HostedOptionProvider;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl this
         0: .line 652
            aload 0 /* this */
            getfield com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl.optionProvider:Lcom/oracle/svm/hosted/option/HostedOptionProvider;
            areturn
        end local 0 // com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/svm/hosted/FeatureImpl$BeforeImageWriteAccessImpl;

  public com.oracle.svm.hosted.meta.HostedMetaAccess getHostedMetaAccess();
    descriptor: ()Lcom/oracle/svm/hosted/meta/HostedMetaAccess;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl this
         0: .line 656
            aload 0 /* this */
            getfield com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl.hMetaAccess:Lcom/oracle/svm/hosted/meta/HostedMetaAccess;
            areturn
        end local 0 // com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/svm/hosted/FeatureImpl$BeforeImageWriteAccessImpl;

  public java.lang.Iterable<java.util.function.Function<com.oracle.svm.core.LinkerInvocation, com.oracle.svm.core.LinkerInvocation>> getLinkerInvocationTransformers();
    descriptor: ()Ljava/lang/Iterable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl this
         0: .line 660
            aload 0 /* this */
            getfield com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl.linkerInvocationTransformers:Ljava/util/List;
            ifnonnull 2
         1: .line 661
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            areturn
         2: .line 663
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl.linkerInvocationTransformers:Ljava/util/List;
            areturn
        end local 0 // com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/oracle/svm/hosted/FeatureImpl$BeforeImageWriteAccessImpl;
    Signature: ()Ljava/lang/Iterable<Ljava/util/function/Function<Lcom/oracle/svm/core/LinkerInvocation;Lcom/oracle/svm/core/LinkerInvocation;>;>;

  public void registerLinkerInvocationTransformer(java.util.function.Function<com.oracle.svm.core.LinkerInvocation, com.oracle.svm.core.LinkerInvocation>);
    descriptor: (Ljava/util/function/Function;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl this
        start local 1 // java.util.function.Function transformer
         0: .line 667
            aload 0 /* this */
            getfield com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl.linkerInvocationTransformers:Ljava/util/List;
            ifnonnull 2
         1: .line 668
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl.linkerInvocationTransformers:Ljava/util/List;
         2: .line 670
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl.linkerInvocationTransformers:Ljava/util/List;
            aload 1 /* transformer */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         3: .line 671
            return
        end local 1 // java.util.function.Function transformer
        end local 0 // com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lcom/oracle/svm/hosted/FeatureImpl$BeforeImageWriteAccessImpl;
            0    4     1  transformer  Ljava/util/function/Function<Lcom/oracle/svm/core/LinkerInvocation;Lcom/oracle/svm/core/LinkerInvocation;>;
    Signature: (Ljava/util/function/Function<Lcom/oracle/svm/core/LinkerInvocation;Lcom/oracle/svm/core/LinkerInvocation;>;)V
    MethodParameters:
             Name  Flags
      transformer  
}
SourceFile: "FeatureImpl.java"
NestHost: com.oracle.svm.hosted.FeatureImpl
InnerClasses:
  public BeforeImageWriteAccessImpl = com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl of com.oracle.svm.hosted.FeatureImpl
  public abstract FeatureAccessImpl = com.oracle.svm.hosted.FeatureImpl$FeatureAccessImpl of com.oracle.svm.hosted.FeatureImpl
  public abstract BeforeImageWriteAccess = org.graalvm.nativeimage.hosted.Feature$BeforeImageWriteAccess of org.graalvm.nativeimage.hosted.Feature