public class com.sun.tools.javac.tree.JCTree$JCLambda extends com.sun.tools.javac.tree.JCTree$JCFunctionalExpression implements com.sun.source.tree.LambdaExpressionTree
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.tools.javac.tree.JCTree$JCLambda
  super_class: com.sun.tools.javac.tree.JCTree$JCFunctionalExpression
{
  public com.sun.tools.javac.util.List<com.sun.tools.javac.tree.JCTree$JCVariableDecl> params;
    descriptor: Lcom/sun/tools/javac/util/List;
    flags: (0x0001) ACC_PUBLIC
    Signature: Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCVariableDecl;>;

  public com.sun.tools.javac.tree.JCTree body;
    descriptor: Lcom/sun/tools/javac/tree/JCTree;
    flags: (0x0001) ACC_PUBLIC

  public boolean canCompleteNormally;
    descriptor: Z
    flags: (0x0001) ACC_PUBLIC

  public com.sun.tools.javac.tree.JCTree$JCLambda$ParameterKind paramKind;
    descriptor: Lcom/sun/tools/javac/tree/JCTree$JCLambda$ParameterKind;
    flags: (0x0001) ACC_PUBLIC

  public void <init>(com.sun.tools.javac.util.List<com.sun.tools.javac.tree.JCTree$JCVariableDecl>, com.sun.tools.javac.tree.JCTree);
    descriptor: (Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/tree/JCTree;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.sun.tools.javac.tree.JCTree$JCLambda this
        start local 1 // com.sun.tools.javac.util.List params
        start local 2 // com.sun.tools.javac.tree.JCTree body
         0: .line 1915
            aload 0 /* this */
            invokespecial com.sun.tools.javac.tree.JCTree$JCFunctionalExpression.<init>:()V
         1: .line 1912
            aload 0 /* this */
            iconst_1
            putfield com.sun.tools.javac.tree.JCTree$JCLambda.canCompleteNormally:Z
         2: .line 1917
            aload 0 /* this */
            aload 1 /* params */
            putfield com.sun.tools.javac.tree.JCTree$JCLambda.params:Lcom/sun/tools/javac/util/List;
         3: .line 1918
            aload 0 /* this */
            aload 2 /* body */
            putfield com.sun.tools.javac.tree.JCTree$JCLambda.body:Lcom/sun/tools/javac/tree/JCTree;
         4: .line 1919
            aload 1 /* params */
            invokevirtual com.sun.tools.javac.util.List.isEmpty:()Z
            ifne 6
         5: .line 1920
            aload 1 /* params */
            getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
            checkcast com.sun.tools.javac.tree.JCTree$JCVariableDecl
            getfield com.sun.tools.javac.tree.JCTree$JCVariableDecl.vartype:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
            ifnull 8
         6: .line 1921
      StackMap locals: com.sun.tools.javac.tree.JCTree$JCLambda com.sun.tools.javac.util.List com.sun.tools.javac.tree.JCTree
      StackMap stack:
            aload 0 /* this */
            getstatic com.sun.tools.javac.tree.JCTree$JCLambda$ParameterKind.EXPLICIT:Lcom/sun/tools/javac/tree/JCTree$JCLambda$ParameterKind;
            putfield com.sun.tools.javac.tree.JCTree$JCLambda.paramKind:Lcom/sun/tools/javac/tree/JCTree$JCLambda$ParameterKind;
         7: .line 1922
            goto 9
         8: .line 1923
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic com.sun.tools.javac.tree.JCTree$JCLambda$ParameterKind.IMPLICIT:Lcom/sun/tools/javac/tree/JCTree$JCLambda$ParameterKind;
            putfield com.sun.tools.javac.tree.JCTree$JCLambda.paramKind:Lcom/sun/tools/javac/tree/JCTree$JCLambda$ParameterKind;
         9: .line 1925
      StackMap locals:
      StackMap stack:
            return
        end local 2 // com.sun.tools.javac.tree.JCTree body
        end local 1 // com.sun.tools.javac.util.List params
        end local 0 // com.sun.tools.javac.tree.JCTree$JCLambda this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Lcom/sun/tools/javac/tree/JCTree$JCLambda;
            0   10     1  params  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCVariableDecl;>;
            0   10     2    body  Lcom/sun/tools/javac/tree/JCTree;
    Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCVariableDecl;>;Lcom/sun/tools/javac/tree/JCTree;)V
    MethodParameters:
        Name  Flags
      params  
      body    

  public com.sun.tools.javac.tree.JCTree$Tag getTag();
    descriptor: ()Lcom/sun/tools/javac/tree/JCTree$Tag;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.tree.JCTree$JCLambda this
         0: .line 1928
            getstatic com.sun.tools.javac.tree.JCTree$Tag.LAMBDA:Lcom/sun/tools/javac/tree/JCTree$Tag;
            areturn
        end local 0 // com.sun.tools.javac.tree.JCTree$JCLambda this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/tree/JCTree$JCLambda;

  public void accept(com.sun.tools.javac.tree.JCTree$Visitor);
    descriptor: (Lcom/sun/tools/javac/tree/JCTree$Visitor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.tree.JCTree$JCLambda this
        start local 1 // com.sun.tools.javac.tree.JCTree$Visitor v
         0: .line 1932
            aload 1 /* v */
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.tree.JCTree$Visitor.visitLambda:(Lcom/sun/tools/javac/tree/JCTree$JCLambda;)V
         1: .line 1933
            return
        end local 1 // com.sun.tools.javac.tree.JCTree$Visitor v
        end local 0 // com.sun.tools.javac.tree.JCTree$JCLambda this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/tree/JCTree$JCLambda;
            0    2     1     v  Lcom/sun/tools/javac/tree/JCTree$Visitor;
    MethodParameters:
      Name  Flags
      v     

  public <R, D> R accept(com.sun.source.tree.TreeVisitor<R, D>, );
    descriptor: (Lcom/sun/source/tree/TreeVisitor;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.tools.javac.tree.JCTree$JCLambda this
        start local 1 // com.sun.source.tree.TreeVisitor v
        start local 2 // java.lang.Object d
         0: .line 1936
            aload 1 /* v */
            aload 0 /* this */
            aload 2 /* d */
            invokeinterface com.sun.source.tree.TreeVisitor.visitLambdaExpression:(Lcom/sun/source/tree/LambdaExpressionTree;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object d
        end local 1 // com.sun.source.tree.TreeVisitor v
        end local 0 // com.sun.tools.javac.tree.JCTree$JCLambda this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/tree/JCTree$JCLambda;
            0    1     1     v  Lcom/sun/source/tree/TreeVisitor<TR;TD;>;
            0    1     2     d  TD;
    Signature: <R:Ljava/lang/Object;D:Ljava/lang/Object;>(Lcom/sun/source/tree/TreeVisitor<TR;TD;>;TD;)TR;
    MethodParameters:
      Name  Flags
      v     
      d     

  public com.sun.source.tree.Tree$Kind getKind();
    descriptor: ()Lcom/sun/source/tree/Tree$Kind;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.tree.JCTree$JCLambda this
         0: .line 1940
            getstatic com.sun.source.tree.Tree$Kind.LAMBDA_EXPRESSION:Lcom/sun/source/tree/Tree$Kind;
            areturn
        end local 0 // com.sun.tools.javac.tree.JCTree$JCLambda this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/tree/JCTree$JCLambda;

  public com.sun.tools.javac.tree.JCTree getBody();
    descriptor: ()Lcom/sun/tools/javac/tree/JCTree;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.tree.JCTree$JCLambda this
         0: .line 1944
            aload 0 /* this */
            getfield com.sun.tools.javac.tree.JCTree$JCLambda.body:Lcom/sun/tools/javac/tree/JCTree;
            areturn
        end local 0 // com.sun.tools.javac.tree.JCTree$JCLambda this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/tree/JCTree$JCLambda;

  public java.util.List<? extends com.sun.source.tree.VariableTree> getParameters();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.tree.JCTree$JCLambda this
         0: .line 1948
            aload 0 /* this */
            getfield com.sun.tools.javac.tree.JCTree$JCLambda.params:Lcom/sun/tools/javac/util/List;
            areturn
        end local 0 // com.sun.tools.javac.tree.JCTree$JCLambda this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/tree/JCTree$JCLambda;
    Signature: ()Ljava/util/List<+Lcom/sun/source/tree/VariableTree;>;

  public com.sun.tools.javac.tree.JCTree$JCLambda setType(com.sun.tools.javac.code.Type);
    descriptor: (Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/tree/JCTree$JCLambda;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.tree.JCTree$JCLambda this
        start local 1 // com.sun.tools.javac.code.Type type
         0: .line 1952
            aload 0 /* this */
            aload 1 /* type */
            invokespecial com.sun.tools.javac.tree.JCTree$JCFunctionalExpression.setType:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/tree/JCTree$JCExpression;
            pop
         1: .line 1953
            aload 0 /* this */
            areturn
        end local 1 // com.sun.tools.javac.code.Type type
        end local 0 // com.sun.tools.javac.tree.JCTree$JCLambda this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/tree/JCTree$JCLambda;
            0    2     1  type  Lcom/sun/tools/javac/code/Type;
    MethodParameters:
      Name  Flags
      type  

  public com.sun.source.tree.LambdaExpressionTree$BodyKind getBodyKind();
    descriptor: ()Lcom/sun/source/tree/LambdaExpressionTree$BodyKind;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.tree.JCTree$JCLambda this
         0: .line 1957
            aload 0 /* this */
            getfield com.sun.tools.javac.tree.JCTree$JCLambda.body:Lcom/sun/tools/javac/tree/JCTree;
            getstatic com.sun.tools.javac.tree.JCTree$Tag.BLOCK:Lcom/sun/tools/javac/tree/JCTree$Tag;
            invokevirtual com.sun.tools.javac.tree.JCTree.hasTag:(Lcom/sun/tools/javac/tree/JCTree$Tag;)Z
            ifeq 2
         1: .line 1958
            getstatic com.sun.source.tree.LambdaExpressionTree$BodyKind.STATEMENT:Lcom/sun/source/tree/LambdaExpressionTree$BodyKind;
            goto 3
         2: .line 1959
      StackMap locals:
      StackMap stack:
            getstatic com.sun.source.tree.LambdaExpressionTree$BodyKind.EXPRESSION:Lcom/sun/source/tree/LambdaExpressionTree$BodyKind;
         3: .line 1957
      StackMap locals:
      StackMap stack: com.sun.source.tree.LambdaExpressionTree$BodyKind
            areturn
        end local 0 // com.sun.tools.javac.tree.JCTree$JCLambda this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/tools/javac/tree/JCTree$JCLambda;

  public com.sun.source.tree.Tree getBody();
    descriptor: ()Lcom/sun/source/tree/Tree;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual com.sun.tools.javac.tree.JCTree$JCLambda.getBody:()Lcom/sun/tools/javac/tree/JCTree;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public com.sun.tools.javac.tree.JCTree$JCExpression setType(com.sun.tools.javac.code.Type);
    descriptor: (Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/tree/JCTree$JCExpression;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual com.sun.tools.javac.tree.JCTree$JCLambda.setType:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/tree/JCTree$JCLambda;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public com.sun.tools.javac.tree.JCTree setType(com.sun.tools.javac.code.Type);
    descriptor: (Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/tree/JCTree;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual com.sun.tools.javac.tree.JCTree$JCLambda.setType:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/tree/JCTree$JCLambda;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "JCTree.java"
NestHost: com.sun.tools.javac.tree.JCTree
InnerClasses:
  public final BodyKind = com.sun.source.tree.LambdaExpressionTree$BodyKind of com.sun.source.tree.LambdaExpressionTree
  public final Kind = com.sun.source.tree.Tree$Kind of com.sun.source.tree.Tree
  public abstract JCExpression = com.sun.tools.javac.tree.JCTree$JCExpression of com.sun.tools.javac.tree.JCTree
  public abstract JCFunctionalExpression = com.sun.tools.javac.tree.JCTree$JCFunctionalExpression of com.sun.tools.javac.tree.JCTree
  public JCLambda = com.sun.tools.javac.tree.JCTree$JCLambda of com.sun.tools.javac.tree.JCTree
  public final ParameterKind = com.sun.tools.javac.tree.JCTree$JCLambda$ParameterKind of com.sun.tools.javac.tree.JCTree$JCLambda
  public JCVariableDecl = com.sun.tools.javac.tree.JCTree$JCVariableDecl of com.sun.tools.javac.tree.JCTree
  public final Tag = com.sun.tools.javac.tree.JCTree$Tag of com.sun.tools.javac.tree.JCTree
  public abstract Visitor = com.sun.tools.javac.tree.JCTree$Visitor of com.sun.tools.javac.tree.JCTree