public class org.eclipse.jdt.internal.core.LambdaExpression extends org.eclipse.jdt.internal.core.SourceType
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.eclipse.jdt.internal.core.LambdaExpression
  super_class: org.eclipse.jdt.internal.core.SourceType
{
  org.eclipse.jdt.internal.core.SourceTypeElementInfo elementInfo;
    descriptor: Lorg/eclipse/jdt/internal/core/SourceTypeElementInfo;
    flags: (0x0000) 

  org.eclipse.jdt.internal.core.LambdaMethod lambdaMethod;
    descriptor: Lorg/eclipse/jdt/internal/core/LambdaMethod;
    flags: (0x0000) 

  protected int sourceStart;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected int sourceEnd;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected int arrowPosition;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected java.lang.String interphase;
    descriptor: Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED

  void <init>(org.eclipse.jdt.internal.core.JavaElement, org.eclipse.jdt.internal.compiler.ast.LambdaExpression);
    descriptor: (Lorg/eclipse/jdt/internal/core/JavaElement;Lorg/eclipse/jdt/internal/compiler/ast/LambdaExpression;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
        start local 1 // org.eclipse.jdt.internal.core.JavaElement parent
        start local 2 // org.eclipse.jdt.internal.compiler.ast.LambdaExpression lambdaExpression
         0: .line 51
            aload 0 /* this */
            aload 1 /* parent */
            new java.lang.String
            dup
            getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR:[C
            invokespecial java.lang.String.<init>:([C)V
            invokespecial org.eclipse.jdt.internal.core.SourceType.<init>:(Lorg/eclipse/jdt/internal/core/JavaElement;Ljava/lang/String;)V
         1: .line 52
            aload 0 /* this */
            aload 2 /* lambdaExpression */
            getfield org.eclipse.jdt.internal.compiler.ast.LambdaExpression.sourceStart:I
            putfield org.eclipse.jdt.internal.core.LambdaExpression.sourceStart:I
         2: .line 53
            aload 0 /* this */
            aload 2 /* lambdaExpression */
            getfield org.eclipse.jdt.internal.compiler.ast.LambdaExpression.sourceEnd:I
            putfield org.eclipse.jdt.internal.core.LambdaExpression.sourceEnd:I
         3: .line 54
            aload 0 /* this */
            aload 2 /* lambdaExpression */
            getfield org.eclipse.jdt.internal.compiler.ast.LambdaExpression.arrowPosition:I
            putfield org.eclipse.jdt.internal.core.LambdaExpression.arrowPosition:I
         4: .line 56
            aload 0 /* this */
            aload 2 /* lambdaExpression */
            invokevirtual org.eclipse.jdt.internal.core.LambdaExpression.findLambdaSuperType:(Lorg/eclipse/jdt/internal/compiler/ast/LambdaExpression;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 3 /* supertype */
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding supertype
         5: .line 57
            aload 0 /* this */
            new java.lang.String
            dup
            aload 3 /* supertype */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.genericTypeSignature:()[C
            bipush 47
            bipush 46
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.replaceOnCopy:([CCC)[C
            invokespecial java.lang.String.<init>:([C)V
            putfield org.eclipse.jdt.internal.core.LambdaExpression.interphase:Ljava/lang/String;
         6: .line 58
            aload 0 /* this */
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.interphase:Ljava/lang/String;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.sourceStart:I
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.sourceEnd:I
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.arrowPosition:I
            invokestatic org.eclipse.jdt.internal.core.LambdaExpression.makeTypeElementInfo:(Lorg/eclipse/jdt/internal/core/LambdaExpression;Ljava/lang/String;III)Lorg/eclipse/jdt/internal/core/SourceTypeElementInfo;
            putfield org.eclipse.jdt.internal.core.LambdaExpression.elementInfo:Lorg/eclipse/jdt/internal/core/SourceTypeElementInfo;
         7: .line 59
            aload 0 /* this */
            aload 0 /* this */
            aload 2 /* lambdaExpression */
            invokestatic org.eclipse.jdt.internal.core.LambdaFactory.createLambdaMethod:(Lorg/eclipse/jdt/internal/core/JavaElement;Lorg/eclipse/jdt/internal/compiler/ast/LambdaExpression;)Lorg/eclipse/jdt/internal/core/LambdaMethod;
            putfield org.eclipse.jdt.internal.core.LambdaExpression.lambdaMethod:Lorg/eclipse/jdt/internal/core/LambdaMethod;
         8: .line 60
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.elementInfo:Lorg/eclipse/jdt/internal/core/SourceTypeElementInfo;
            iconst_1
            anewarray org.eclipse.jdt.core.IJavaElement
            dup
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.lambdaMethod:Lorg/eclipse/jdt/internal/core/LambdaMethod;
            aastore
            putfield org.eclipse.jdt.internal.core.SourceTypeElementInfo.children:[Lorg/eclipse/jdt/core/IJavaElement;
         9: .line 61
            return
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding supertype
        end local 2 // org.eclipse.jdt.internal.compiler.ast.LambdaExpression lambdaExpression
        end local 1 // org.eclipse.jdt.internal.core.JavaElement parent
        end local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   10     0              this  Lorg/eclipse/jdt/internal/core/LambdaExpression;
            0   10     1            parent  Lorg/eclipse/jdt/internal/core/JavaElement;
            0   10     2  lambdaExpression  Lorg/eclipse/jdt/internal/compiler/ast/LambdaExpression;
            5   10     3         supertype  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
    MethodParameters:
                  Name  Flags
      parent            
      lambdaExpression  

  public org.eclipse.jdt.internal.compiler.lookup.TypeBinding findLambdaSuperType(org.eclipse.jdt.internal.compiler.ast.LambdaExpression);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/LambdaExpression;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.LambdaExpression lambdaExpression
         0: .line 65
            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.original:()Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 2 /* original */
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding original
         1: .line 67
            aload 1 /* lambdaExpression */
            getfield org.eclipse.jdt.internal.compiler.ast.LambdaExpression.descriptor:Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
            getfield org.eclipse.jdt.internal.compiler.lookup.MethodBinding.declaringClass:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 3 /* descType */
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding descType
         2: .line 68
            aload 3 /* descType */
            instanceof org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding
            ifeq 8
         3: .line 69
            aload 3 /* descType */
            checkcast org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding
            astore 4 /* descPTB */
        start local 4 // org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding descPTB
         4: .line 71
            aload 2 /* original */
            aload 3 /* descType */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.findSuperTypeOriginatingFrom:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 5 /* originalSuper */
        start local 5 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding originalSuper
         5: .line 72
            new org.eclipse.jdt.internal.core.LambdaExpression$1
            dup
            aload 0 /* this */
            aload 5 /* originalSuper */
            aload 4 /* descPTB */
            invokespecial org.eclipse.jdt.internal.core.LambdaExpression$1.<init>:(Lorg/eclipse/jdt/internal/core/LambdaExpression;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/ParameterizedTypeBinding;)V
         6: .line 95
            aload 2 /* original */
         7: .line 72
            invokestatic org.eclipse.jdt.internal.compiler.lookup.Scope.substitute:(Lorg/eclipse/jdt/internal/compiler/lookup/Substitution;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            areturn
        end local 5 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding originalSuper
        end local 4 // org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding descPTB
         8: .line 97
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.TypeBinding org.eclipse.jdt.internal.compiler.lookup.TypeBinding
      StackMap stack:
            aload 2 /* original */
            areturn
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding descType
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding original
        end local 1 // org.eclipse.jdt.internal.compiler.ast.LambdaExpression lambdaExpression
        end local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    9     0              this  Lorg/eclipse/jdt/internal/core/LambdaExpression;
            0    9     1  lambdaExpression  Lorg/eclipse/jdt/internal/compiler/ast/LambdaExpression;
            1    9     2          original  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            2    9     3          descType  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            4    8     4           descPTB  Lorg/eclipse/jdt/internal/compiler/lookup/ParameterizedTypeBinding;
            5    8     5     originalSuper  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
    MethodParameters:
                  Name  Flags
      lambdaExpression  

  void <init>(org.eclipse.jdt.internal.core.JavaElement, java.lang.String, int, int, int);
    descriptor: (Lorg/eclipse/jdt/internal/core/JavaElement;Ljava/lang/String;III)V
    flags: (0x0000) 
    Code:
      stack=6, locals=6, args_size=6
        start local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
        start local 1 // org.eclipse.jdt.internal.core.JavaElement parent
        start local 2 // java.lang.String interphase
        start local 3 // int sourceStart
        start local 4 // int sourceEnd
        start local 5 // int arrowPosition
         0: .line 102
            aload 0 /* this */
            aload 1 /* parent */
            new java.lang.String
            dup
            getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR:[C
            invokespecial java.lang.String.<init>:([C)V
            invokespecial org.eclipse.jdt.internal.core.SourceType.<init>:(Lorg/eclipse/jdt/internal/core/JavaElement;Ljava/lang/String;)V
         1: .line 103
            aload 0 /* this */
            iload 3 /* sourceStart */
            putfield org.eclipse.jdt.internal.core.LambdaExpression.sourceStart:I
         2: .line 104
            aload 0 /* this */
            iload 4 /* sourceEnd */
            putfield org.eclipse.jdt.internal.core.LambdaExpression.sourceEnd:I
         3: .line 105
            aload 0 /* this */
            iload 5 /* arrowPosition */
            putfield org.eclipse.jdt.internal.core.LambdaExpression.arrowPosition:I
         4: .line 106
            aload 0 /* this */
            aload 2 /* interphase */
            putfield org.eclipse.jdt.internal.core.LambdaExpression.interphase:Ljava/lang/String;
         5: .line 107
            aload 0 /* this */
            aload 0 /* this */
            aload 2 /* interphase */
            aload 0 /* this */
            iload 3 /* sourceStart */
            dup_x1
            putfield org.eclipse.jdt.internal.core.LambdaExpression.sourceStart:I
            iload 4 /* sourceEnd */
            iload 5 /* arrowPosition */
            invokestatic org.eclipse.jdt.internal.core.LambdaExpression.makeTypeElementInfo:(Lorg/eclipse/jdt/internal/core/LambdaExpression;Ljava/lang/String;III)Lorg/eclipse/jdt/internal/core/SourceTypeElementInfo;
            putfield org.eclipse.jdt.internal.core.LambdaExpression.elementInfo:Lorg/eclipse/jdt/internal/core/SourceTypeElementInfo;
         6: .line 109
            return
        end local 5 // int arrowPosition
        end local 4 // int sourceEnd
        end local 3 // int sourceStart
        end local 2 // java.lang.String interphase
        end local 1 // org.eclipse.jdt.internal.core.JavaElement parent
        end local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    7     0           this  Lorg/eclipse/jdt/internal/core/LambdaExpression;
            0    7     1         parent  Lorg/eclipse/jdt/internal/core/JavaElement;
            0    7     2     interphase  Ljava/lang/String;
            0    7     3    sourceStart  I
            0    7     4      sourceEnd  I
            0    7     5  arrowPosition  I
    MethodParameters:
               Name  Flags
      parent         
      interphase     
      sourceStart    
      sourceEnd      
      arrowPosition  

  void <init>(org.eclipse.jdt.internal.core.JavaElement, java.lang.String, int, int, int, org.eclipse.jdt.internal.core.LambdaMethod);
    descriptor: (Lorg/eclipse/jdt/internal/core/JavaElement;Ljava/lang/String;IIILorg/eclipse/jdt/internal/core/LambdaMethod;)V
    flags: (0x0000) 
    Code:
      stack=7, locals=7, args_size=7
        start local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
        start local 1 // org.eclipse.jdt.internal.core.JavaElement parent
        start local 2 // java.lang.String interphase
        start local 3 // int sourceStart
        start local 4 // int sourceEnd
        start local 5 // int arrowPosition
        start local 6 // org.eclipse.jdt.internal.core.LambdaMethod lambdaMethod
         0: .line 113
            aload 0 /* this */
            aload 1 /* parent */
            new java.lang.String
            dup
            getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR:[C
            invokespecial java.lang.String.<init>:([C)V
            invokespecial org.eclipse.jdt.internal.core.SourceType.<init>:(Lorg/eclipse/jdt/internal/core/JavaElement;Ljava/lang/String;)V
         1: .line 114
            aload 0 /* this */
            iload 3 /* sourceStart */
            putfield org.eclipse.jdt.internal.core.LambdaExpression.sourceStart:I
         2: .line 115
            aload 0 /* this */
            iload 4 /* sourceEnd */
            putfield org.eclipse.jdt.internal.core.LambdaExpression.sourceEnd:I
         3: .line 116
            aload 0 /* this */
            iload 5 /* arrowPosition */
            putfield org.eclipse.jdt.internal.core.LambdaExpression.arrowPosition:I
         4: .line 117
            aload 0 /* this */
            aload 2 /* interphase */
            putfield org.eclipse.jdt.internal.core.LambdaExpression.interphase:Ljava/lang/String;
         5: .line 118
            aload 0 /* this */
            aload 0 /* this */
            aload 2 /* interphase */
            aload 0 /* this */
            iload 3 /* sourceStart */
            dup_x1
            putfield org.eclipse.jdt.internal.core.LambdaExpression.sourceStart:I
            iload 4 /* sourceEnd */
            iload 5 /* arrowPosition */
            invokestatic org.eclipse.jdt.internal.core.LambdaExpression.makeTypeElementInfo:(Lorg/eclipse/jdt/internal/core/LambdaExpression;Ljava/lang/String;III)Lorg/eclipse/jdt/internal/core/SourceTypeElementInfo;
            putfield org.eclipse.jdt.internal.core.LambdaExpression.elementInfo:Lorg/eclipse/jdt/internal/core/SourceTypeElementInfo;
         6: .line 119
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.elementInfo:Lorg/eclipse/jdt/internal/core/SourceTypeElementInfo;
            iconst_1
            anewarray org.eclipse.jdt.core.IJavaElement
            dup
            iconst_0
            aload 0 /* this */
            aload 6 /* lambdaMethod */
            dup_x1
            putfield org.eclipse.jdt.internal.core.LambdaExpression.lambdaMethod:Lorg/eclipse/jdt/internal/core/LambdaMethod;
            aastore
            putfield org.eclipse.jdt.internal.core.SourceTypeElementInfo.children:[Lorg/eclipse/jdt/core/IJavaElement;
         7: .line 120
            return
        end local 6 // org.eclipse.jdt.internal.core.LambdaMethod lambdaMethod
        end local 5 // int arrowPosition
        end local 4 // int sourceEnd
        end local 3 // int sourceStart
        end local 2 // java.lang.String interphase
        end local 1 // org.eclipse.jdt.internal.core.JavaElement parent
        end local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    8     0           this  Lorg/eclipse/jdt/internal/core/LambdaExpression;
            0    8     1         parent  Lorg/eclipse/jdt/internal/core/JavaElement;
            0    8     2     interphase  Ljava/lang/String;
            0    8     3    sourceStart  I
            0    8     4      sourceEnd  I
            0    8     5  arrowPosition  I
            0    8     6   lambdaMethod  Lorg/eclipse/jdt/internal/core/LambdaMethod;
    MethodParameters:
               Name  Flags
      parent         
      interphase     
      sourceStart    
      sourceEnd      
      arrowPosition  
      lambdaMethod   

  private static org.eclipse.jdt.internal.core.SourceTypeElementInfo makeTypeElementInfo(org.eclipse.jdt.internal.core.LambdaExpression, java.lang.String, int, int, int);
    descriptor: (Lorg/eclipse/jdt/internal/core/LambdaExpression;Ljava/lang/String;III)Lorg/eclipse/jdt/internal/core/SourceTypeElementInfo;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=8, args_size=5
        start local 0 // org.eclipse.jdt.internal.core.LambdaExpression handle
        start local 1 // java.lang.String interphase
        start local 2 // int sourceStart
        start local 3 // int sourceEnd
        start local 4 // int arrowPosition
         0: .line 125
            new org.eclipse.jdt.internal.core.SourceTypeElementInfo
            dup
            invokespecial org.eclipse.jdt.internal.core.SourceTypeElementInfo.<init>:()V
            astore 5 /* elementInfo */
        start local 5 // org.eclipse.jdt.internal.core.SourceTypeElementInfo elementInfo
         1: .line 127
            aload 5 /* elementInfo */
            iconst_0
            invokevirtual org.eclipse.jdt.internal.core.SourceTypeElementInfo.setFlags:(I)V
         2: .line 128
            aload 5 /* elementInfo */
            aload 0 /* handle */
            invokevirtual org.eclipse.jdt.internal.core.SourceTypeElementInfo.setHandle:(Lorg/eclipse/jdt/core/IType;)V
         3: .line 129
            aload 5 /* elementInfo */
            iload 2 /* sourceStart */
            invokevirtual org.eclipse.jdt.internal.core.SourceTypeElementInfo.setSourceRangeStart:(I)V
         4: .line 130
            aload 5 /* elementInfo */
            iload 3 /* sourceEnd */
            invokevirtual org.eclipse.jdt.internal.core.SourceTypeElementInfo.setSourceRangeEnd:(I)V
         5: .line 132
            aload 5 /* elementInfo */
            iload 2 /* sourceStart */
            invokevirtual org.eclipse.jdt.internal.core.SourceTypeElementInfo.setNameSourceStart:(I)V
         6: .line 133
            aload 5 /* elementInfo */
            iload 4 /* arrowPosition */
            invokevirtual org.eclipse.jdt.internal.core.SourceTypeElementInfo.setNameSourceEnd:(I)V
         7: .line 134
            aload 5 /* elementInfo */
            aconst_null
            invokevirtual org.eclipse.jdt.internal.core.SourceTypeElementInfo.setSuperclassName:([C)V
         8: .line 135
            aload 5 /* elementInfo */
            aload 0 /* handle */
            aconst_null
            invokevirtual org.eclipse.jdt.internal.core.SourceTypeElementInfo.addCategories:(Lorg/eclipse/jdt/core/IJavaElement;[[C)V
         9: .line 137
            invokestatic org.eclipse.jdt.internal.core.JavaModelManager.getJavaModelManager:()Lorg/eclipse/jdt/internal/core/JavaModelManager;
            astore 6 /* manager */
        start local 6 // org.eclipse.jdt.internal.core.JavaModelManager manager
        10: .line 138
            iconst_1
            anewarray char[]
            dup
            iconst_0
            aload 6 /* manager */
            aload 1 /* interphase */
            invokestatic org.eclipse.jdt.core.Signature.toString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            invokevirtual org.eclipse.jdt.internal.core.JavaModelManager.intern:([C)[C
            aastore
            astore 7 /* superinterfaces */
        start local 7 // char[][] superinterfaces
        11: .line 139
            aload 5 /* elementInfo */
            aload 7 /* superinterfaces */
            invokevirtual org.eclipse.jdt.internal.core.SourceTypeElementInfo.setSuperInterfaceNames:([[C)V
        12: .line 140
            aload 5 /* elementInfo */
            areturn
        end local 7 // char[][] superinterfaces
        end local 6 // org.eclipse.jdt.internal.core.JavaModelManager manager
        end local 5 // org.eclipse.jdt.internal.core.SourceTypeElementInfo elementInfo
        end local 4 // int arrowPosition
        end local 3 // int sourceEnd
        end local 2 // int sourceStart
        end local 1 // java.lang.String interphase
        end local 0 // org.eclipse.jdt.internal.core.LambdaExpression handle
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   13     0           handle  Lorg/eclipse/jdt/internal/core/LambdaExpression;
            0   13     1       interphase  Ljava/lang/String;
            0   13     2      sourceStart  I
            0   13     3        sourceEnd  I
            0   13     4    arrowPosition  I
            1   13     5      elementInfo  Lorg/eclipse/jdt/internal/core/SourceTypeElementInfo;
           10   13     6          manager  Lorg/eclipse/jdt/internal/core/JavaModelManager;
           11   13     7  superinterfaces  [[C
    MethodParameters:
               Name  Flags
      handle         
      interphase     
      sourceStart    
      sourceEnd      
      arrowPosition  

  protected void closing(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
        start local 1 // java.lang.Object info
         0: .line 146
            return
        end local 1 // java.lang.Object info
        end local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/LambdaExpression;
            0    1     1  info  Ljava/lang/Object;
    Exceptions:
      throws org.eclipse.jdt.core.JavaModelException
    MethodParameters:
      Name  Flags
      info  

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
        start local 1 // java.lang.Object o
         0: .line 150
            aload 0 /* this */
            aload 1 /* o */
            if_acmpne 2
         1: .line 151
            iconst_1
            ireturn
         2: .line 156
      StackMap locals:
      StackMap stack:
            aload 1 /* o */
            instanceof org.eclipse.jdt.internal.core.LambdaExpression
            ifeq 10
         3: .line 157
            aload 1 /* o */
            checkcast org.eclipse.jdt.internal.core.LambdaExpression
            astore 2 /* that */
        start local 2 // org.eclipse.jdt.internal.core.LambdaExpression that
         4: .line 158
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.sourceStart:I
            aload 2 /* that */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.sourceStart:I
            if_icmpeq 6
         5: .line 159
            iconst_0
            ireturn
         6: .line 160
      StackMap locals: org.eclipse.jdt.internal.core.LambdaExpression
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.LambdaExpression.getTypeRoot:()Lorg/eclipse/jdt/core/ITypeRoot;
            astore 3 /* thisTR */
        start local 3 // org.eclipse.jdt.core.ITypeRoot thisTR
         7: .line 161
            aload 2 /* that */
            invokevirtual org.eclipse.jdt.internal.core.LambdaExpression.getTypeRoot:()Lorg/eclipse/jdt/core/ITypeRoot;
            astore 4 /* thatTR */
        start local 4 // org.eclipse.jdt.core.ITypeRoot thatTR
         8: .line 162
            aload 3 /* thisTR */
            invokeinterface org.eclipse.jdt.core.ITypeRoot.getElementName:()Ljava/lang/String;
            aload 4 /* thatTR */
            invokeinterface org.eclipse.jdt.core.ITypeRoot.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 9
            aload 3 /* thisTR */
            invokeinterface org.eclipse.jdt.core.ITypeRoot.getParent:()Lorg/eclipse/jdt/core/IJavaElement;
            aload 4 /* thatTR */
            invokeinterface org.eclipse.jdt.core.ITypeRoot.getParent:()Lorg/eclipse/jdt/core/IJavaElement;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 9
            iconst_1
            ireturn
      StackMap locals: org.eclipse.jdt.core.ITypeRoot org.eclipse.jdt.core.ITypeRoot
      StackMap stack:
         9: iconst_0
            ireturn
        end local 4 // org.eclipse.jdt.core.ITypeRoot thatTR
        end local 3 // org.eclipse.jdt.core.ITypeRoot thisTR
        end local 2 // org.eclipse.jdt.internal.core.LambdaExpression that
        10: .line 164
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.Object o
        end local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Lorg/eclipse/jdt/internal/core/LambdaExpression;
            0   11     1       o  Ljava/lang/Object;
            4   10     2    that  Lorg/eclipse/jdt/internal/core/LambdaExpression;
            7   10     3  thisTR  Lorg/eclipse/jdt/core/ITypeRoot;
            8   10     4  thatTR  Lorg/eclipse/jdt/core/ITypeRoot;
    MethodParameters:
      Name  Flags
      o     

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
         0: .line 169
            aload 0 /* this */
            invokespecial org.eclipse.jdt.internal.core.SourceType.hashCode:()I
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.sourceStart:I
            invokestatic org.eclipse.jdt.internal.core.util.Util.combineHashCodes:(II)I
            ireturn
        end local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/LambdaExpression;

  public java.lang.Object getElementInfo(org.eclipse.core.runtime.IProgressMonitor);
    descriptor: (Lorg/eclipse/core/runtime/IProgressMonitor;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
        start local 1 // org.eclipse.core.runtime.IProgressMonitor monitor
         0: .line 174
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.elementInfo:Lorg/eclipse/jdt/internal/core/SourceTypeElementInfo;
            areturn
        end local 1 // org.eclipse.core.runtime.IProgressMonitor monitor
        end local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/eclipse/jdt/internal/core/LambdaExpression;
            0    1     1  monitor  Lorg/eclipse/core/runtime/IProgressMonitor;
    Exceptions:
      throws org.eclipse.jdt.core.JavaModelException
    MethodParameters:
         Name  Flags
      monitor  

  protected char getHandleMementoDelimiter();
    descriptor: ()C
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
         0: .line 179
            bipush 41
            ireturn
        end local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/LambdaExpression;

  protected void getHandleMemento(java.lang.StringBuffer);
    descriptor: (Ljava/lang/StringBuffer;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
        start local 1 // java.lang.StringBuffer buff
         0: .line 184
            aload 0 /* this */
            aload 1 /* buff */
            iconst_1
            iconst_1
            invokevirtual org.eclipse.jdt.internal.core.LambdaExpression.getHandleMemento:(Ljava/lang/StringBuffer;ZZ)V
         1: .line 186
            aload 0 /* this */
            aload 1 /* buff */
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.LambdaExpression.getHandleMementoDelimiter:()C
            invokevirtual org.eclipse.jdt.internal.core.LambdaExpression.appendEscapedDelimiter:(Ljava/lang/StringBuffer;C)V
         2: .line 187
            return
        end local 1 // java.lang.StringBuffer buff
        end local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/eclipse/jdt/internal/core/LambdaExpression;
            0    3     1  buff  Ljava/lang/StringBuffer;
    MethodParameters:
      Name  Flags
      buff  

  protected void getHandleMemento(java.lang.StringBuffer, boolean, boolean);
    descriptor: (Ljava/lang/StringBuffer;ZZ)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
        start local 1 // java.lang.StringBuffer buff
        start local 2 // boolean serializeParent
        start local 3 // boolean serializeChild
         0: .line 190
            iload 2 /* serializeParent */
            ifeq 2
         1: .line 191
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.LambdaExpression.getParent:()Lorg/eclipse/jdt/core/IJavaElement;
            checkcast org.eclipse.jdt.internal.core.JavaElement
            aload 1 /* buff */
            invokevirtual org.eclipse.jdt.internal.core.JavaElement.getHandleMemento:(Ljava/lang/StringBuffer;)V
         2: .line 192
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* buff */
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.LambdaExpression.getHandleMementoDelimiter:()C
            invokevirtual org.eclipse.jdt.internal.core.LambdaExpression.appendEscapedDelimiter:(Ljava/lang/StringBuffer;C)V
         3: .line 193
            aload 0 /* this */
            aload 1 /* buff */
            bipush 34
            invokevirtual org.eclipse.jdt.internal.core.LambdaExpression.appendEscapedDelimiter:(Ljava/lang/StringBuffer;C)V
         4: .line 194
            aload 0 /* this */
            aload 1 /* buff */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.interphase:Ljava/lang/String;
            invokevirtual org.eclipse.jdt.internal.core.LambdaExpression.escapeMementoName:(Ljava/lang/StringBuffer;Ljava/lang/String;)V
         5: .line 195
            aload 1 /* buff */
            bipush 33
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
         6: .line 196
            aload 1 /* buff */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.sourceStart:I
            invokevirtual java.lang.StringBuffer.append:(I)Ljava/lang/StringBuffer;
            pop
         7: .line 197
            aload 1 /* buff */
            bipush 33
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
         8: .line 198
            aload 1 /* buff */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.sourceEnd:I
            invokevirtual java.lang.StringBuffer.append:(I)Ljava/lang/StringBuffer;
            pop
         9: .line 199
            aload 1 /* buff */
            bipush 33
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        10: .line 200
            aload 1 /* buff */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.arrowPosition:I
            invokevirtual java.lang.StringBuffer.append:(I)Ljava/lang/StringBuffer;
            pop
        11: .line 201
            iload 3 /* serializeChild */
            ifeq 13
        12: .line 202
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.lambdaMethod:Lorg/eclipse/jdt/internal/core/LambdaMethod;
            aload 1 /* buff */
            iconst_0
            invokevirtual org.eclipse.jdt.internal.core.LambdaMethod.getHandleMemento:(Ljava/lang/StringBuffer;Z)V
        13: .line 203
      StackMap locals:
      StackMap stack:
            return
        end local 3 // boolean serializeChild
        end local 2 // boolean serializeParent
        end local 1 // java.lang.StringBuffer buff
        end local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   14     0             this  Lorg/eclipse/jdt/internal/core/LambdaExpression;
            0   14     1             buff  Ljava/lang/StringBuffer;
            0   14     2  serializeParent  Z
            0   14     3   serializeChild  Z
    MethodParameters:
                 Name  Flags
      buff             
      serializeParent  
      serializeChild   

  public org.eclipse.jdt.core.IJavaElement getHandleFromMemento(java.lang.String, org.eclipse.jdt.internal.core.util.MementoTokenizer, org.eclipse.jdt.core.WorkingCopyOwner);
    descriptor: (Ljava/lang/String;Lorg/eclipse/jdt/internal/core/util/MementoTokenizer;Lorg/eclipse/jdt/core/WorkingCopyOwner;)Lorg/eclipse/jdt/core/IJavaElement;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=12, args_size=4
        start local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
        start local 1 // java.lang.String token
        start local 2 // org.eclipse.jdt.internal.core.util.MementoTokenizer memento
        start local 3 // org.eclipse.jdt.core.WorkingCopyOwner workingCopyOwner
         0: .line 208
            aload 1 /* token */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 38
            if_icmpeq 2
         1: .line 209
            aconst_null
            areturn
         2: .line 212
      StackMap locals:
      StackMap stack:
            aload 2 /* memento */
            invokevirtual org.eclipse.jdt.internal.core.util.MementoTokenizer.hasMoreTokens:()Z
            ifne 3
            aload 0 /* this */
            areturn
         3: .line 213
      StackMap locals:
      StackMap stack:
            aload 2 /* memento */
            invokevirtual org.eclipse.jdt.internal.core.util.MementoTokenizer.nextToken:()Ljava/lang/String;
            astore 4 /* selector */
        start local 4 // java.lang.String selector
         4: .line 214
            aload 2 /* memento */
            invokevirtual org.eclipse.jdt.internal.core.util.MementoTokenizer.hasMoreTokens:()Z
            ifeq 5
            aload 2 /* memento */
            invokevirtual org.eclipse.jdt.internal.core.util.MementoTokenizer.nextToken:()Ljava/lang/String;
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 33
            if_icmpeq 6
      StackMap locals: java.lang.String
      StackMap stack:
         5: aload 0 /* this */
            areturn
         6: .line 215
      StackMap locals:
      StackMap stack:
            aload 2 /* memento */
            invokevirtual org.eclipse.jdt.internal.core.util.MementoTokenizer.hasMoreTokens:()Z
            ifne 7
            aload 0 /* this */
            areturn
         7: .line 216
      StackMap locals:
      StackMap stack:
            aload 2 /* memento */
            invokevirtual org.eclipse.jdt.internal.core.util.MementoTokenizer.nextToken:()Ljava/lang/String;
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 5 /* length */
        start local 5 // int length
         8: .line 217
            iload 5 /* length */
            anewarray java.lang.String
            astore 6 /* parameterTypes */
        start local 6 // java.lang.String[] parameterTypes
         9: .line 218
            iload 5 /* length */
            anewarray java.lang.String
            astore 7 /* parameterNames */
        start local 7 // java.lang.String[] parameterNames
        10: .line 219
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        11: goto 19
        12: .line 220
      StackMap locals: org.eclipse.jdt.internal.core.LambdaExpression java.lang.String org.eclipse.jdt.internal.core.util.MementoTokenizer org.eclipse.jdt.core.WorkingCopyOwner java.lang.String int java.lang.String[] java.lang.String[] int
      StackMap stack:
            aload 2 /* memento */
            invokevirtual org.eclipse.jdt.internal.core.util.MementoTokenizer.hasMoreTokens:()Z
            ifeq 13
            aload 2 /* memento */
            invokevirtual org.eclipse.jdt.internal.core.util.MementoTokenizer.nextToken:()Ljava/lang/String;
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 34
            if_icmpeq 14
      StackMap locals:
      StackMap stack:
        13: aload 0 /* this */
            areturn
        14: .line 221
      StackMap locals:
      StackMap stack:
            aload 6 /* parameterTypes */
            iload 8 /* i */
            aload 2 /* memento */
            invokevirtual org.eclipse.jdt.internal.core.util.MementoTokenizer.nextToken:()Ljava/lang/String;
            aastore
        15: .line 222
            aload 2 /* memento */
            invokevirtual org.eclipse.jdt.internal.core.util.MementoTokenizer.hasMoreTokens:()Z
            ifeq 16
            aload 2 /* memento */
            invokevirtual org.eclipse.jdt.internal.core.util.MementoTokenizer.nextToken:()Ljava/lang/String;
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 34
            if_icmpeq 17
      StackMap locals:
      StackMap stack:
        16: aload 0 /* this */
            areturn
        17: .line 223
      StackMap locals:
      StackMap stack:
            aload 7 /* parameterNames */
            iload 8 /* i */
            aload 2 /* memento */
            invokevirtual org.eclipse.jdt.internal.core.util.MementoTokenizer.nextToken:()Ljava/lang/String;
            aastore
        18: .line 219
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        19: iload 8 /* i */
            iload 5 /* length */
            if_icmplt 12
        end local 8 // int i
        20: .line 225
            aload 2 /* memento */
            invokevirtual org.eclipse.jdt.internal.core.util.MementoTokenizer.hasMoreTokens:()Z
            ifeq 21
            aload 2 /* memento */
            invokevirtual org.eclipse.jdt.internal.core.util.MementoTokenizer.nextToken:()Ljava/lang/String;
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 34
            if_icmpeq 22
      StackMap locals:
      StackMap stack:
        21: aload 0 /* this */
            areturn
        22: .line 226
      StackMap locals:
      StackMap stack:
            aload 2 /* memento */
            invokevirtual org.eclipse.jdt.internal.core.util.MementoTokenizer.nextToken:()Ljava/lang/String;
            astore 8 /* returnType */
        start local 8 // java.lang.String returnType
        23: .line 227
            aload 2 /* memento */
            invokevirtual org.eclipse.jdt.internal.core.util.MementoTokenizer.hasMoreTokens:()Z
            ifeq 24
            aload 2 /* memento */
            invokevirtual org.eclipse.jdt.internal.core.util.MementoTokenizer.nextToken:()Ljava/lang/String;
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 34
            if_icmpeq 25
      StackMap locals: java.lang.String
      StackMap stack:
        24: aload 0 /* this */
            areturn
        25: .line 228
      StackMap locals:
      StackMap stack:
            aload 2 /* memento */
            invokevirtual org.eclipse.jdt.internal.core.util.MementoTokenizer.nextToken:()Ljava/lang/String;
            astore 9 /* key */
        start local 9 // java.lang.String key
        26: .line 229
            aload 0 /* this */
            aload 0 /* this */
            aload 4 /* selector */
            aload 9 /* key */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.sourceStart:I
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.sourceEnd:I
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.arrowPosition:I
            aload 6 /* parameterTypes */
            aload 7 /* parameterNames */
            aload 8 /* returnType */
            invokestatic org.eclipse.jdt.internal.core.LambdaFactory.createLambdaMethod:(Lorg/eclipse/jdt/internal/core/JavaElement;Ljava/lang/String;Ljava/lang/String;III[Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Lorg/eclipse/jdt/internal/core/LambdaMethod;
            putfield org.eclipse.jdt.internal.core.LambdaExpression.lambdaMethod:Lorg/eclipse/jdt/internal/core/LambdaMethod;
        27: .line 230
            iload 5 /* length */
            anewarray org.eclipse.jdt.core.ILocalVariable
            astore 10 /* parameters */
        start local 10 // org.eclipse.jdt.core.ILocalVariable[] parameters
        28: .line 231
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        29: goto 32
        30: .line 232
      StackMap locals: java.lang.String org.eclipse.jdt.core.ILocalVariable[] int
      StackMap stack:
            aload 10 /* parameters */
            iload 11 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.lambdaMethod:Lorg/eclipse/jdt/internal/core/LambdaMethod;
            aload 2 /* memento */
            aload 3 /* workingCopyOwner */
            invokevirtual org.eclipse.jdt.internal.core.LambdaMethod.getHandleFromMemento:(Lorg/eclipse/jdt/internal/core/util/MementoTokenizer;Lorg/eclipse/jdt/core/WorkingCopyOwner;)Lorg/eclipse/jdt/core/IJavaElement;
            checkcast org.eclipse.jdt.core.ILocalVariable
            aastore
        31: .line 231
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        32: iload 11 /* i */
            iload 5 /* length */
            if_icmplt 30
        end local 11 // int i
        33: .line 234
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.lambdaMethod:Lorg/eclipse/jdt/internal/core/LambdaMethod;
            getfield org.eclipse.jdt.internal.core.LambdaMethod.elementInfo:Lorg/eclipse/jdt/internal/core/SourceMethodElementInfo;
            aload 10 /* parameters */
            putfield org.eclipse.jdt.internal.core.SourceMethodElementInfo.arguments:[Lorg/eclipse/jdt/core/ILocalVariable;
        34: .line 235
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.elementInfo:Lorg/eclipse/jdt/internal/core/SourceTypeElementInfo;
            iconst_1
            anewarray org.eclipse.jdt.core.IJavaElement
            dup
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.lambdaMethod:Lorg/eclipse/jdt/internal/core/LambdaMethod;
            aastore
            putfield org.eclipse.jdt.internal.core.SourceTypeElementInfo.children:[Lorg/eclipse/jdt/core/IJavaElement;
        35: .line 236
            aload 2 /* memento */
            invokevirtual org.eclipse.jdt.internal.core.util.MementoTokenizer.hasMoreTokens:()Z
            ifne 37
        36: .line 237
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.lambdaMethod:Lorg/eclipse/jdt/internal/core/LambdaMethod;
            areturn
        37: .line 238
      StackMap locals:
      StackMap stack:
            aload 2 /* memento */
            invokevirtual org.eclipse.jdt.internal.core.util.MementoTokenizer.nextToken:()Ljava/lang/String;
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            tableswitch { // 38 - 41
                   38: 38
                   39: 41
                   40: 41
                   41: 41
              default: 41
          }
        38: .line 240
      StackMap locals:
      StackMap stack:
            aload 2 /* memento */
            invokevirtual org.eclipse.jdt.internal.core.util.MementoTokenizer.hasMoreTokens:()Z
            ifne 40
        39: .line 241
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.lambdaMethod:Lorg/eclipse/jdt/internal/core/LambdaMethod;
            areturn
        40: .line 242
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.lambdaMethod:Lorg/eclipse/jdt/internal/core/LambdaMethod;
            aload 2 /* memento */
            aload 3 /* workingCopyOwner */
            invokevirtual org.eclipse.jdt.internal.core.LambdaMethod.getHandleFromMemento:(Lorg/eclipse/jdt/internal/core/util/MementoTokenizer;Lorg/eclipse/jdt/core/WorkingCopyOwner;)Lorg/eclipse/jdt/core/IJavaElement;
            areturn
        41: .line 245
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 10 // org.eclipse.jdt.core.ILocalVariable[] parameters
        end local 9 // java.lang.String key
        end local 8 // java.lang.String returnType
        end local 7 // java.lang.String[] parameterNames
        end local 6 // java.lang.String[] parameterTypes
        end local 5 // int length
        end local 4 // java.lang.String selector
        end local 3 // org.eclipse.jdt.core.WorkingCopyOwner workingCopyOwner
        end local 2 // org.eclipse.jdt.internal.core.util.MementoTokenizer memento
        end local 1 // java.lang.String token
        end local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   42     0              this  Lorg/eclipse/jdt/internal/core/LambdaExpression;
            0   42     1             token  Ljava/lang/String;
            0   42     2           memento  Lorg/eclipse/jdt/internal/core/util/MementoTokenizer;
            0   42     3  workingCopyOwner  Lorg/eclipse/jdt/core/WorkingCopyOwner;
            4   42     4          selector  Ljava/lang/String;
            8   42     5            length  I
            9   42     6    parameterTypes  [Ljava/lang/String;
           10   42     7    parameterNames  [Ljava/lang/String;
           11   20     8                 i  I
           23   42     8        returnType  Ljava/lang/String;
           26   42     9               key  Ljava/lang/String;
           28   42    10        parameters  [Lorg/eclipse/jdt/core/ILocalVariable;
           29   33    11                 i  I
    MethodParameters:
                  Name  Flags
      token             
      memento           
      workingCopyOwner  

  public org.eclipse.jdt.core.IJavaElement[] getChildren();
    descriptor: ()[Lorg/eclipse/jdt/core/IJavaElement;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
         0: .line 251
            iconst_1
            anewarray org.eclipse.jdt.core.IJavaElement
            dup
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.lambdaMethod:Lorg/eclipse/jdt/internal/core/LambdaMethod;
            aastore
            areturn
        end local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/LambdaExpression;
    Exceptions:
      throws org.eclipse.jdt.core.JavaModelException

  public boolean isLocal();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
         0: .line 256
            iconst_1
            ireturn
        end local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/LambdaExpression;

  public org.eclipse.jdt.internal.core.JavaElement resolved(org.eclipse.jdt.internal.compiler.lookup.Binding);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/Binding;)Lorg/eclipse/jdt/internal/core/JavaElement;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.Binding binding
         0: .line 261
            new org.eclipse.jdt.internal.core.ResolvedLambdaExpression
            dup
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.parent:Lorg/eclipse/jdt/internal/core/JavaElement;
            aload 0 /* this */
            new java.lang.String
            dup
            aload 1 /* binding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.Binding.computeUniqueKey:()[C
            invokespecial java.lang.String.<init>:([C)V
            invokespecial org.eclipse.jdt.internal.core.ResolvedLambdaExpression.<init>:(Lorg/eclipse/jdt/internal/core/JavaElement;Lorg/eclipse/jdt/internal/core/LambdaExpression;Ljava/lang/String;)V
            astore 2 /* resolvedHandle */
        start local 2 // org.eclipse.jdt.internal.core.ResolvedLambdaExpression resolvedHandle
         1: .line 262
            aload 2 /* resolvedHandle */
            areturn
        end local 2 // org.eclipse.jdt.internal.core.ResolvedLambdaExpression resolvedHandle
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.Binding binding
        end local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lorg/eclipse/jdt/internal/core/LambdaExpression;
            0    2     1         binding  Lorg/eclipse/jdt/internal/compiler/lookup/Binding;
            1    2     2  resolvedHandle  Lorg/eclipse/jdt/internal/core/ResolvedLambdaExpression;
    MethodParameters:
         Name  Flags
      binding  

  public org.eclipse.jdt.core.IMethod getMethod();
    descriptor: ()Lorg/eclipse/jdt/core/IMethod;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
         0: .line 266
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.lambdaMethod:Lorg/eclipse/jdt/internal/core/LambdaMethod;
            areturn
        end local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/LambdaExpression;

  public boolean isLambda();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
         0: .line 271
            iconst_1
            ireturn
        end local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/LambdaExpression;

  public boolean isAnonymous();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
         0: .line 276
            iconst_0
            ireturn
        end local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/LambdaExpression;

  public void toStringName(java.lang.StringBuffer);
    descriptor: (Ljava/lang/StringBuffer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
        start local 1 // java.lang.StringBuffer buffer
         0: .line 281
            aload 0 /* this */
            aload 1 /* buffer */
            invokespecial org.eclipse.jdt.internal.core.SourceType.toStringName:(Ljava/lang/StringBuffer;)V
         1: .line 282
            aload 1 /* buffer */
            ldc "<lambda #"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         2: .line 283
            aload 1 /* buffer */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.occurrenceCount:I
            invokevirtual java.lang.StringBuffer.append:(I)Ljava/lang/StringBuffer;
            pop
         3: .line 284
            aload 1 /* buffer */
            ldc ">"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         4: .line 285
            return
        end local 1 // java.lang.StringBuffer buffer
        end local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/eclipse/jdt/internal/core/LambdaExpression;
            0    5     1  buffer  Ljava/lang/StringBuffer;
    MethodParameters:
        Name  Flags
      buffer  

  public org.eclipse.jdt.core.IJavaElement getPrimaryElement(boolean);
    descriptor: (Z)Lorg/eclipse/jdt/core/IJavaElement;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
        start local 1 // boolean checkOwner
         0: .line 289
            iload 1 /* checkOwner */
            ifeq 4
         1: .line 290
            aload 0 /* this */
            iconst_5
            invokevirtual org.eclipse.jdt.internal.core.LambdaExpression.getAncestor:(I)Lorg/eclipse/jdt/core/IJavaElement;
            checkcast org.eclipse.jdt.internal.core.CompilationUnit
            astore 2 /* cu */
        start local 2 // org.eclipse.jdt.internal.core.CompilationUnit cu
         2: .line 291
            aload 2 /* cu */
            ifnull 3
            aload 2 /* cu */
            invokevirtual org.eclipse.jdt.internal.core.CompilationUnit.isPrimary:()Z
            ifeq 4
      StackMap locals: org.eclipse.jdt.internal.core.CompilationUnit
      StackMap stack:
         3: aload 0 /* this */
            areturn
        end local 2 // org.eclipse.jdt.internal.core.CompilationUnit cu
         4: .line 293
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.parent:Lorg/eclipse/jdt/internal/core/JavaElement;
            iconst_0
            invokevirtual org.eclipse.jdt.internal.core.JavaElement.getPrimaryElement:(Z)Lorg/eclipse/jdt/core/IJavaElement;
            astore 2 /* primaryParent */
        start local 2 // org.eclipse.jdt.core.IJavaElement primaryParent
         5: .line 294
            aload 2 /* primaryParent */
            instanceof org.eclipse.jdt.internal.core.JavaElement
            ifeq 11
         6: .line 295
            aload 2 /* primaryParent */
            checkcast org.eclipse.jdt.internal.core.JavaElement
            astore 3 /* ancestor */
        start local 3 // org.eclipse.jdt.internal.core.JavaElement ancestor
         7: .line 296
            new java.lang.StringBuffer
            dup
            bipush 32
            invokespecial java.lang.StringBuffer.<init>:(I)V
            astore 4 /* buffer */
        start local 4 // java.lang.StringBuffer buffer
         8: .line 297
            aload 0 /* this */
            aload 4 /* buffer */
            iconst_0
            iconst_1
            invokevirtual org.eclipse.jdt.internal.core.LambdaExpression.getHandleMemento:(Ljava/lang/StringBuffer;ZZ)V
         9: .line 298
            aload 4 /* buffer */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            astore 5 /* memento */
        start local 5 // java.lang.String memento
        10: .line 299
            aload 3 /* ancestor */
            new org.eclipse.jdt.internal.core.util.MementoTokenizer
            dup
            aload 5 /* memento */
            invokespecial org.eclipse.jdt.internal.core.util.MementoTokenizer.<init>:(Ljava/lang/String;)V
            getstatic org.eclipse.jdt.internal.core.DefaultWorkingCopyOwner.PRIMARY:Lorg/eclipse/jdt/internal/core/DefaultWorkingCopyOwner;
            invokevirtual org.eclipse.jdt.internal.core.JavaElement.getHandleFromMemento:(Lorg/eclipse/jdt/internal/core/util/MementoTokenizer;Lorg/eclipse/jdt/core/WorkingCopyOwner;)Lorg/eclipse/jdt/core/IJavaElement;
            invokeinterface org.eclipse.jdt.core.IJavaElement.getParent:()Lorg/eclipse/jdt/core/IJavaElement;
            areturn
        end local 5 // java.lang.String memento
        end local 4 // java.lang.StringBuffer buffer
        end local 3 // org.eclipse.jdt.internal.core.JavaElement ancestor
        11: .line 301
      StackMap locals: org.eclipse.jdt.core.IJavaElement
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 2 // org.eclipse.jdt.core.IJavaElement primaryParent
        end local 1 // boolean checkOwner
        end local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   12     0           this  Lorg/eclipse/jdt/internal/core/LambdaExpression;
            0   12     1     checkOwner  Z
            2    4     2             cu  Lorg/eclipse/jdt/internal/core/CompilationUnit;
            5   12     2  primaryParent  Lorg/eclipse/jdt/core/IJavaElement;
            7   11     3       ancestor  Lorg/eclipse/jdt/internal/core/JavaElement;
            8   11     4         buffer  Ljava/lang/StringBuffer;
           10   11     5        memento  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      checkOwner  

  public java.lang.String[] getSuperInterfaceTypeSignatures();
    descriptor: ()[Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
         0: .line 306
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.LambdaExpression.interphase:Ljava/lang/String;
            aastore
            areturn
        end local 0 // org.eclipse.jdt.internal.core.LambdaExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/LambdaExpression;
    Exceptions:
      throws org.eclipse.jdt.core.JavaModelException
}
SourceFile: "LambdaExpression.java"
NestMembers:
  org.eclipse.jdt.internal.core.LambdaExpression$1
InnerClasses:
  org.eclipse.jdt.internal.core.LambdaExpression$1