class com.sun.tools.javac.code.Types$ImplementationCache$Entry
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.sun.tools.javac.code.Types$ImplementationCache$Entry
  super_class: java.lang.Object
{
  final com.sun.tools.javac.code.Symbol$MethodSymbol cachedImpl;
    descriptor: Lcom/sun/tools/javac/code/Symbol$MethodSymbol;
    flags: (0x0010) ACC_FINAL

  final com.sun.tools.javac.util.Filter<com.sun.tools.javac.code.Symbol> implFilter;
    descriptor: Lcom/sun/tools/javac/util/Filter;
    flags: (0x0010) ACC_FINAL
    Signature: Lcom/sun/tools/javac/util/Filter<Lcom/sun/tools/javac/code/Symbol;>;

  final boolean checkResult;
    descriptor: Z
    flags: (0x0010) ACC_FINAL

  final int prevMark;
    descriptor: I
    flags: (0x0010) ACC_FINAL

  final com.sun.tools.javac.code.Types$ImplementationCache this$1;
    descriptor: Lcom/sun/tools/javac/code/Types$ImplementationCache;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  public void <init>(com.sun.tools.javac.code.Symbol$MethodSymbol, com.sun.tools.javac.util.Filter<com.sun.tools.javac.code.Symbol>, boolean, );
    descriptor: (Lcom/sun/tools/javac/code/Types$ImplementationCache;Lcom/sun/tools/javac/code/Symbol$MethodSymbol;Lcom/sun/tools/javac/util/Filter;ZI)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=6, args_size=6
        start local 0 // com.sun.tools.javac.code.Types$ImplementationCache$Entry this
        start local 2 // com.sun.tools.javac.code.Symbol$MethodSymbol cachedImpl
        start local 3 // com.sun.tools.javac.util.Filter scopeFilter
        start local 4 // boolean checkResult
        start local 5 // int prevMark
         0: .line 2891
            aload 0 /* this */
            aload 1
            putfield com.sun.tools.javac.code.Types$ImplementationCache$Entry.this$1:Lcom/sun/tools/javac/code/Types$ImplementationCache;
         1: .line 2888
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         2: .line 2892
            aload 0 /* this */
            aload 2 /* cachedImpl */
            putfield com.sun.tools.javac.code.Types$ImplementationCache$Entry.cachedImpl:Lcom/sun/tools/javac/code/Symbol$MethodSymbol;
         3: .line 2893
            aload 0 /* this */
            aload 3 /* scopeFilter */
            putfield com.sun.tools.javac.code.Types$ImplementationCache$Entry.implFilter:Lcom/sun/tools/javac/util/Filter;
         4: .line 2894
            aload 0 /* this */
            iload 4 /* checkResult */
            putfield com.sun.tools.javac.code.Types$ImplementationCache$Entry.checkResult:Z
         5: .line 2895
            aload 0 /* this */
            iload 5 /* prevMark */
            putfield com.sun.tools.javac.code.Types$ImplementationCache$Entry.prevMark:I
         6: .line 2896
            return
        end local 5 // int prevMark
        end local 4 // boolean checkResult
        end local 3 // com.sun.tools.javac.util.Filter scopeFilter
        end local 2 // com.sun.tools.javac.code.Symbol$MethodSymbol cachedImpl
        end local 0 // com.sun.tools.javac.code.Types$ImplementationCache$Entry this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0         this  Lcom/sun/tools/javac/code/Types$ImplementationCache$Entry;
            0    7     2   cachedImpl  Lcom/sun/tools/javac/code/Symbol$MethodSymbol;
            0    7     3  scopeFilter  Lcom/sun/tools/javac/util/Filter<Lcom/sun/tools/javac/code/Symbol;>;
            0    7     4  checkResult  Z
            0    7     5     prevMark  I
    Signature: (Lcom/sun/tools/javac/code/Symbol$MethodSymbol;Lcom/sun/tools/javac/util/Filter<Lcom/sun/tools/javac/code/Symbol;>;ZI)V
    MethodParameters:
             Name  Flags
      this$0       final
      cachedImpl   
      scopeFilter  
      checkResult  
      prevMark     

  boolean matches(com.sun.tools.javac.util.Filter<com.sun.tools.javac.code.Symbol>, boolean, );
    descriptor: (Lcom/sun/tools/javac/util/Filter;ZI)Z
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // com.sun.tools.javac.code.Types$ImplementationCache$Entry this
        start local 1 // com.sun.tools.javac.util.Filter scopeFilter
        start local 2 // boolean checkResult
        start local 3 // int mark
         0: .line 2899
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Types$ImplementationCache$Entry.implFilter:Lcom/sun/tools/javac/util/Filter;
            aload 1 /* scopeFilter */
            if_acmpne 4
         1: .line 2900
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Types$ImplementationCache$Entry.checkResult:Z
            iload 2 /* checkResult */
            if_icmpne 4
         2: .line 2901
            aload 0 /* this */
            getfield com.sun.tools.javac.code.Types$ImplementationCache$Entry.prevMark:I
            iload 3 /* mark */
            if_icmpne 4
         3: .line 2899
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         4: iconst_0
            ireturn
        end local 3 // int mark
        end local 2 // boolean checkResult
        end local 1 // com.sun.tools.javac.util.Filter scopeFilter
        end local 0 // com.sun.tools.javac.code.Types$ImplementationCache$Entry this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lcom/sun/tools/javac/code/Types$ImplementationCache$Entry;
            0    5     1  scopeFilter  Lcom/sun/tools/javac/util/Filter<Lcom/sun/tools/javac/code/Symbol;>;
            0    5     2  checkResult  Z
            0    5     3         mark  I
    Signature: (Lcom/sun/tools/javac/util/Filter<Lcom/sun/tools/javac/code/Symbol;>;ZI)Z
    MethodParameters:
             Name  Flags
      scopeFilter  
      checkResult  
      mark         
}
SourceFile: "Types.java"
NestHost: com.sun.tools.javac.code.Types
InnerClasses:
  public MethodSymbol = com.sun.tools.javac.code.Symbol$MethodSymbol of com.sun.tools.javac.code.Symbol
  ImplementationCache = com.sun.tools.javac.code.Types$ImplementationCache of com.sun.tools.javac.code.Types
  Entry = com.sun.tools.javac.code.Types$ImplementationCache$Entry of com.sun.tools.javac.code.Types$ImplementationCache