class org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor extends org.eclipse.jdt.internal.compiler.ASTVisitor
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor
  super_class: org.eclipse.jdt.internal.compiler.ASTVisitor
{
  private final org.eclipse.jdt.internal.core.search.matching.MatchLocator locator;
    descriptor: Lorg/eclipse/jdt/internal/core/search/matching/MatchLocator;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.eclipse.jdt.core.IJavaElement enclosingElement;
    descriptor: Lorg/eclipse/jdt/core/IJavaElement;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.eclipse.jdt.internal.core.search.matching.MatchingNodeSet nodeSet;
    descriptor: Lorg/eclipse/jdt/internal/core/search/matching/MatchingNodeSet;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.eclipse.jdt.internal.compiler.ast.ASTNode[] matchingNodes;
    descriptor: [Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.eclipse.jdt.internal.compiler.ast.ASTNode matchingNode;
    descriptor: Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  org.eclipse.jdt.internal.compiler.util.HashtableOfIntValues occurrencesCounts;
    descriptor: Lorg/eclipse/jdt/internal/compiler/util/HashtableOfIntValues;
    flags: (0x0000) 

  org.eclipse.jdt.internal.compiler.util.HashtableOfIntValues inTypeOccurrencesCounts;
    descriptor: Lorg/eclipse/jdt/internal/compiler/util/HashtableOfIntValues;
    flags: (0x0000) 

  int nodesCount;
    descriptor: I
    flags: (0x0000) 

  private org.eclipse.jdt.internal.compiler.ast.Annotation annotation;
    descriptor: Lorg/eclipse/jdt/internal/compiler/ast/Annotation;
    flags: (0x0002) ACC_PRIVATE

  private org.eclipse.jdt.internal.compiler.ast.LocalDeclaration localDeclaration;
    descriptor: Lorg/eclipse/jdt/internal/compiler/ast/LocalDeclaration;
    flags: (0x0002) ACC_PRIVATE

  org.eclipse.jdt.core.IJavaElement localElement;
    descriptor: Lorg/eclipse/jdt/core/IJavaElement;
    flags: (0x0000) 

  org.eclipse.jdt.core.IJavaElement[] localElements;
    descriptor: [Lorg/eclipse/jdt/core/IJavaElement;
    flags: (0x0000) 

  org.eclipse.jdt.core.IJavaElement[] otherElements;
    descriptor: [Lorg/eclipse/jdt/core/IJavaElement;
    flags: (0x0000) 

  org.eclipse.jdt.core.IJavaElement[][] allOtherElements;
    descriptor: [[Lorg/eclipse/jdt/core/IJavaElement;
    flags: (0x0000) 

  int ptr;
    descriptor: I
    flags: (0x0000) 

  int[] ptrs;
    descriptor: [I
    flags: (0x0000) 

  private boolean typeInHierarchy;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  public void <init>(org.eclipse.jdt.core.IJavaElement, org.eclipse.jdt.internal.compiler.ast.ASTNode[], org.eclipse.jdt.internal.core.search.matching.MatchingNodeSet, org.eclipse.jdt.internal.core.search.matching.MatchLocator, boolean);
    descriptor: (Lorg/eclipse/jdt/core/IJavaElement;[Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;Lorg/eclipse/jdt/internal/core/search/matching/MatchingNodeSet;Lorg/eclipse/jdt/internal/core/search/matching/MatchLocator;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=6
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
        start local 1 // org.eclipse.jdt.core.IJavaElement element
        start local 2 // org.eclipse.jdt.internal.compiler.ast.ASTNode[] nodes
        start local 3 // org.eclipse.jdt.internal.core.search.matching.MatchingNodeSet set
        start local 4 // org.eclipse.jdt.internal.core.search.matching.MatchLocator locator
        start local 5 // boolean typeInHierarchy
         0: .line 59
            aload 0 /* this */
            invokespecial org.eclipse.jdt.internal.compiler.ASTVisitor.<init>:()V
         1: .line 47
            aload 0 /* this */
            iconst_0
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.nodesCount:I
         2: .line 55
            aload 0 /* this */
            iconst_m1
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.ptr:I
         3: .line 60
            aload 0 /* this */
            aload 1 /* element */
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.enclosingElement:Lorg/eclipse/jdt/core/IJavaElement;
         4: .line 61
            aload 0 /* this */
            iload 5 /* typeInHierarchy */
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.typeInHierarchy:Z
         5: .line 62
            aload 0 /* this */
            aload 3 /* set */
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.nodeSet:Lorg/eclipse/jdt/internal/core/search/matching/MatchingNodeSet;
         6: .line 63
            aload 0 /* this */
            aload 4 /* locator */
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.locator:Lorg/eclipse/jdt/internal/core/search/matching/MatchLocator;
         7: .line 64
            aload 0 /* this */
            new org.eclipse.jdt.internal.compiler.util.HashtableOfIntValues
            dup
            invokespecial org.eclipse.jdt.internal.compiler.util.HashtableOfIntValues.<init>:()V
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.occurrencesCounts:Lorg/eclipse/jdt/internal/compiler/util/HashtableOfIntValues;
         8: .line 65
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.locator:Lorg/eclipse/jdt/internal/core/search/matching/MatchLocator;
            getfield org.eclipse.jdt.internal.core.search.matching.MatchLocator.inTypeOccurrencesCounts:Lorg/eclipse/jdt/internal/compiler/util/HashtableOfIntValues;
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.inTypeOccurrencesCounts:Lorg/eclipse/jdt/internal/compiler/util/HashtableOfIntValues;
         9: .line 66
            aload 2 /* nodes */
            ifnonnull 13
        10: .line 67
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.matchingNode:Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;
        11: .line 68
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.matchingNodes:[Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;
        12: .line 69
            goto 23
        13: .line 70
      StackMap locals: org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor org.eclipse.jdt.core.IJavaElement org.eclipse.jdt.internal.compiler.ast.ASTNode[] org.eclipse.jdt.internal.core.search.matching.MatchingNodeSet org.eclipse.jdt.internal.core.search.matching.MatchLocator int
      StackMap stack:
            aload 0 /* this */
            aload 2 /* nodes */
            arraylength
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.nodesCount:I
        14: .line 71
            aload 2 /* nodes */
            arraylength
            iconst_1
            if_icmpne 18
        15: .line 72
            aload 0 /* this */
            aload 2 /* nodes */
            iconst_0
            aaload
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.matchingNode:Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;
        16: .line 73
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.matchingNodes:[Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;
        17: .line 74
            goto 23
        18: .line 75
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.matchingNode:Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;
        19: .line 76
            aload 0 /* this */
            aload 2 /* nodes */
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.matchingNodes:[Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;
        20: .line 77
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.nodesCount:I
            anewarray org.eclipse.jdt.core.IJavaElement
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.localElements:[Lorg/eclipse/jdt/core/IJavaElement;
        21: .line 78
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.nodesCount:I
            newarray 10
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.ptrs:[I
        22: .line 79
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.nodesCount:I
            anewarray org.eclipse.jdt.core.IJavaElement[]
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.allOtherElements:[[Lorg/eclipse/jdt/core/IJavaElement;
        23: .line 81
      StackMap locals:
      StackMap stack:
            return
        end local 5 // boolean typeInHierarchy
        end local 4 // org.eclipse.jdt.internal.core.search.matching.MatchLocator locator
        end local 3 // org.eclipse.jdt.internal.core.search.matching.MatchingNodeSet set
        end local 2 // org.eclipse.jdt.internal.compiler.ast.ASTNode[] nodes
        end local 1 // org.eclipse.jdt.core.IJavaElement element
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   24     0             this  Lorg/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor;
            0   24     1          element  Lorg/eclipse/jdt/core/IJavaElement;
            0   24     2            nodes  [Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;
            0   24     3              set  Lorg/eclipse/jdt/internal/core/search/matching/MatchingNodeSet;
            0   24     4          locator  Lorg/eclipse/jdt/internal/core/search/matching/MatchLocator;
            0   24     5  typeInHierarchy  Z
    MethodParameters:
                 Name  Flags
      element          
      nodes            
      set              
      locator          
      typeInHierarchy  

  public void endVisit(org.eclipse.jdt.internal.compiler.ast.Argument, org.eclipse.jdt.internal.compiler.lookup.BlockScope);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/Argument;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.Argument argument
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope scope
         0: .line 85
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.localDeclaration:Lorg/eclipse/jdt/internal/compiler/ast/LocalDeclaration;
         1: .line 86
            return
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope scope
        end local 1 // org.eclipse.jdt.internal.compiler.ast.Argument argument
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor;
            0    2     1  argument  Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            0    2     2     scope  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
    MethodParameters:
          Name  Flags
      argument  
      scope     

  public void endVisit(org.eclipse.jdt.internal.compiler.ast.LocalDeclaration, org.eclipse.jdt.internal.compiler.lookup.BlockScope);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/LocalDeclaration;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.LocalDeclaration declaration
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope scope
         0: .line 89
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.localDeclaration:Lorg/eclipse/jdt/internal/compiler/ast/LocalDeclaration;
         1: .line 90
            return
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope scope
        end local 1 // org.eclipse.jdt.internal.compiler.ast.LocalDeclaration declaration
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor;
            0    2     1  declaration  Lorg/eclipse/jdt/internal/compiler/ast/LocalDeclaration;
            0    2     2        scope  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
    MethodParameters:
             Name  Flags
      declaration  
      scope        

  public void endVisit(org.eclipse.jdt.internal.compiler.ast.MarkerAnnotation, org.eclipse.jdt.internal.compiler.lookup.BlockScope);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/MarkerAnnotation;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.MarkerAnnotation markerAnnotation
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope unused
         0: .line 93
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.annotation:Lorg/eclipse/jdt/internal/compiler/ast/Annotation;
         1: .line 94
            return
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope unused
        end local 1 // org.eclipse.jdt.internal.compiler.ast.MarkerAnnotation markerAnnotation
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lorg/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor;
            0    2     1  markerAnnotation  Lorg/eclipse/jdt/internal/compiler/ast/MarkerAnnotation;
            0    2     2            unused  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
    MethodParameters:
                  Name  Flags
      markerAnnotation  
      unused            

  public void endVisit(org.eclipse.jdt.internal.compiler.ast.NormalAnnotation, org.eclipse.jdt.internal.compiler.lookup.BlockScope);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/NormalAnnotation;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.NormalAnnotation normalAnnotation
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope unused
         0: .line 97
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.annotation:Lorg/eclipse/jdt/internal/compiler/ast/Annotation;
         1: .line 98
            return
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope unused
        end local 1 // org.eclipse.jdt.internal.compiler.ast.NormalAnnotation normalAnnotation
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lorg/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor;
            0    2     1  normalAnnotation  Lorg/eclipse/jdt/internal/compiler/ast/NormalAnnotation;
            0    2     2            unused  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
    MethodParameters:
                  Name  Flags
      normalAnnotation  
      unused            

  public void endVisit(org.eclipse.jdt.internal.compiler.ast.SingleMemberAnnotation, org.eclipse.jdt.internal.compiler.lookup.BlockScope);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/SingleMemberAnnotation;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.SingleMemberAnnotation singleMemberAnnotation
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope unused
         0: .line 101
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.annotation:Lorg/eclipse/jdt/internal/compiler/ast/Annotation;
         1: .line 102
            return
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope unused
        end local 1 // org.eclipse.jdt.internal.compiler.ast.SingleMemberAnnotation singleMemberAnnotation
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    2     0                    this  Lorg/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor;
            0    2     1  singleMemberAnnotation  Lorg/eclipse/jdt/internal/compiler/ast/SingleMemberAnnotation;
            0    2     2                  unused  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
    MethodParameters:
                        Name  Flags
      singleMemberAnnotation  
      unused                  

  org.eclipse.jdt.core.IJavaElement getLocalElement(int);
    descriptor: (I)Lorg/eclipse/jdt/core/IJavaElement;
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
        start local 1 // int idx
         0: .line 104
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.nodesCount:I
            iconst_1
            if_icmpne 2
         1: .line 105
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.localElement:Lorg/eclipse/jdt/core/IJavaElement;
            areturn
         2: .line 107
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.localElements:[Lorg/eclipse/jdt/core/IJavaElement;
            ifnull 4
         3: .line 108
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.localElements:[Lorg/eclipse/jdt/core/IJavaElement;
            iload 1 /* idx */
            aaload
            areturn
         4: .line 110
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // int idx
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor;
            0    5     1   idx  I
    MethodParameters:
      Name  Flags
      idx   

  org.eclipse.jdt.core.IJavaElement[] getOtherElements(int);
    descriptor: (I)[Lorg/eclipse/jdt/core/IJavaElement;
    flags: (0x0000) 
    Code:
      stack=6, locals=4, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
        start local 1 // int idx
         0: .line 113
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.nodesCount:I
            iconst_1
            if_icmpne 6
         1: .line 114
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.otherElements:[Lorg/eclipse/jdt/core/IJavaElement;
            ifnull 5
         2: .line 115
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.otherElements:[Lorg/eclipse/jdt/core/IJavaElement;
            arraylength
            istore 2 /* length */
        start local 2 // int length
         3: .line 116
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.ptr:I
            iload 2 /* length */
            iconst_1
            isub
            if_icmpge 5
         4: .line 117
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.otherElements:[Lorg/eclipse/jdt/core/IJavaElement;
            iconst_0
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.ptr:I
            iconst_1
            iadd
            anewarray org.eclipse.jdt.core.IJavaElement
            dup_x1
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.otherElements:[Lorg/eclipse/jdt/core/IJavaElement;
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.ptr:I
            iconst_1
            iadd
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        end local 2 // int length
         5: .line 120
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.otherElements:[Lorg/eclipse/jdt/core/IJavaElement;
            areturn
         6: .line 122
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.allOtherElements:[[Lorg/eclipse/jdt/core/IJavaElement;
            ifnonnull 7
            aconst_null
            goto 8
      StackMap locals:
      StackMap stack:
         7: aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.allOtherElements:[[Lorg/eclipse/jdt/core/IJavaElement;
            iload 1 /* idx */
            aaload
      StackMap locals:
      StackMap stack: org.eclipse.jdt.core.IJavaElement[]
         8: astore 2 /* elements */
        start local 2 // org.eclipse.jdt.core.IJavaElement[] elements
         9: .line 123
            aload 2 /* elements */
            ifnull 13
        10: .line 124
            aload 2 /* elements */
            arraylength
            istore 3 /* length */
        start local 3 // int length
        11: .line 125
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.ptrs:[I
            iload 1 /* idx */
            iaload
            iload 3 /* length */
            iconst_1
            isub
            if_icmpge 13
        12: .line 126
            aload 2 /* elements */
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.allOtherElements:[[Lorg/eclipse/jdt/core/IJavaElement;
            iload 1 /* idx */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.ptrs:[I
            iload 1 /* idx */
            iaload
            iconst_1
            iadd
            anewarray org.eclipse.jdt.core.IJavaElement
            dup_x2
            aastore
            dup
            astore 2 /* elements */
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.ptrs:[I
            iload 1 /* idx */
            iaload
            iconst_1
            iadd
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        end local 3 // int length
        13: .line 129
      StackMap locals: org.eclipse.jdt.core.IJavaElement[]
      StackMap stack:
            aload 2 /* elements */
            areturn
        end local 2 // org.eclipse.jdt.core.IJavaElement[] elements
        end local 1 // int idx
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   14     0      this  Lorg/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor;
            0   14     1       idx  I
            3    5     2    length  I
            9   14     2  elements  [Lorg/eclipse/jdt/core/IJavaElement;
           11   13     3    length  I
    MethodParameters:
      Name  Flags
      idx   

  private int matchNode(org.eclipse.jdt.internal.compiler.ast.ASTNode);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.ASTNode reference
         0: .line 132
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.matchingNode:Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;
            ifnull 2
         1: .line 133
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.matchingNode:Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;
            aload 1 /* reference */
            if_acmpne 9
            iconst_0
            ireturn
         2: .line 135
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.matchingNodes:[Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;
            arraylength
            istore 2 /* length */
        start local 2 // int length
         3: .line 136
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         4: goto 8
         5: .line 137
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.matchingNodes:[Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;
            iload 3 /* i */
            aaload
            aload 1 /* reference */
            if_acmpne 7
         6: .line 138
            iload 3 /* i */
            ireturn
         7: .line 136
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 3 /* i */
            iload 2 /* length */
            if_icmplt 5
        end local 3 // int i
        end local 2 // int length
         9: .line 142
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
        end local 1 // org.eclipse.jdt.internal.compiler.ast.ASTNode reference
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       this  Lorg/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor;
            0   10     1  reference  Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;
            3    9     2     length  I
            4    9     3          i  I
    MethodParameters:
           Name  Flags
      reference  

  private void storeHandle(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
        start local 1 // int idx
         0: .line 151
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.localDeclaration:Lorg/eclipse/jdt/internal/compiler/ast/LocalDeclaration;
            ifnonnull 1
            return
         1: .line 152
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.locator:Lorg/eclipse/jdt/internal/core/search/matching/MatchLocator;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.localDeclaration:Lorg/eclipse/jdt/internal/compiler/ast/LocalDeclaration;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.enclosingElement:Lorg/eclipse/jdt/core/IJavaElement;
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MatchLocator.createHandle:(Lorg/eclipse/jdt/internal/compiler/ast/AbstractVariableDeclaration;Lorg/eclipse/jdt/core/IJavaElement;)Lorg/eclipse/jdt/core/IJavaElement;
            astore 2 /* handle */
        start local 2 // org.eclipse.jdt.core.IJavaElement handle
         2: .line 153
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.nodesCount:I
            iconst_1
            if_icmpne 30
         3: .line 154
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.localElement:Lorg/eclipse/jdt/core/IJavaElement;
            ifnonnull 14
         4: .line 155
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.annotation:Lorg/eclipse/jdt/internal/compiler/ast/Annotation;
            ifnonnull 7
         5: .line 156
            aload 0 /* this */
            aload 2 /* handle */
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.localElement:Lorg/eclipse/jdt/core/IJavaElement;
         6: .line 157
            goto 58
         7: .line 158
      StackMap locals: org.eclipse.jdt.core.IJavaElement
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.locator:Lorg/eclipse/jdt/internal/core/search/matching/MatchLocator;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.annotation:Lorg/eclipse/jdt/internal/compiler/ast/Annotation;
            aload 2 /* handle */
            checkcast org.eclipse.jdt.core.IAnnotatable
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MatchLocator.createHandle:(Lorg/eclipse/jdt/internal/compiler/ast/Annotation;Lorg/eclipse/jdt/core/IAnnotatable;)Lorg/eclipse/jdt/core/IJavaElement;
            astore 3 /* annotHandle */
        start local 3 // org.eclipse.jdt.core.IJavaElement annotHandle
         8: .line 159
            aload 3 /* annotHandle */
            ifnonnull 10
         9: .line 160
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.locator:Lorg/eclipse/jdt/internal/core/search/matching/MatchLocator;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.annotation:Lorg/eclipse/jdt/internal/compiler/ast/Annotation;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.enclosingElement:Lorg/eclipse/jdt/core/IJavaElement;
            checkcast org.eclipse.jdt.core.IAnnotatable
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MatchLocator.createHandle:(Lorg/eclipse/jdt/internal/compiler/ast/Annotation;Lorg/eclipse/jdt/core/IAnnotatable;)Lorg/eclipse/jdt/core/IJavaElement;
            astore 3 /* annotHandle */
        10: .line 162
      StackMap locals: org.eclipse.jdt.core.IJavaElement
      StackMap stack:
            aload 0 /* this */
            aload 3 /* annotHandle */
            ifnonnull 11
            aload 2 /* handle */
            goto 12
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor
        11: aload 3 /* annotHandle */
      StackMap locals: org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor int org.eclipse.jdt.core.IJavaElement org.eclipse.jdt.core.IJavaElement
      StackMap stack: org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor org.eclipse.jdt.core.IJavaElement
        12: putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.localElement:Lorg/eclipse/jdt/core/IJavaElement;
        end local 3 // org.eclipse.jdt.core.IJavaElement annotHandle
        13: .line 164
            goto 58
        14: .line 165
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.ptr:I
            iconst_1
            iadd
            dup_x1
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.ptr:I
            ifne 17
        15: .line 166
            aload 0 /* this */
            bipush 10
            anewarray org.eclipse.jdt.core.IJavaElement
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.otherElements:[Lorg/eclipse/jdt/core/IJavaElement;
        16: .line 167
            goto 20
        17: .line 168
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.otherElements:[Lorg/eclipse/jdt/core/IJavaElement;
            arraylength
            istore 3 /* length */
        start local 3 // int length
        18: .line 169
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.ptr:I
            iload 3 /* length */
            if_icmpne 20
        19: .line 170
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.otherElements:[Lorg/eclipse/jdt/core/IJavaElement;
            iconst_0
            aload 0 /* this */
            iload 3 /* length */
            bipush 10
            iadd
            anewarray org.eclipse.jdt.core.IJavaElement
            dup_x1
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.otherElements:[Lorg/eclipse/jdt/core/IJavaElement;
            iconst_0
            iload 3 /* length */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        end local 3 // int length
        20: .line 173
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.annotation:Lorg/eclipse/jdt/internal/compiler/ast/Annotation;
            ifnonnull 23
        21: .line 174
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.otherElements:[Lorg/eclipse/jdt/core/IJavaElement;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.ptr:I
            aload 2 /* handle */
            aastore
        22: .line 175
            goto 58
        23: .line 176
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.locator:Lorg/eclipse/jdt/internal/core/search/matching/MatchLocator;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.annotation:Lorg/eclipse/jdt/internal/compiler/ast/Annotation;
            aload 2 /* handle */
            checkcast org.eclipse.jdt.core.IAnnotatable
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MatchLocator.createHandle:(Lorg/eclipse/jdt/internal/compiler/ast/Annotation;Lorg/eclipse/jdt/core/IAnnotatable;)Lorg/eclipse/jdt/core/IJavaElement;
            astore 3 /* annotHandle */
        start local 3 // org.eclipse.jdt.core.IJavaElement annotHandle
        24: .line 177
            aload 3 /* annotHandle */
            ifnonnull 26
        25: .line 178
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.locator:Lorg/eclipse/jdt/internal/core/search/matching/MatchLocator;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.annotation:Lorg/eclipse/jdt/internal/compiler/ast/Annotation;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.enclosingElement:Lorg/eclipse/jdt/core/IJavaElement;
            checkcast org.eclipse.jdt.core.IAnnotatable
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MatchLocator.createHandle:(Lorg/eclipse/jdt/internal/compiler/ast/Annotation;Lorg/eclipse/jdt/core/IAnnotatable;)Lorg/eclipse/jdt/core/IJavaElement;
            astore 3 /* annotHandle */
        26: .line 180
      StackMap locals: org.eclipse.jdt.core.IJavaElement
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.otherElements:[Lorg/eclipse/jdt/core/IJavaElement;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.ptr:I
            aload 3 /* annotHandle */
            ifnonnull 27
            aload 2 /* handle */
            goto 28
      StackMap locals: org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor int org.eclipse.jdt.core.IJavaElement org.eclipse.jdt.core.IJavaElement
      StackMap stack: org.eclipse.jdt.core.IJavaElement[] int
        27: aload 3 /* annotHandle */
      StackMap locals: org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor int org.eclipse.jdt.core.IJavaElement org.eclipse.jdt.core.IJavaElement
      StackMap stack: org.eclipse.jdt.core.IJavaElement[] int org.eclipse.jdt.core.IJavaElement
        28: aastore
        end local 3 // org.eclipse.jdt.core.IJavaElement annotHandle
        29: .line 183
            goto 58
        30: .line 184
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.localElements:[Lorg/eclipse/jdt/core/IJavaElement;
            iload 1 /* idx */
            aaload
            ifnonnull 42
        31: .line 185
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.annotation:Lorg/eclipse/jdt/internal/compiler/ast/Annotation;
            ifnonnull 34
        32: .line 186
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.localElements:[Lorg/eclipse/jdt/core/IJavaElement;
            iload 1 /* idx */
            aload 2 /* handle */
            aastore
        33: .line 187
            goto 40
        34: .line 188
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.locator:Lorg/eclipse/jdt/internal/core/search/matching/MatchLocator;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.annotation:Lorg/eclipse/jdt/internal/compiler/ast/Annotation;
            aload 2 /* handle */
            checkcast org.eclipse.jdt.core.IAnnotatable
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MatchLocator.createHandle:(Lorg/eclipse/jdt/internal/compiler/ast/Annotation;Lorg/eclipse/jdt/core/IAnnotatable;)Lorg/eclipse/jdt/core/IJavaElement;
            astore 3 /* annotHandle */
        start local 3 // org.eclipse.jdt.core.IJavaElement annotHandle
        35: .line 189
            aload 3 /* annotHandle */
            ifnonnull 37
        36: .line 190
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.locator:Lorg/eclipse/jdt/internal/core/search/matching/MatchLocator;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.annotation:Lorg/eclipse/jdt/internal/compiler/ast/Annotation;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.enclosingElement:Lorg/eclipse/jdt/core/IJavaElement;
            checkcast org.eclipse.jdt.core.IAnnotatable
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MatchLocator.createHandle:(Lorg/eclipse/jdt/internal/compiler/ast/Annotation;Lorg/eclipse/jdt/core/IAnnotatable;)Lorg/eclipse/jdt/core/IJavaElement;
            astore 3 /* annotHandle */
        37: .line 192
      StackMap locals: org.eclipse.jdt.core.IJavaElement
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.localElements:[Lorg/eclipse/jdt/core/IJavaElement;
            iload 1 /* idx */
            aload 3 /* annotHandle */
            ifnonnull 38
            aload 2 /* handle */
            goto 39
      StackMap locals: org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor int org.eclipse.jdt.core.IJavaElement org.eclipse.jdt.core.IJavaElement
      StackMap stack: org.eclipse.jdt.core.IJavaElement[] int
        38: aload 3 /* annotHandle */
      StackMap locals: org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor int org.eclipse.jdt.core.IJavaElement org.eclipse.jdt.core.IJavaElement
      StackMap stack: org.eclipse.jdt.core.IJavaElement[] int org.eclipse.jdt.core.IJavaElement
        39: aastore
        end local 3 // org.eclipse.jdt.core.IJavaElement annotHandle
        40: .line 194
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.ptrs:[I
            iload 1 /* idx */
            iconst_m1
            iastore
        41: .line 195
            goto 58
        42: .line 196
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.ptrs:[I
            iload 1 /* idx */
            dup2
            iaload
            iconst_1
            iadd
            dup_x2
            iastore
            istore 3 /* oPtr */
        start local 3 // int oPtr
        43: .line 197
            iload 3 /* oPtr */
            ifne 46
        44: .line 198
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.allOtherElements:[[Lorg/eclipse/jdt/core/IJavaElement;
            iload 1 /* idx */
            bipush 10
            anewarray org.eclipse.jdt.core.IJavaElement
            aastore
        45: .line 199
            goto 49
        46: .line 200
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.allOtherElements:[[Lorg/eclipse/jdt/core/IJavaElement;
            iload 1 /* idx */
            aaload
            arraylength
            istore 4 /* length */
        start local 4 // int length
        47: .line 201
            iload 3 /* oPtr */
            iload 4 /* length */
            if_icmpne 49
        48: .line 202
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.allOtherElements:[[Lorg/eclipse/jdt/core/IJavaElement;
            iload 1 /* idx */
            aaload
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.allOtherElements:[[Lorg/eclipse/jdt/core/IJavaElement;
            iload 1 /* idx */
            iload 4 /* length */
            bipush 10
            iadd
            anewarray org.eclipse.jdt.core.IJavaElement
            dup_x2
            aastore
            iconst_0
            iload 4 /* length */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        end local 4 // int length
        49: .line 205
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.annotation:Lorg/eclipse/jdt/internal/compiler/ast/Annotation;
            ifnonnull 52
        50: .line 206
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.allOtherElements:[[Lorg/eclipse/jdt/core/IJavaElement;
            iload 1 /* idx */
            aaload
            iload 3 /* oPtr */
            aload 2 /* handle */
            aastore
        51: .line 207
            goto 58
        52: .line 208
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.locator:Lorg/eclipse/jdt/internal/core/search/matching/MatchLocator;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.annotation:Lorg/eclipse/jdt/internal/compiler/ast/Annotation;
            aload 2 /* handle */
            checkcast org.eclipse.jdt.core.IAnnotatable
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MatchLocator.createHandle:(Lorg/eclipse/jdt/internal/compiler/ast/Annotation;Lorg/eclipse/jdt/core/IAnnotatable;)Lorg/eclipse/jdt/core/IJavaElement;
            astore 4 /* annotHandle */
        start local 4 // org.eclipse.jdt.core.IJavaElement annotHandle
        53: .line 209
            aload 4 /* annotHandle */
            ifnonnull 55
        54: .line 210
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.locator:Lorg/eclipse/jdt/internal/core/search/matching/MatchLocator;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.annotation:Lorg/eclipse/jdt/internal/compiler/ast/Annotation;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.enclosingElement:Lorg/eclipse/jdt/core/IJavaElement;
            checkcast org.eclipse.jdt.core.IAnnotatable
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MatchLocator.createHandle:(Lorg/eclipse/jdt/internal/compiler/ast/Annotation;Lorg/eclipse/jdt/core/IAnnotatable;)Lorg/eclipse/jdt/core/IJavaElement;
            astore 4 /* annotHandle */
        55: .line 212
      StackMap locals: org.eclipse.jdt.core.IJavaElement
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.allOtherElements:[[Lorg/eclipse/jdt/core/IJavaElement;
            iload 1 /* idx */
            aaload
            iload 3 /* oPtr */
            aload 4 /* annotHandle */
            ifnonnull 56
            aload 2 /* handle */
            goto 57
      StackMap locals: org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor int org.eclipse.jdt.core.IJavaElement int org.eclipse.jdt.core.IJavaElement
      StackMap stack: org.eclipse.jdt.core.IJavaElement[] int
        56: aload 4 /* annotHandle */
      StackMap locals: org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor int org.eclipse.jdt.core.IJavaElement int org.eclipse.jdt.core.IJavaElement
      StackMap stack: org.eclipse.jdt.core.IJavaElement[] int org.eclipse.jdt.core.IJavaElement
        57: aastore
        end local 4 // org.eclipse.jdt.core.IJavaElement annotHandle
        end local 3 // int oPtr
        58: .line 216
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.eclipse.jdt.core.IJavaElement handle
        end local 1 // int idx
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   59     0         this  Lorg/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor;
            0   59     1          idx  I
            2   59     2       handle  Lorg/eclipse/jdt/core/IJavaElement;
            8   13     3  annotHandle  Lorg/eclipse/jdt/core/IJavaElement;
           18   20     3       length  I
           24   29     3  annotHandle  Lorg/eclipse/jdt/core/IJavaElement;
           35   40     3  annotHandle  Lorg/eclipse/jdt/core/IJavaElement;
           43   58     3         oPtr  I
           47   49     4       length  I
           53   58     4  annotHandle  Lorg/eclipse/jdt/core/IJavaElement;
    MethodParameters:
      Name  Flags
      idx   

  public boolean visit(org.eclipse.jdt.internal.compiler.ast.Argument, org.eclipse.jdt.internal.compiler.lookup.BlockScope);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/Argument;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.Argument argument
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope scope
         0: .line 219
            aload 0 /* this */
            aload 1 /* argument */
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.localDeclaration:Lorg/eclipse/jdt/internal/compiler/ast/LocalDeclaration;
         1: .line 220
            iconst_1
            ireturn
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope scope
        end local 1 // org.eclipse.jdt.internal.compiler.ast.Argument argument
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor;
            0    2     1  argument  Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            0    2     2     scope  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
    MethodParameters:
          Name  Flags
      argument  
      scope     

  public boolean visit(org.eclipse.jdt.internal.compiler.ast.LambdaExpression, org.eclipse.jdt.internal.compiler.lookup.BlockScope);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/LambdaExpression;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.LambdaExpression lambdaExpression
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope scope
         0: .line 224
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.nodeSet:Lorg/eclipse/jdt/internal/core/search/matching/MatchingNodeSet;
            getfield org.eclipse.jdt.internal.core.search.matching.MatchingNodeSet.matchingNodes:Lorg/eclipse/jdt/internal/compiler/util/SimpleLookupTable;
            aload 1 /* lambdaExpression */
            invokevirtual org.eclipse.jdt.internal.compiler.util.SimpleLookupTable.removeKey:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Integer
            astore 3 /* level */
        start local 3 // java.lang.Integer level
         1: .line 226
            aload 1 /* lambdaExpression */
            getfield org.eclipse.jdt.internal.compiler.ast.LambdaExpression.resolvedType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            ifnull 6
            aload 1 /* lambdaExpression */
            getfield org.eclipse.jdt.internal.compiler.ast.LambdaExpression.resolvedType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.isValidBinding:()Z
            ifeq 6
         2: .line 227
            aload 1 /* lambdaExpression */
            getfield org.eclipse.jdt.internal.compiler.ast.LambdaExpression.descriptor:Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            instanceof org.eclipse.jdt.internal.compiler.lookup.ProblemMethodBinding
            ifne 6
         3: .line 228
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.locator:Lorg/eclipse/jdt/internal/core/search/matching/MatchLocator;
            aload 1 /* lambdaExpression */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.enclosingElement:Lorg/eclipse/jdt/core/IJavaElement;
            aload 3 /* level */
            ifnull 4
            aload 3 /* level */
            invokevirtual java.lang.Integer.intValue:()I
            goto 5
      StackMap locals: org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor org.eclipse.jdt.internal.compiler.ast.LambdaExpression org.eclipse.jdt.internal.compiler.lookup.BlockScope java.lang.Integer
      StackMap stack: org.eclipse.jdt.internal.core.search.matching.MatchLocator org.eclipse.jdt.internal.compiler.ast.LambdaExpression org.eclipse.jdt.core.IJavaElement
         4: iconst_m1
      StackMap locals: org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor org.eclipse.jdt.internal.compiler.ast.LambdaExpression org.eclipse.jdt.internal.compiler.lookup.BlockScope java.lang.Integer
      StackMap stack: org.eclipse.jdt.internal.core.search.matching.MatchLocator org.eclipse.jdt.internal.compiler.ast.LambdaExpression org.eclipse.jdt.core.IJavaElement int
         5: aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.nodeSet:Lorg/eclipse/jdt/internal/core/search/matching/MatchingNodeSet;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.typeInHierarchy:Z
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MatchLocator.reportMatching:(Lorg/eclipse/jdt/internal/compiler/ast/LambdaExpression;Lorg/eclipse/jdt/core/IJavaElement;ILorg/eclipse/jdt/internal/core/search/matching/MatchingNodeSet;Z)V
            goto 9
         6: .line 230
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         7: .line 231
      StackMap locals:
      StackMap stack: org.eclipse.core.runtime.CoreException
            astore 4 /* e */
        start local 4 // org.eclipse.core.runtime.CoreException e
         8: .line 232
            new org.eclipse.jdt.internal.core.search.matching.MatchLocator$WrappedCoreException
            dup
            aload 4 /* e */
            invokespecial org.eclipse.jdt.internal.core.search.matching.MatchLocator$WrappedCoreException.<init>:(Lorg/eclipse/core/runtime/CoreException;)V
            athrow
        end local 4 // org.eclipse.core.runtime.CoreException e
         9: .line 234
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 3 // java.lang.Integer level
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope scope
        end local 1 // org.eclipse.jdt.internal.compiler.ast.LambdaExpression lambdaExpression
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   10     0              this  Lorg/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor;
            0   10     1  lambdaExpression  Lorg/eclipse/jdt/internal/compiler/ast/LambdaExpression;
            0   10     2             scope  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            1   10     3             level  Ljava/lang/Integer;
            8    9     4                 e  Lorg/eclipse/core/runtime/CoreException;
      Exception table:
        from    to  target  type
           1     6       7  Class org.eclipse.core.runtime.CoreException
    MethodParameters:
                  Name  Flags
      lambdaExpression  
      scope             

  public boolean visit(org.eclipse.jdt.internal.compiler.ast.LocalDeclaration, org.eclipse.jdt.internal.compiler.lookup.BlockScope);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/LocalDeclaration;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.LocalDeclaration declaration
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope scope
         0: .line 238
            aload 0 /* this */
            aload 1 /* declaration */
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.localDeclaration:Lorg/eclipse/jdt/internal/compiler/ast/LocalDeclaration;
         1: .line 239
            iconst_1
            ireturn
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope scope
        end local 1 // org.eclipse.jdt.internal.compiler.ast.LocalDeclaration declaration
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor;
            0    2     1  declaration  Lorg/eclipse/jdt/internal/compiler/ast/LocalDeclaration;
            0    2     2        scope  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
    MethodParameters:
             Name  Flags
      declaration  
      scope        

  public boolean visit(org.eclipse.jdt.internal.compiler.ast.MarkerAnnotation, org.eclipse.jdt.internal.compiler.lookup.BlockScope);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/MarkerAnnotation;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.MarkerAnnotation markerAnnotation
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope unused
         0: .line 243
            aload 0 /* this */
            aload 1 /* markerAnnotation */
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.annotation:Lorg/eclipse/jdt/internal/compiler/ast/Annotation;
         1: .line 244
            iconst_1
            ireturn
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope unused
        end local 1 // org.eclipse.jdt.internal.compiler.ast.MarkerAnnotation markerAnnotation
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lorg/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor;
            0    2     1  markerAnnotation  Lorg/eclipse/jdt/internal/compiler/ast/MarkerAnnotation;
            0    2     2            unused  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
    MethodParameters:
                  Name  Flags
      markerAnnotation  
      unused            

  public boolean visit(org.eclipse.jdt.internal.compiler.ast.NormalAnnotation, org.eclipse.jdt.internal.compiler.lookup.BlockScope);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/NormalAnnotation;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.NormalAnnotation normalAnnotation
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope unused
         0: .line 248
            aload 0 /* this */
            aload 1 /* normalAnnotation */
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.annotation:Lorg/eclipse/jdt/internal/compiler/ast/Annotation;
         1: .line 249
            iconst_1
            ireturn
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope unused
        end local 1 // org.eclipse.jdt.internal.compiler.ast.NormalAnnotation normalAnnotation
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lorg/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor;
            0    2     1  normalAnnotation  Lorg/eclipse/jdt/internal/compiler/ast/NormalAnnotation;
            0    2     2            unused  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
    MethodParameters:
                  Name  Flags
      normalAnnotation  
      unused            

  public boolean visit(org.eclipse.jdt.internal.compiler.ast.QualifiedNameReference, org.eclipse.jdt.internal.compiler.lookup.BlockScope);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/QualifiedNameReference;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.QualifiedNameReference nameReference
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope unused
         0: .line 253
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.nodesCount:I
            ifle 4
         1: .line 254
            aload 0 /* this */
            aload 1 /* nameReference */
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.matchNode:(Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;)I
            istore 3 /* idx */
        start local 3 // int idx
         2: .line 255
            iload 3 /* idx */
            iflt 4
         3: .line 256
            aload 0 /* this */
            iload 3 /* idx */
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.storeHandle:(I)V
        end local 3 // int idx
         4: .line 259
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope unused
        end local 1 // org.eclipse.jdt.internal.compiler.ast.QualifiedNameReference nameReference
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    5     0           this  Lorg/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor;
            0    5     1  nameReference  Lorg/eclipse/jdt/internal/compiler/ast/QualifiedNameReference;
            0    5     2         unused  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            2    4     3            idx  I
    MethodParameters:
               Name  Flags
      nameReference  
      unused         

  public boolean visit(org.eclipse.jdt.internal.compiler.ast.QualifiedTypeReference, org.eclipse.jdt.internal.compiler.lookup.BlockScope);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/QualifiedTypeReference;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.QualifiedTypeReference typeReference
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope unused
         0: .line 263
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.nodesCount:I
            ifle 4
         1: .line 264
            aload 0 /* this */
            aload 1 /* typeReference */
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.matchNode:(Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;)I
            istore 3 /* idx */
        start local 3 // int idx
         2: .line 265
            iload 3 /* idx */
            iflt 4
         3: .line 266
            aload 0 /* this */
            iload 3 /* idx */
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.storeHandle:(I)V
        end local 3 // int idx
         4: .line 269
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope unused
        end local 1 // org.eclipse.jdt.internal.compiler.ast.QualifiedTypeReference typeReference
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    5     0           this  Lorg/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor;
            0    5     1  typeReference  Lorg/eclipse/jdt/internal/compiler/ast/QualifiedTypeReference;
            0    5     2         unused  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            2    4     3            idx  I
    MethodParameters:
               Name  Flags
      typeReference  
      unused         

  public boolean visit(org.eclipse.jdt.internal.compiler.ast.SingleMemberAnnotation, org.eclipse.jdt.internal.compiler.lookup.BlockScope);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/SingleMemberAnnotation;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.SingleMemberAnnotation singleMemberAnnotation
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope unused
         0: .line 273
            aload 0 /* this */
            aload 1 /* singleMemberAnnotation */
            putfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.annotation:Lorg/eclipse/jdt/internal/compiler/ast/Annotation;
         1: .line 274
            iconst_1
            ireturn
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope unused
        end local 1 // org.eclipse.jdt.internal.compiler.ast.SingleMemberAnnotation singleMemberAnnotation
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    2     0                    this  Lorg/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor;
            0    2     1  singleMemberAnnotation  Lorg/eclipse/jdt/internal/compiler/ast/SingleMemberAnnotation;
            0    2     2                  unused  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
    MethodParameters:
                        Name  Flags
      singleMemberAnnotation  
      unused                  

  public boolean visit(org.eclipse.jdt.internal.compiler.ast.SingleNameReference, org.eclipse.jdt.internal.compiler.lookup.BlockScope);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/SingleNameReference;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.SingleNameReference nameReference
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope unused
         0: .line 278
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.nodesCount:I
            ifle 4
         1: .line 279
            aload 0 /* this */
            aload 1 /* nameReference */
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.matchNode:(Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;)I
            istore 3 /* idx */
        start local 3 // int idx
         2: .line 280
            iload 3 /* idx */
            iflt 4
         3: .line 281
            aload 0 /* this */
            iload 3 /* idx */
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.storeHandle:(I)V
        end local 3 // int idx
         4: .line 284
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope unused
        end local 1 // org.eclipse.jdt.internal.compiler.ast.SingleNameReference nameReference
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    5     0           this  Lorg/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor;
            0    5     1  nameReference  Lorg/eclipse/jdt/internal/compiler/ast/SingleNameReference;
            0    5     2         unused  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            2    4     3            idx  I
    MethodParameters:
               Name  Flags
      nameReference  
      unused         

  public boolean visit(org.eclipse.jdt.internal.compiler.ast.SingleTypeReference, org.eclipse.jdt.internal.compiler.lookup.BlockScope);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/SingleTypeReference;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.SingleTypeReference typeReference
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope unused
         0: .line 288
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.nodesCount:I
            ifle 4
         1: .line 289
            aload 0 /* this */
            aload 1 /* typeReference */
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.matchNode:(Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;)I
            istore 3 /* idx */
        start local 3 // int idx
         2: .line 290
            iload 3 /* idx */
            iflt 4
         3: .line 291
            aload 0 /* this */
            iload 3 /* idx */
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.storeHandle:(I)V
        end local 3 // int idx
         4: .line 294
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope unused
        end local 1 // org.eclipse.jdt.internal.compiler.ast.SingleTypeReference typeReference
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    5     0           this  Lorg/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor;
            0    5     1  typeReference  Lorg/eclipse/jdt/internal/compiler/ast/SingleTypeReference;
            0    5     2         unused  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            2    4     3            idx  I
    MethodParameters:
               Name  Flags
      typeReference  
      unused         

  int getInTypeOccurrenceCountForBinaryAnonymousType(org.eclipse.jdt.internal.compiler.ast.TypeDeclaration, char[], org.eclipse.jdt.core.IJavaElement, int);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;[CLorg/eclipse/jdt/core/IJavaElement;I)I
    flags: (0x0000) 
    Code:
      stack=3, locals=8, args_size=5
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration typeDeclaration
        start local 2 // char[] name
        start local 3 // org.eclipse.jdt.core.IJavaElement parent
        start local 4 // int occurrenceCount
         0: .line 299
            iload 4 /* occurrenceCount */
            istore 5 /* ret */
        start local 5 // int ret
         1: .line 300
            aload 1 /* typeDeclaration */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.bits:I
            sipush 512
            iand
            ifeq 9
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.enclosingElement:Lorg/eclipse/jdt/core/IJavaElement;
            instanceof org.eclipse.jdt.core.IMember
            ifeq 9
         2: .line 301
            aload 3 /* parent */
            checkcast org.eclipse.jdt.core.IMember
            astore 6 /* member */
        start local 6 // org.eclipse.jdt.core.IMember member
         3: .line 302
            aload 6 /* member */
            invokeinterface org.eclipse.jdt.core.IMember.isBinary:()Z
            ifeq 9
         4: .line 303
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.inTypeOccurrencesCounts:Lorg/eclipse/jdt/internal/compiler/util/HashtableOfIntValues;
            aload 2 /* name */
            invokevirtual org.eclipse.jdt.internal.compiler.util.HashtableOfIntValues.get:([C)I
            istore 7 /* tmp */
        start local 7 // int tmp
         5: .line 304
            iload 7 /* tmp */
            ldc -2147483648
            if_icmpne 6
            iconst_1
            goto 7
      StackMap locals: int org.eclipse.jdt.core.IMember int
      StackMap stack:
         6: iload 7 /* tmp */
            iconst_1
            iadd
      StackMap locals:
      StackMap stack: int
         7: istore 5 /* ret */
         8: .line 305
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.inTypeOccurrencesCounts:Lorg/eclipse/jdt/internal/compiler/util/HashtableOfIntValues;
            aload 2 /* name */
            iload 5 /* ret */
            invokevirtual org.eclipse.jdt.internal.compiler.util.HashtableOfIntValues.put:([CI)I
            pop
        end local 7 // int tmp
        end local 6 // org.eclipse.jdt.core.IMember member
         9: .line 308
      StackMap locals:
      StackMap stack:
            iload 5 /* ret */
            ireturn
        end local 5 // int ret
        end local 4 // int occurrenceCount
        end local 3 // org.eclipse.jdt.core.IJavaElement parent
        end local 2 // char[] name
        end local 1 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration typeDeclaration
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   10     0             this  Lorg/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor;
            0   10     1  typeDeclaration  Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;
            0   10     2             name  [C
            0   10     3           parent  Lorg/eclipse/jdt/core/IJavaElement;
            0   10     4  occurrenceCount  I
            1   10     5              ret  I
            3    9     6           member  Lorg/eclipse/jdt/core/IMember;
            5    9     7              tmp  I
    MethodParameters:
                 Name  Flags
      typeDeclaration  
      name             
      parent           
      occurrenceCount  

  public boolean visit(org.eclipse.jdt.internal.compiler.ast.TypeDeclaration, org.eclipse.jdt.internal.compiler.lookup.BlockScope);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=7, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration typeDeclaration
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope unused
         0: .line 314
            aload 1 /* typeDeclaration */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.bits:I
            sipush 512
            iand
            ifeq 3
         1: .line 315
            getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR:[C
            astore 3 /* simpleName */
        start local 3 // char[] simpleName
         2: .line 316
            goto 4
        end local 3 // char[] simpleName
         3: .line 317
      StackMap locals:
      StackMap stack:
            aload 1 /* typeDeclaration */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.name:[C
            astore 3 /* simpleName */
        start local 3 // char[] simpleName
         4: .line 319
      StackMap locals: char[]
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.occurrencesCounts:Lorg/eclipse/jdt/internal/compiler/util/HashtableOfIntValues;
            aload 3 /* simpleName */
            invokevirtual org.eclipse.jdt.internal.compiler.util.HashtableOfIntValues.get:([C)I
            istore 4 /* occurrenceCount */
        start local 4 // int occurrenceCount
         5: .line 320
            iload 4 /* occurrenceCount */
            ldc -2147483648
            if_icmpne 8
         6: .line 321
            iconst_1
            istore 4 /* occurrenceCount */
         7: .line 322
            goto 9
         8: .line 323
      StackMap locals: int
      StackMap stack:
            iinc 4 /* occurrenceCount */ 1
         9: .line 325
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* typeDeclaration */
            aload 3 /* simpleName */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.enclosingElement:Lorg/eclipse/jdt/core/IJavaElement;
            iload 4 /* occurrenceCount */
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.getInTypeOccurrenceCountForBinaryAnonymousType:(Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;[CLorg/eclipse/jdt/core/IJavaElement;I)I
            istore 4 /* occurrenceCount */
        10: .line 326
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.occurrencesCounts:Lorg/eclipse/jdt/internal/compiler/util/HashtableOfIntValues;
            aload 3 /* simpleName */
            iload 4 /* occurrenceCount */
            invokevirtual org.eclipse.jdt.internal.compiler.util.HashtableOfIntValues.put:([CI)I
            pop
        11: .line 327
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.inTypeOccurrencesCounts:Lorg/eclipse/jdt/internal/compiler/util/HashtableOfIntValues;
            astore 5 /* oldOccurencesCount */
        start local 5 // org.eclipse.jdt.internal.compiler.util.HashtableOfIntValues oldOccurencesCount
        12: .line 328
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.locator:Lorg/eclipse/jdt/internal/core/search/matching/MatchLocator;
            new org.eclipse.jdt.internal.compiler.util.HashtableOfIntValues
            dup
            invokespecial org.eclipse.jdt.internal.compiler.util.HashtableOfIntValues.<init>:()V
            putfield org.eclipse.jdt.internal.core.search.matching.MatchLocator.inTypeOccurrencesCounts:Lorg/eclipse/jdt/internal/compiler/util/HashtableOfIntValues;
        13: .line 329
            aload 1 /* typeDeclaration */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.bits:I
            sipush 512
            iand
            ifeq 16
        14: .line 330
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.locator:Lorg/eclipse/jdt/internal/core/search/matching/MatchLocator;
            aload 1 /* typeDeclaration */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.enclosingElement:Lorg/eclipse/jdt/core/IJavaElement;
            iconst_m1
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.nodeSet:Lorg/eclipse/jdt/internal/core/search/matching/MatchingNodeSet;
            iload 4 /* occurrenceCount */
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MatchLocator.reportMatching:(Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;Lorg/eclipse/jdt/core/IJavaElement;ILorg/eclipse/jdt/internal/core/search/matching/MatchingNodeSet;I)V
        15: .line 331
            goto 20
        16: .line 332
      StackMap locals: org.eclipse.jdt.internal.compiler.util.HashtableOfIntValues
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.nodeSet:Lorg/eclipse/jdt/internal/core/search/matching/MatchingNodeSet;
            getfield org.eclipse.jdt.internal.core.search.matching.MatchingNodeSet.matchingNodes:Lorg/eclipse/jdt/internal/compiler/util/SimpleLookupTable;
            aload 1 /* typeDeclaration */
            invokevirtual org.eclipse.jdt.internal.compiler.util.SimpleLookupTable.removeKey:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Integer
            astore 6 /* level */
        start local 6 // java.lang.Integer level
        17: .line 333
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.locator:Lorg/eclipse/jdt/internal/core/search/matching/MatchLocator;
            aload 1 /* typeDeclaration */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.enclosingElement:Lorg/eclipse/jdt/core/IJavaElement;
            aload 6 /* level */
            ifnull 18
            aload 6 /* level */
            invokevirtual java.lang.Integer.intValue:()I
            goto 19
      StackMap locals: org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor org.eclipse.jdt.internal.compiler.ast.TypeDeclaration org.eclipse.jdt.internal.compiler.lookup.BlockScope char[] int org.eclipse.jdt.internal.compiler.util.HashtableOfIntValues java.lang.Integer
      StackMap stack: org.eclipse.jdt.internal.core.search.matching.MatchLocator org.eclipse.jdt.internal.compiler.ast.TypeDeclaration org.eclipse.jdt.core.IJavaElement
        18: iconst_m1
      StackMap locals: org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor org.eclipse.jdt.internal.compiler.ast.TypeDeclaration org.eclipse.jdt.internal.compiler.lookup.BlockScope char[] int org.eclipse.jdt.internal.compiler.util.HashtableOfIntValues java.lang.Integer
      StackMap stack: org.eclipse.jdt.internal.core.search.matching.MatchLocator org.eclipse.jdt.internal.compiler.ast.TypeDeclaration org.eclipse.jdt.core.IJavaElement int
        19: aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.nodeSet:Lorg/eclipse/jdt/internal/core/search/matching/MatchingNodeSet;
            iload 4 /* occurrenceCount */
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MatchLocator.reportMatching:(Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;Lorg/eclipse/jdt/core/IJavaElement;ILorg/eclipse/jdt/internal/core/search/matching/MatchingNodeSet;I)V
        end local 6 // java.lang.Integer level
        20: .line 335
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor.locator:Lorg/eclipse/jdt/internal/core/search/matching/MatchLocator;
            aload 5 /* oldOccurencesCount */
            putfield org.eclipse.jdt.internal.core.search.matching.MatchLocator.inTypeOccurrencesCounts:Lorg/eclipse/jdt/internal/compiler/util/HashtableOfIntValues;
        21: .line 336
            iconst_0
            ireturn
        end local 5 // org.eclipse.jdt.internal.compiler.util.HashtableOfIntValues oldOccurencesCount
        end local 4 // int occurrenceCount
        end local 3 // char[] simpleName
        22: .line 337
      StackMap locals: org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor org.eclipse.jdt.internal.compiler.ast.TypeDeclaration org.eclipse.jdt.internal.compiler.lookup.BlockScope
      StackMap stack: org.eclipse.core.runtime.CoreException
            astore 3 /* e */
        start local 3 // org.eclipse.core.runtime.CoreException e
        23: .line 338
            new org.eclipse.jdt.internal.core.search.matching.MatchLocator$WrappedCoreException
            dup
            aload 3 /* e */
            invokespecial org.eclipse.jdt.internal.core.search.matching.MatchLocator$WrappedCoreException.<init>:(Lorg/eclipse/core/runtime/CoreException;)V
            athrow
        end local 3 // org.eclipse.core.runtime.CoreException e
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope unused
        end local 1 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration typeDeclaration
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MemberDeclarationVisitor this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   24     0                this  Lorg/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor;
            0   24     1     typeDeclaration  Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;
            0   24     2              unused  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            2    3     3          simpleName  [C
            4   22     3          simpleName  [C
            5   22     4     occurrenceCount  I
           12   22     5  oldOccurencesCount  Lorg/eclipse/jdt/internal/compiler/util/HashtableOfIntValues;
           17   20     6               level  Ljava/lang/Integer;
           23   24     3                   e  Lorg/eclipse/core/runtime/CoreException;
      Exception table:
        from    to  target  type
           0    21      22  Class org.eclipse.core.runtime.CoreException
    MethodParameters:
                 Name  Flags
      typeDeclaration  
      unused           
}
SourceFile: "MemberDeclarationVisitor.java"
InnerClasses:
  public WrappedCoreException = org.eclipse.jdt.internal.core.search.matching.MatchLocator$WrappedCoreException of org.eclipse.jdt.internal.core.search.matching.MatchLocator