class com.sun.tools.javac.main.JavaCompiler$1ScanNested extends com.sun.tools.javac.tree.TreeScanner
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.sun.tools.javac.main.JavaCompiler$1ScanNested
  super_class: com.sun.tools.javac.tree.TreeScanner
{
  java.util.Set<com.sun.tools.javac.comp.Env<com.sun.tools.javac.comp.AttrContext>> dependencies;
    descriptor: Ljava/util/Set;
    flags: (0x0000) 
    Signature: Ljava/util/Set<Lcom/sun/tools/javac/comp/Env<Lcom/sun/tools/javac/comp/AttrContext;>;>;

  protected boolean hasLambdas;
    descriptor: Z
    flags: (0x0004) ACC_PROTECTED

  final com.sun.tools.javac.main.JavaCompiler this$0;
    descriptor: Lcom/sun/tools/javac/main/JavaCompiler;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  private final com.sun.tools.javac.comp.Env val$env;
    descriptor: Lcom/sun/tools/javac/comp/Env;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  void <init>(com.sun.tools.javac.main.JavaCompiler, com.sun.tools.javac.comp.Env);
    descriptor: (Lcom/sun/tools/javac/main/JavaCompiler;Lcom/sun/tools/javac/comp/Env;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.tools.javac.main.JavaCompiler$1ScanNested this
         0: .line 1475
            aload 0 /* this */
            aload 1
            putfield com.sun.tools.javac.main.JavaCompiler$1ScanNested.this$0:Lcom/sun/tools/javac/main/JavaCompiler;
            aload 0 /* this */
            aload 2
            putfield com.sun.tools.javac.main.JavaCompiler$1ScanNested.val$env:Lcom/sun/tools/javac/comp/Env;
            aload 0 /* this */
            invokespecial com.sun.tools.javac.tree.TreeScanner.<init>:()V
         1: .line 1476
            aload 0 /* this */
            new java.util.LinkedHashSet
            dup
            invokespecial java.util.LinkedHashSet.<init>:()V
            putfield com.sun.tools.javac.main.JavaCompiler$1ScanNested.dependencies:Ljava/util/Set;
         2: .line 1475
            return
        end local 0 // com.sun.tools.javac.main.JavaCompiler$1ScanNested this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/main/JavaCompiler$1ScanNested;
    MethodParameters:
         Name  Flags
      this$0   final
      val$env  final

  public void visitClassDef(com.sun.tools.javac.tree.JCTree$JCClassDecl);
    descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=8, args_size=2
        start local 0 // com.sun.tools.javac.main.JavaCompiler$1ScanNested this
        start local 1 // com.sun.tools.javac.tree.JCTree$JCClassDecl node
         0: .line 1480
            aload 0 /* this */
            getfield com.sun.tools.javac.main.JavaCompiler$1ScanNested.this$0:Lcom/sun/tools/javac/main/JavaCompiler;
            getfield com.sun.tools.javac.main.JavaCompiler.types:Lcom/sun/tools/javac/code/Types;
            aload 1 /* node */
            getfield com.sun.tools.javac.tree.JCTree$JCClassDecl.sym:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
            getfield com.sun.tools.javac.code.Symbol$ClassSymbol.type:Lcom/sun/tools/javac/code/Type;
            invokevirtual com.sun.tools.javac.code.Types.supertype:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
            astore 2 /* st */
        start local 2 // com.sun.tools.javac.code.Type st
         1: .line 1481
            iconst_0
            istore 3 /* envForSuperTypeFound */
        start local 3 // boolean envForSuperTypeFound
         2: .line 1482
            goto 16
         3: .line 1483
      StackMap locals: com.sun.tools.javac.code.Type int
      StackMap stack:
            aload 2 /* st */
            getfield com.sun.tools.javac.code.Type.tsym:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
            invokevirtual com.sun.tools.javac.code.Symbol$TypeSymbol.outermostClass:()Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
            astore 4 /* c */
        start local 4 // com.sun.tools.javac.code.Symbol$ClassSymbol c
         4: .line 1484
            aload 0 /* this */
            getfield com.sun.tools.javac.main.JavaCompiler$1ScanNested.this$0:Lcom/sun/tools/javac/main/JavaCompiler;
            getfield com.sun.tools.javac.main.JavaCompiler.enter:Lcom/sun/tools/javac/comp/Enter;
            aload 4 /* c */
            invokevirtual com.sun.tools.javac.comp.Enter.getEnv:(Lcom/sun/tools/javac/code/Symbol$TypeSymbol;)Lcom/sun/tools/javac/comp/Env;
            astore 5 /* stEnv */
        start local 5 // com.sun.tools.javac.comp.Env stEnv
         5: .line 1485
            aload 5 /* stEnv */
            ifnull 15
            aload 0 /* this */
            getfield com.sun.tools.javac.main.JavaCompiler$1ScanNested.val$env:Lcom/sun/tools/javac/comp/Env;
            aload 5 /* stEnv */
            if_acmpeq 15
         6: .line 1486
            aload 0 /* this */
            getfield com.sun.tools.javac.main.JavaCompiler$1ScanNested.dependencies:Ljava/util/Set;
            aload 5 /* stEnv */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            ifeq 14
         7: .line 1487
            aload 0 /* this */
            getfield com.sun.tools.javac.main.JavaCompiler$1ScanNested.hasLambdas:Z
            istore 6 /* prevHasLambdas */
        start local 6 // boolean prevHasLambdas
         8: .line 1489
            aload 0 /* this */
            aload 5 /* stEnv */
            getfield com.sun.tools.javac.comp.Env.tree:Lcom/sun/tools/javac/tree/JCTree;
            invokevirtual com.sun.tools.javac.main.JavaCompiler$1ScanNested.scan:(Lcom/sun/tools/javac/tree/JCTree;)V
         9: .line 1490
            goto 13
      StackMap locals: com.sun.tools.javac.main.JavaCompiler$1ScanNested com.sun.tools.javac.tree.JCTree$JCClassDecl com.sun.tools.javac.code.Type int com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.comp.Env int
      StackMap stack: java.lang.Throwable
        10: astore 7
        11: .line 1497
            aload 0 /* this */
            iload 6 /* prevHasLambdas */
            putfield com.sun.tools.javac.main.JavaCompiler$1ScanNested.hasLambdas:Z
        12: .line 1498
            aload 7
            athrow
        13: .line 1497
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 6 /* prevHasLambdas */
            putfield com.sun.tools.javac.main.JavaCompiler$1ScanNested.hasLambdas:Z
        end local 6 // boolean prevHasLambdas
        14: .line 1500
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 3 /* envForSuperTypeFound */
        15: .line 1502
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.main.JavaCompiler$1ScanNested.this$0:Lcom/sun/tools/javac/main/JavaCompiler;
            getfield com.sun.tools.javac.main.JavaCompiler.types:Lcom/sun/tools/javac/code/Types;
            aload 2 /* st */
            invokevirtual com.sun.tools.javac.code.Types.supertype:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
            astore 2 /* st */
        end local 5 // com.sun.tools.javac.comp.Env stEnv
        end local 4 // com.sun.tools.javac.code.Symbol$ClassSymbol c
        16: .line 1482
      StackMap locals:
      StackMap stack:
            iload 3 /* envForSuperTypeFound */
            ifne 17
            aload 2 /* st */
            getstatic com.sun.tools.javac.code.TypeTag.CLASS:Lcom/sun/tools/javac/code/TypeTag;
            invokevirtual com.sun.tools.javac.code.Type.hasTag:(Lcom/sun/tools/javac/code/TypeTag;)Z
            ifne 3
        17: .line 1504
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* node */
            invokespecial com.sun.tools.javac.tree.TreeScanner.visitClassDef:(Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;)V
        18: .line 1505
            return
        end local 3 // boolean envForSuperTypeFound
        end local 2 // com.sun.tools.javac.code.Type st
        end local 1 // com.sun.tools.javac.tree.JCTree$JCClassDecl node
        end local 0 // com.sun.tools.javac.main.JavaCompiler$1ScanNested this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   19     0                  this  Lcom/sun/tools/javac/main/JavaCompiler$1ScanNested;
            0   19     1                  node  Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;
            1   19     2                    st  Lcom/sun/tools/javac/code/Type;
            2   19     3  envForSuperTypeFound  Z
            4   16     4                     c  Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
            5   16     5                 stEnv  Lcom/sun/tools/javac/comp/Env<Lcom/sun/tools/javac/comp/AttrContext;>;
            8   14     6        prevHasLambdas  Z
      Exception table:
        from    to  target  type
           8    10      10  any
    MethodParameters:
      Name  Flags
      node  

  public void visitLambda(com.sun.tools.javac.tree.JCTree$JCLambda);
    descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCLambda;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.main.JavaCompiler$1ScanNested this
        start local 1 // com.sun.tools.javac.tree.JCTree$JCLambda tree
         0: .line 1508
            aload 0 /* this */
            iconst_1
            putfield com.sun.tools.javac.main.JavaCompiler$1ScanNested.hasLambdas:Z
         1: .line 1509
            aload 0 /* this */
            aload 1 /* tree */
            invokespecial com.sun.tools.javac.tree.TreeScanner.visitLambda:(Lcom/sun/tools/javac/tree/JCTree$JCLambda;)V
         2: .line 1510
            return
        end local 1 // com.sun.tools.javac.tree.JCTree$JCLambda tree
        end local 0 // com.sun.tools.javac.main.JavaCompiler$1ScanNested this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/main/JavaCompiler$1ScanNested;
            0    3     1  tree  Lcom/sun/tools/javac/tree/JCTree$JCLambda;
    MethodParameters:
      Name  Flags
      tree  

  public void visitReference(com.sun.tools.javac.tree.JCTree$JCMemberReference);
    descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCMemberReference;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.main.JavaCompiler$1ScanNested this
        start local 1 // com.sun.tools.javac.tree.JCTree$JCMemberReference tree
         0: .line 1513
            aload 0 /* this */
            iconst_1
            putfield com.sun.tools.javac.main.JavaCompiler$1ScanNested.hasLambdas:Z
         1: .line 1514
            aload 0 /* this */
            aload 1 /* tree */
            invokespecial com.sun.tools.javac.tree.TreeScanner.visitReference:(Lcom/sun/tools/javac/tree/JCTree$JCMemberReference;)V
         2: .line 1515
            return
        end local 1 // com.sun.tools.javac.tree.JCTree$JCMemberReference tree
        end local 0 // com.sun.tools.javac.main.JavaCompiler$1ScanNested this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/main/JavaCompiler$1ScanNested;
            0    3     1  tree  Lcom/sun/tools/javac/tree/JCTree$JCMemberReference;
    MethodParameters:
      Name  Flags
      tree  
}
SourceFile: "JavaCompiler.java"
EnclosingMethod: com.sun.tools.javac.main.JavaCompiler.desugar:(Lcom/sun/tools/javac/comp/Env;Ljava/util/Queue;)V
NestHost: com.sun.tools.javac.main.JavaCompiler
InnerClasses:
  public ClassSymbol = com.sun.tools.javac.code.Symbol$ClassSymbol of com.sun.tools.javac.code.Symbol
  public abstract TypeSymbol = com.sun.tools.javac.code.Symbol$TypeSymbol of com.sun.tools.javac.code.Symbol
  ScanNested = com.sun.tools.javac.main.JavaCompiler$1ScanNested
  public JCClassDecl = com.sun.tools.javac.tree.JCTree$JCClassDecl of com.sun.tools.javac.tree.JCTree
  public JCLambda = com.sun.tools.javac.tree.JCTree$JCLambda of com.sun.tools.javac.tree.JCTree
  public JCMemberReference = com.sun.tools.javac.tree.JCTree$JCMemberReference of com.sun.tools.javac.tree.JCTree