final class org.apache.catalina.startup.Catalina$SetParentClassLoaderRule extends org.apache.tomcat.util.digester.Rule
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: org.apache.catalina.startup.Catalina$SetParentClassLoaderRule
  super_class: org.apache.tomcat.util.digester.Rule
{
  java.lang.ClassLoader parentClassLoader;
    descriptor: Ljava/lang/ClassLoader;
    flags: (0x0000) 

  final org.apache.catalina.startup.Catalina this$0;
    descriptor: Lorg/apache/catalina/startup/Catalina;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  public void <init>(org.apache.catalina.startup.Catalina, java.lang.ClassLoader);
    descriptor: (Lorg/apache/catalina/startup/Catalina;Ljava/lang/ClassLoader;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.apache.catalina.startup.Catalina$SetParentClassLoaderRule this
        start local 2 // java.lang.ClassLoader parentClassLoader
         0: .line 1038
            aload 0 /* this */
            aload 1
            putfield org.apache.catalina.startup.Catalina$SetParentClassLoaderRule.this$0:Lorg/apache/catalina/startup/Catalina;
            aload 0 /* this */
            invokespecial org.apache.tomcat.util.digester.Rule.<init>:()V
         1: .line 1044
            aload 0 /* this */
            aconst_null
            putfield org.apache.catalina.startup.Catalina$SetParentClassLoaderRule.parentClassLoader:Ljava/lang/ClassLoader;
         2: .line 1040
            aload 0 /* this */
            aload 2 /* parentClassLoader */
            putfield org.apache.catalina.startup.Catalina$SetParentClassLoaderRule.parentClassLoader:Ljava/lang/ClassLoader;
         3: .line 1042
            return
        end local 2 // java.lang.ClassLoader parentClassLoader
        end local 0 // org.apache.catalina.startup.Catalina$SetParentClassLoaderRule this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    4     0               this  Lorg/apache/catalina/startup/Catalina$SetParentClassLoaderRule;
            0    4     2  parentClassLoader  Ljava/lang/ClassLoader;
    MethodParameters:
                   Name  Flags
      this$0             final
      parentClassLoader  

  public void begin(java.lang.String, java.lang.String, org.xml.sax.Attributes);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Lorg/xml/sax/Attributes;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // org.apache.catalina.startup.Catalina$SetParentClassLoaderRule this
        start local 1 // java.lang.String namespace
        start local 2 // java.lang.String name
        start local 3 // org.xml.sax.Attributes attributes
         0: .line 1050
            aload 0 /* this */
            getfield org.apache.catalina.startup.Catalina$SetParentClassLoaderRule.digester:Lorg/apache/tomcat/util/digester/Digester;
            invokevirtual org.apache.tomcat.util.digester.Digester.getLogger:()Lorg/apache/juli/logging/Log;
            invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
            ifeq 2
         1: .line 1051
            aload 0 /* this */
            getfield org.apache.catalina.startup.Catalina$SetParentClassLoaderRule.digester:Lorg/apache/tomcat/util/digester/Digester;
            invokevirtual org.apache.tomcat.util.digester.Digester.getLogger:()Lorg/apache/juli/logging/Log;
            ldc "Setting parent class loader"
            invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
         2: .line 1054
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.Catalina$SetParentClassLoaderRule.digester:Lorg/apache/tomcat/util/digester/Digester;
            invokevirtual org.apache.tomcat.util.digester.Digester.peek:()Ljava/lang/Object;
            checkcast org.apache.catalina.Container
            astore 4 /* top */
        start local 4 // org.apache.catalina.Container top
         3: .line 1055
            aload 4 /* top */
            aload 0 /* this */
            getfield org.apache.catalina.startup.Catalina$SetParentClassLoaderRule.parentClassLoader:Ljava/lang/ClassLoader;
            invokeinterface org.apache.catalina.Container.setParentClassLoader:(Ljava/lang/ClassLoader;)V
         4: .line 1057
            aload 0 /* this */
            getfield org.apache.catalina.startup.Catalina$SetParentClassLoaderRule.digester:Lorg/apache/tomcat/util/digester/Digester;
            invokevirtual org.apache.tomcat.util.digester.Digester.getGeneratedCode:()Ljava/lang/StringBuilder;
            astore 5 /* code */
        start local 5 // java.lang.StringBuilder code
         5: .line 1058
            aload 5 /* code */
            ifnull 9
         6: .line 1059
            aload 5 /* code */
            aload 0 /* this */
            getfield org.apache.catalina.startup.Catalina$SetParentClassLoaderRule.digester:Lorg/apache/tomcat/util/digester/Digester;
            aload 4 /* top */
            invokevirtual org.apache.tomcat.util.digester.Digester.toVariableName:(Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ".setParentClassLoader("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         7: .line 1060
            aload 5 /* code */
            aload 0 /* this */
            getfield org.apache.catalina.startup.Catalina$SetParentClassLoaderRule.digester:Lorg/apache/tomcat/util/digester/Digester;
            aload 0 /* this */
            getfield org.apache.catalina.startup.Catalina$SetParentClassLoaderRule.this$0:Lorg/apache/catalina/startup/Catalina;
            invokevirtual org.apache.tomcat.util.digester.Digester.toVariableName:(Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ".getParentClassLoader());"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         8: .line 1061
            aload 5 /* code */
            invokestatic java.lang.System.lineSeparator:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         9: .line 1063
      StackMap locals: org.apache.catalina.Container java.lang.StringBuilder
      StackMap stack:
            return
        end local 5 // java.lang.StringBuilder code
        end local 4 // org.apache.catalina.Container top
        end local 3 // org.xml.sax.Attributes attributes
        end local 2 // java.lang.String name
        end local 1 // java.lang.String namespace
        end local 0 // org.apache.catalina.startup.Catalina$SetParentClassLoaderRule this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lorg/apache/catalina/startup/Catalina$SetParentClassLoaderRule;
            0   10     1   namespace  Ljava/lang/String;
            0   10     2        name  Ljava/lang/String;
            0   10     3  attributes  Lorg/xml/sax/Attributes;
            3   10     4         top  Lorg/apache/catalina/Container;
            5   10     5        code  Ljava/lang/StringBuilder;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
            Name  Flags
      namespace   
      name        
      attributes  
}
SourceFile: "Catalina.java"
NestHost: org.apache.catalina.startup.Catalina
InnerClasses:
  final SetParentClassLoaderRule = org.apache.catalina.startup.Catalina$SetParentClassLoaderRule of org.apache.catalina.startup.Catalina