public abstract class org.eclipse.jdt.core.dom.BodyDeclaration extends org.eclipse.jdt.core.dom.ASTNode
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.eclipse.jdt.core.dom.BodyDeclaration
  super_class: org.eclipse.jdt.core.dom.ASTNode
{
  org.eclipse.jdt.core.dom.Javadoc optionalDocComment;
    descriptor: Lorg/eclipse/jdt/core/dom/Javadoc;
    flags: (0x0000) 

  private int modifierFlags;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  org.eclipse.jdt.core.dom.ASTNode$NodeList modifiers;
    descriptor: Lorg/eclipse/jdt/core/dom/ASTNode$NodeList;
    flags: (0x0000) 

  abstract org.eclipse.jdt.core.dom.SimplePropertyDescriptor internalModifiersProperty();
    descriptor: ()Lorg/eclipse/jdt/core/dom/SimplePropertyDescriptor;
    flags: (0x0400) ACC_ABSTRACT

  abstract org.eclipse.jdt.core.dom.ChildListPropertyDescriptor internalModifiers2Property();
    descriptor: ()Lorg/eclipse/jdt/core/dom/ChildListPropertyDescriptor;
    flags: (0x0400) ACC_ABSTRACT

  public final org.eclipse.jdt.core.dom.ChildListPropertyDescriptor getModifiersProperty();
    descriptor: ()Lorg/eclipse/jdt/core/dom/ChildListPropertyDescriptor;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.core.dom.BodyDeclaration this
         0: .line 97
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.core.dom.BodyDeclaration.internalModifiers2Property:()Lorg/eclipse/jdt/core/dom/ChildListPropertyDescriptor;
            areturn
        end local 0 // org.eclipse.jdt.core.dom.BodyDeclaration this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/core/dom/BodyDeclaration;

  abstract org.eclipse.jdt.core.dom.ChildPropertyDescriptor internalJavadocProperty();
    descriptor: ()Lorg/eclipse/jdt/core/dom/ChildPropertyDescriptor;
    flags: (0x0400) ACC_ABSTRACT

  public final org.eclipse.jdt.core.dom.ChildPropertyDescriptor getJavadocProperty();
    descriptor: ()Lorg/eclipse/jdt/core/dom/ChildPropertyDescriptor;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.core.dom.BodyDeclaration this
         0: .line 116
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.core.dom.BodyDeclaration.internalJavadocProperty:()Lorg/eclipse/jdt/core/dom/ChildPropertyDescriptor;
            areturn
        end local 0 // org.eclipse.jdt.core.dom.BodyDeclaration this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/core/dom/BodyDeclaration;

  static final org.eclipse.jdt.core.dom.ChildPropertyDescriptor internalJavadocPropertyFactory(java.lang.Class);
    descriptor: (Ljava/lang/Class;)Lorg/eclipse/jdt/core/dom/ChildPropertyDescriptor;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Code:
      stack=7, locals=1, args_size=1
        start local 0 // java.lang.Class nodeClass
         0: .line 126
            new org.eclipse.jdt.core.dom.ChildPropertyDescriptor
            dup
            aload 0 /* nodeClass */
            ldc "javadoc"
            ldc Lorg/eclipse/jdt/core/dom/Javadoc;
            iconst_0
            iconst_0
            invokespecial org.eclipse.jdt.core.dom.ChildPropertyDescriptor.<init>:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;ZZ)V
            areturn
        end local 0 // java.lang.Class nodeClass
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  nodeClass  Ljava/lang/Class;
    MethodParameters:
           Name  Flags
      nodeClass  

  static final org.eclipse.jdt.core.dom.SimplePropertyDescriptor internalModifiersPropertyFactory(java.lang.Class);
    descriptor: (Ljava/lang/Class;)Lorg/eclipse/jdt/core/dom/SimplePropertyDescriptor;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // java.lang.Class nodeClass
         0: .line 137
            new org.eclipse.jdt.core.dom.SimplePropertyDescriptor
            dup
            aload 0 /* nodeClass */
            ldc "modifiers"
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            iconst_1
            invokespecial org.eclipse.jdt.core.dom.SimplePropertyDescriptor.<init>:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;Z)V
            areturn
        end local 0 // java.lang.Class nodeClass
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  nodeClass  Ljava/lang/Class;
    MethodParameters:
           Name  Flags
      nodeClass  

  static final org.eclipse.jdt.core.dom.ChildListPropertyDescriptor internalModifiers2PropertyFactory(java.lang.Class);
    descriptor: (Ljava/lang/Class;)Lorg/eclipse/jdt/core/dom/ChildListPropertyDescriptor;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // java.lang.Class nodeClass
         0: .line 147
            new org.eclipse.jdt.core.dom.ChildListPropertyDescriptor
            dup
            aload 0 /* nodeClass */
            ldc "modifiers"
            ldc Lorg/eclipse/jdt/core/dom/IExtendedModifier;
            iconst_1
            invokespecial org.eclipse.jdt.core.dom.ChildListPropertyDescriptor.<init>:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;Z)V
            areturn
        end local 0 // java.lang.Class nodeClass
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  nodeClass  Ljava/lang/Class;
    MethodParameters:
           Name  Flags
      nodeClass  

  void <init>(org.eclipse.jdt.core.dom.AST);
    descriptor: (Lorg/eclipse/jdt/core/dom/AST;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.core.dom.BodyDeclaration this
        start local 1 // org.eclipse.jdt.core.dom.AST ast
         0: .line 160
            aload 0 /* this */
            aload 1 /* ast */
            invokespecial org.eclipse.jdt.core.dom.ASTNode.<init>:(Lorg/eclipse/jdt/core/dom/AST;)V
         1: .line 53
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jdt.core.dom.BodyDeclaration.optionalDocComment:Lorg/eclipse/jdt/core/dom/Javadoc;
         2: .line 60
            aload 0 /* this */
            iconst_0
            putfield org.eclipse.jdt.core.dom.BodyDeclaration.modifierFlags:I
         3: .line 69
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jdt.core.dom.BodyDeclaration.modifiers:Lorg/eclipse/jdt/core/dom/ASTNode$NodeList;
         4: .line 161
            aload 1 /* ast */
            getfield org.eclipse.jdt.core.dom.AST.apiLevel:I
            iconst_3
            if_icmplt 6
         5: .line 162
            aload 0 /* this */
            new org.eclipse.jdt.core.dom.ASTNode$NodeList
            dup
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.core.dom.BodyDeclaration.internalModifiers2Property:()Lorg/eclipse/jdt/core/dom/ChildListPropertyDescriptor;
            invokespecial org.eclipse.jdt.core.dom.ASTNode$NodeList.<init>:(Lorg/eclipse/jdt/core/dom/ASTNode;Lorg/eclipse/jdt/core/dom/ChildListPropertyDescriptor;)V
            putfield org.eclipse.jdt.core.dom.BodyDeclaration.modifiers:Lorg/eclipse/jdt/core/dom/ASTNode$NodeList;
         6: .line 164
      StackMap locals: org.eclipse.jdt.core.dom.BodyDeclaration org.eclipse.jdt.core.dom.AST
      StackMap stack:
            return
        end local 1 // org.eclipse.jdt.core.dom.AST ast
        end local 0 // org.eclipse.jdt.core.dom.BodyDeclaration this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/eclipse/jdt/core/dom/BodyDeclaration;
            0    7     1   ast  Lorg/eclipse/jdt/core/dom/AST;
    MethodParameters:
      Name  Flags
      ast   

  public org.eclipse.jdt.core.dom.Javadoc getJavadoc();
    descriptor: ()Lorg/eclipse/jdt/core/dom/Javadoc;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.core.dom.BodyDeclaration this
         0: .line 172
            aload 0 /* this */
            getfield org.eclipse.jdt.core.dom.BodyDeclaration.optionalDocComment:Lorg/eclipse/jdt/core/dom/Javadoc;
            areturn
        end local 0 // org.eclipse.jdt.core.dom.BodyDeclaration this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/core/dom/BodyDeclaration;

  public void setJavadoc(org.eclipse.jdt.core.dom.Javadoc);
    descriptor: (Lorg/eclipse/jdt/core/dom/Javadoc;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.eclipse.jdt.core.dom.BodyDeclaration this
        start local 1 // org.eclipse.jdt.core.dom.Javadoc docComment
         0: .line 182
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.core.dom.BodyDeclaration.internalJavadocProperty:()Lorg/eclipse/jdt/core/dom/ChildPropertyDescriptor;
            astore 2 /* p */
        start local 2 // org.eclipse.jdt.core.dom.ChildPropertyDescriptor p
         1: .line 183
            aload 0 /* this */
            getfield org.eclipse.jdt.core.dom.BodyDeclaration.optionalDocComment:Lorg/eclipse/jdt/core/dom/Javadoc;
            astore 3 /* oldChild */
        start local 3 // org.eclipse.jdt.core.dom.ASTNode oldChild
         2: .line 184
            aload 0 /* this */
            aload 3 /* oldChild */
            aload 1 /* docComment */
            aload 2 /* p */
            invokevirtual org.eclipse.jdt.core.dom.BodyDeclaration.preReplaceChild:(Lorg/eclipse/jdt/core/dom/ASTNode;Lorg/eclipse/jdt/core/dom/ASTNode;Lorg/eclipse/jdt/core/dom/ChildPropertyDescriptor;)V
         3: .line 185
            aload 0 /* this */
            aload 1 /* docComment */
            putfield org.eclipse.jdt.core.dom.BodyDeclaration.optionalDocComment:Lorg/eclipse/jdt/core/dom/Javadoc;
         4: .line 186
            aload 0 /* this */
            aload 3 /* oldChild */
            aload 1 /* docComment */
            aload 2 /* p */
            invokevirtual org.eclipse.jdt.core.dom.BodyDeclaration.postReplaceChild:(Lorg/eclipse/jdt/core/dom/ASTNode;Lorg/eclipse/jdt/core/dom/ASTNode;Lorg/eclipse/jdt/core/dom/ChildPropertyDescriptor;)V
         5: .line 187
            return
        end local 3 // org.eclipse.jdt.core.dom.ASTNode oldChild
        end local 2 // org.eclipse.jdt.core.dom.ChildPropertyDescriptor p
        end local 1 // org.eclipse.jdt.core.dom.Javadoc docComment
        end local 0 // org.eclipse.jdt.core.dom.BodyDeclaration this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lorg/eclipse/jdt/core/dom/BodyDeclaration;
            0    6     1  docComment  Lorg/eclipse/jdt/core/dom/Javadoc;
            1    6     2           p  Lorg/eclipse/jdt/core/dom/ChildPropertyDescriptor;
            2    6     3    oldChild  Lorg/eclipse/jdt/core/dom/ASTNode;
    MethodParameters:
            Name  Flags
      docComment  

  public int getModifiers();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // org.eclipse.jdt.core.dom.BodyDeclaration this
         0: .line 201
            aload 0 /* this */
            getfield org.eclipse.jdt.core.dom.BodyDeclaration.modifiers:Lorg/eclipse/jdt/core/dom/ASTNode$NodeList;
            ifnonnull 2
         1: .line 203
            aload 0 /* this */
            getfield org.eclipse.jdt.core.dom.BodyDeclaration.modifierFlags:I
            ireturn
         2: .line 208
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 1 /* computedmodifierFlags */
        start local 1 // int computedmodifierFlags
         3: .line 209
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.core.dom.BodyDeclaration.modifiers:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2 /* it */
        start local 2 // java.util.Iterator it
         4: goto 8
         5: .line 210
      StackMap locals: int java.util.Iterator
      StackMap stack:
            aload 2 /* it */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 3 /* x */
        start local 3 // java.lang.Object x
         6: .line 211
            aload 3 /* x */
            instanceof org.eclipse.jdt.core.dom.Modifier
            ifeq 8
         7: .line 212
            iload 1 /* computedmodifierFlags */
            aload 3 /* x */
            checkcast org.eclipse.jdt.core.dom.Modifier
            invokevirtual org.eclipse.jdt.core.dom.Modifier.getKeyword:()Lorg/eclipse/jdt/core/dom/Modifier$ModifierKeyword;
            invokevirtual org.eclipse.jdt.core.dom.Modifier$ModifierKeyword.toFlagValue:()I
            ior
            istore 1 /* computedmodifierFlags */
        end local 3 // java.lang.Object x
         8: .line 209
      StackMap locals:
      StackMap stack:
            aload 2 /* it */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        end local 2 // java.util.Iterator it
         9: .line 215
            iload 1 /* computedmodifierFlags */
            ireturn
        end local 1 // int computedmodifierFlags
        end local 0 // org.eclipse.jdt.core.dom.BodyDeclaration this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   10     0                   this  Lorg/eclipse/jdt/core/dom/BodyDeclaration;
            3   10     1  computedmodifierFlags  I
            4    9     2                     it  Ljava/util/Iterator;
            6    8     3                      x  Ljava/lang/Object;

  public void setModifiers(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.core.dom.BodyDeclaration this
        start local 1 // int modifiers
         0: .line 230
            aload 0 /* this */
            iload 1 /* modifiers */
            invokevirtual org.eclipse.jdt.core.dom.BodyDeclaration.internalSetModifiers:(I)V
         1: .line 231
            return
        end local 1 // int modifiers
        end local 0 // org.eclipse.jdt.core.dom.BodyDeclaration this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/eclipse/jdt/core/dom/BodyDeclaration;
            0    2     1  modifiers  I
    MethodParameters:
           Name  Flags
      modifiers  

  final void internalSetModifiers(int);
    descriptor: (I)V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.eclipse.jdt.core.dom.BodyDeclaration this
        start local 1 // int pmodifiers
         0: .line 240
            aload 0 /* this */
            getfield org.eclipse.jdt.core.dom.BodyDeclaration.modifiers:Lorg/eclipse/jdt/core/dom/ASTNode$NodeList;
            ifnull 2
         1: .line 241
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.core.dom.BodyDeclaration.supportedOnlyIn2:()V
         2: .line 243
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.core.dom.BodyDeclaration.internalModifiersProperty:()Lorg/eclipse/jdt/core/dom/SimplePropertyDescriptor;
            astore 2 /* p */
        start local 2 // org.eclipse.jdt.core.dom.SimplePropertyDescriptor p
         3: .line 244
            aload 0 /* this */
            aload 2 /* p */
            invokevirtual org.eclipse.jdt.core.dom.BodyDeclaration.preValueChange:(Lorg/eclipse/jdt/core/dom/SimplePropertyDescriptor;)V
         4: .line 245
            aload 0 /* this */
            iload 1 /* pmodifiers */
            putfield org.eclipse.jdt.core.dom.BodyDeclaration.modifierFlags:I
         5: .line 246
            aload 0 /* this */
            aload 2 /* p */
            invokevirtual org.eclipse.jdt.core.dom.BodyDeclaration.postValueChange:(Lorg/eclipse/jdt/core/dom/SimplePropertyDescriptor;)V
         6: .line 247
            return
        end local 2 // org.eclipse.jdt.core.dom.SimplePropertyDescriptor p
        end local 1 // int pmodifiers
        end local 0 // org.eclipse.jdt.core.dom.BodyDeclaration this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0        this  Lorg/eclipse/jdt/core/dom/BodyDeclaration;
            0    7     1  pmodifiers  I
            3    7     2           p  Lorg/eclipse/jdt/core/dom/SimplePropertyDescriptor;
    MethodParameters:
            Name  Flags
      pmodifiers  

  public java.util.List modifiers();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.core.dom.BodyDeclaration this
         0: .line 261
            aload 0 /* this */
            getfield org.eclipse.jdt.core.dom.BodyDeclaration.modifiers:Lorg/eclipse/jdt/core/dom/ASTNode$NodeList;
            ifnonnull 2
         1: .line 262
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.core.dom.BodyDeclaration.unsupportedIn2:()V
         2: .line 264
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.core.dom.BodyDeclaration.modifiers:Lorg/eclipse/jdt/core/dom/ASTNode$NodeList;
            areturn
        end local 0 // org.eclipse.jdt.core.dom.BodyDeclaration this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/eclipse/jdt/core/dom/BodyDeclaration;

  int memSize();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.core.dom.BodyDeclaration this
         0: .line 269
            bipush 52
            ireturn
        end local 0 // org.eclipse.jdt.core.dom.BodyDeclaration this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/core/dom/BodyDeclaration;
}
SourceFile: "BodyDeclaration.java"
InnerClasses:
  NodeList = org.eclipse.jdt.core.dom.ASTNode$NodeList of org.eclipse.jdt.core.dom.ASTNode
  public ModifierKeyword = org.eclipse.jdt.core.dom.Modifier$ModifierKeyword of org.eclipse.jdt.core.dom.Modifier