Skip to content

Instantly share code, notes, and snippets.

@lrytz
Created January 27, 2016 15:15
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save lrytz/e910be65d0bc95c1d5ca to your computer and use it in GitHub Desktop.
Save lrytz/e910be65d0bc95c1d5ca to your computer and use it in GitHub Desktop.
// class version 52.0 (52)
// access flags 0x421
public abstract class scala/tools/nsc/typechecker/EtaExpansion$class {
// compiled from: EtaExpansion.scala
ATTRIBUTE Scala : unknown
ATTRIBUTE ScalaInlineInfo : unknown
// access flags 0x19
public final static INNERCLASS java/lang/invoke/MethodHandles$Lookup java/lang/invoke/MethodHandles Lookup
// access flags 0x1
public INNERCLASS scala/collection/generic/GenTraversableFactory$GenericCanBuildFrom scala/collection/generic/GenTraversableFactory GenericCanBuildFrom
// access flags 0x401
public abstract INNERCLASS scala/reflect/api/Names$NameApi scala/reflect/api/Names NameApi
// access flags 0x601
public abstract INNERCLASS scala/reflect/api/Trees$ApplyApi scala/reflect/api/Trees ApplyApi
// access flags 0x401
public abstract INNERCLASS scala/reflect/api/Trees$ModifiersApi scala/reflect/api/Trees ModifiersApi
// access flags 0x601
public abstract INNERCLASS scala/reflect/api/Trees$SelectApi scala/reflect/api/Trees SelectApi
// access flags 0x601
public abstract INNERCLASS scala/reflect/api/Trees$TreeApi scala/reflect/api/Trees TreeApi
// access flags 0x401
public abstract INNERCLASS scala/reflect/api/Trees$TreeCopierOps scala/reflect/api/Trees TreeCopierOps
// access flags 0x601
public abstract INNERCLASS scala/reflect/api/Trees$TypeApplyApi scala/reflect/api/Trees TypeApplyApi
// access flags 0x1
public INNERCLASS scala/reflect/internal/Definitions$definitions$ scala/reflect/internal/Definitions definitions$
// access flags 0x401
public abstract INNERCLASS scala/reflect/internal/Names$Name scala/reflect/internal/Names Name
// access flags 0x401
public abstract INNERCLASS scala/reflect/internal/Names$TermName scala/reflect/internal/Names TermName
// access flags 0x601
public abstract INNERCLASS scala/reflect/internal/StdAttachments$Attachable scala/reflect/internal/StdAttachments Attachable
// access flags 0x1
public INNERCLASS scala/reflect/internal/Symbols$NoSymbol scala/reflect/internal/Symbols NoSymbol
// access flags 0x401
public abstract INNERCLASS scala/reflect/internal/Symbols$Symbol scala/reflect/internal/Symbols Symbol
// access flags 0x1
public INNERCLASS scala/reflect/internal/Trees$Apply scala/reflect/internal/Trees Apply
// access flags 0x1
public INNERCLASS scala/reflect/internal/Trees$Block scala/reflect/internal/Trees Block
// access flags 0x1
public INNERCLASS scala/reflect/internal/Trees$ChangeOwnerTraverser scala/reflect/internal/Trees ChangeOwnerTraverser
// access flags 0x1
public INNERCLASS scala/reflect/internal/Trees$EmptyTree$ scala/reflect/internal/Trees EmptyTree$
// access flags 0x1
public INNERCLASS scala/reflect/internal/Trees$Function scala/reflect/internal/Trees Function
// access flags 0x1
public INNERCLASS scala/reflect/internal/Trees$Ident scala/reflect/internal/Trees Ident
// access flags 0x1
public INNERCLASS scala/reflect/internal/Trees$Modifiers scala/reflect/internal/Trees Modifiers
// access flags 0x1
public INNERCLASS scala/reflect/internal/Trees$Select scala/reflect/internal/Trees Select
// access flags 0x401
public abstract INNERCLASS scala/reflect/internal/Trees$Tree scala/reflect/internal/Trees Tree
// access flags 0x1
public INNERCLASS scala/reflect/internal/Trees$TypeApply scala/reflect/internal/Trees TypeApply
// access flags 0x1
public INNERCLASS scala/reflect/internal/Trees$TypeTree scala/reflect/internal/Trees TypeTree
// access flags 0x1
public INNERCLASS scala/reflect/internal/Trees$ValDef scala/reflect/internal/Trees ValDef
// access flags 0x1
public INNERCLASS scala/reflect/internal/Types$MethodType scala/reflect/internal/Types MethodType
// access flags 0x401
public abstract INNERCLASS scala/reflect/internal/Types$Type scala/reflect/internal/Types Type
// access flags 0x601
public abstract INNERCLASS scala/reflect/internal/settings/MutableSettings$SettingValue scala/reflect/internal/settings/MutableSettings SettingValue
// access flags 0x1
public INNERCLASS scala/reflect/internal/tpe/TypeMaps$dropIllegalStarTypes$ scala/reflect/internal/tpe/TypeMaps dropIllegalStarTypes$
// access flags 0x1
public INNERCLASS scala/tools/nsc/CompilationUnits$CompilationUnit scala/tools/nsc/CompilationUnits CompilationUnit
// access flags 0x1
public INNERCLASS scala/tools/nsc/Global$gen$ scala/tools/nsc/Global gen$
// access flags 0x1
public INNERCLASS scala/tools/nsc/ast/Trees$treeInfo$ scala/tools/nsc/ast/Trees treeInfo$
// access flags 0x1
public INNERCLASS scala/tools/nsc/settings/MutableSettings$BooleanSetting scala/tools/nsc/settings/MutableSettings BooleanSetting
// access flags 0x1
public INNERCLASS scala/tools/nsc/typechecker/Contexts$Context scala/tools/nsc/typechecker/Contexts Context
// access flags 0x1
public INNERCLASS scala/tools/nsc/typechecker/EtaExpansion$etaExpansion$ scala/tools/nsc/typechecker/EtaExpansion etaExpansion$
// access flags 0x401
public abstract INNERCLASS scala/tools/nsc/typechecker/Typers$Typer scala/tools/nsc/typechecker/Typers Typer
// access flags 0x100A
private static synthetic Ljava/util/Map; $deserializeLambdaCache$
// access flags 0x9
public static etaExpand(Lscala/tools/nsc/typechecker/Analyzer;Lscala/tools/nsc/CompilationUnits$CompilationUnit;Lscala/reflect/internal/Trees$Tree;Lscala/tools/nsc/typechecker/Typers$Typer;)Lscala/reflect/internal/Trees$Tree;
// parameter final $this
// parameter final unit
// parameter final tree
// parameter final typer
L0
LINENUMBER 51 L0
ALOAD 2
INVOKEVIRTUAL scala/reflect/internal/Trees$Tree.tpe ()Lscala/reflect/internal/Types$Type;
L1
ASTORE 4
L2
LINENUMBER 52 L2
ICONST_0
INVOKESTATIC scala/runtime/IntRef.create (I)Lscala/runtime/IntRef;
L3
ASTORE 5
L4
LINENUMBER 57 L4
NEW scala/collection/mutable/ListBuffer
DUP
INVOKESPECIAL scala/collection/mutable/ListBuffer.<init> ()V
L5
ASTORE 6
L6
LINENUMBER 132 L6
ALOAD 0
ALOAD 2
ALOAD 5
ALOAD 6
ALOAD 1
ALOAD 3
INVOKESTATIC scala/tools/nsc/typechecker/EtaExpansion$class.liftoutPrefix$1 (Lscala/tools/nsc/typechecker/Analyzer;Lscala/reflect/internal/Trees$Tree;Lscala/runtime/IntRef;Lscala/collection/mutable/ListBuffer;Lscala/tools/nsc/CompilationUnits$CompilationUnit;Lscala/tools/nsc/typechecker/Typers$Typer;)Lscala/reflect/internal/Trees$Tree;
L7
ASTORE 7
L8
LINENUMBER 133 L8
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
ALOAD 2
INVOKEVIRTUAL scala/reflect/internal/Trees$Tree.pos ()Lscala/reflect/internal/util/Position;
NEW scala/reflect/internal/Trees$Block
DUP
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
ALOAD 6
INVOKEVIRTUAL scala/collection/mutable/ListBuffer.toList ()Lscala/collection/immutable/List;
ALOAD 0
ALOAD 7
ALOAD 4
INVOKESTATIC scala/tools/nsc/typechecker/EtaExpansion$class.expand$1 (Lscala/tools/nsc/typechecker/Analyzer;Lscala/reflect/internal/Trees$Tree;Lscala/reflect/internal/Types$Type;)Lscala/reflect/internal/Trees$Tree;
INVOKESPECIAL scala/reflect/internal/Trees$Block.<init> (Lscala/reflect/internal/SymbolTable;Lscala/collection/immutable/List;Lscala/reflect/internal/Trees$Tree;)V
INVOKEVIRTUAL scala/tools/nsc/Global.atPos (Lscala/reflect/internal/util/Position;Lscala/reflect/internal/Trees$Tree;)Lscala/reflect/internal/Trees$Tree;
L9
ARETURN
L10
LOCALVARIABLE tpe Lscala/reflect/internal/Types$Type; L1 L9 4
LOCALVARIABLE cnt Lscala/runtime/IntRef; L3 L9 5
LOCALVARIABLE defs Lscala/collection/mutable/ListBuffer; L5 L9 6
LOCALVARIABLE tree1 Lscala/reflect/internal/Trees$Tree; L7 L9 7
LOCALVARIABLE $this Lscala/tools/nsc/typechecker/Analyzer; L0 L10 0
LOCALVARIABLE unit Lscala/tools/nsc/CompilationUnits$CompilationUnit; L0 L10 1
LOCALVARIABLE tree Lscala/reflect/internal/Trees$Tree; L0 L10 2
LOCALVARIABLE typer Lscala/tools/nsc/typechecker/Typers$Typer; L0 L10 3
MAXSTACK = 9
MAXLOCALS = 8
// access flags 0x1A
private final static freshName$1(Lscala/tools/nsc/typechecker/Analyzer;Lscala/runtime/IntRef;Lscala/tools/nsc/CompilationUnits$CompilationUnit;)Lscala/reflect/internal/Names$TermName;
// parameter final $this
// parameter final cnt$1
// parameter final unit$1
L0
LINENUMBER 54 L0
ALOAD 1
ALOAD 1
GETFIELD scala/runtime/IntRef.elem : I
ICONST_1
IADD
PUTFIELD scala/runtime/IntRef.elem : I
L1
LINENUMBER 55 L1
ALOAD 2
NEW scala/collection/mutable/StringBuilder
DUP
INVOKESPECIAL scala/collection/mutable/StringBuilder.<init> ()V
LDC "eta$"
INVOKEVIRTUAL scala/collection/mutable/StringBuilder.append (Ljava/lang/Object;)Lscala/collection/mutable/StringBuilder;
ALOAD 1
GETFIELD scala/runtime/IntRef.elem : I
ICONST_1
ISUB
INVOKESTATIC scala/runtime/BoxesRunTime.boxToInteger (I)Ljava/lang/Integer;
INVOKEVIRTUAL scala/collection/mutable/StringBuilder.append (Ljava/lang/Object;)Lscala/collection/mutable/StringBuilder;
LDC "$"
INVOKEVIRTUAL scala/collection/mutable/StringBuilder.append (Ljava/lang/Object;)Lscala/collection/mutable/StringBuilder;
INVOKEVIRTUAL scala/collection/mutable/StringBuilder.toString ()Ljava/lang/String;
INVOKEVIRTUAL scala/tools/nsc/CompilationUnits$CompilationUnit.freshTermName (Ljava/lang/String;)Lscala/reflect/internal/Names$TermName;
ARETURN
L2
LOCALVARIABLE $this Lscala/tools/nsc/typechecker/Analyzer; L0 L2 0
LOCALVARIABLE cnt$1 Lscala/runtime/IntRef; L0 L2 1
LOCALVARIABLE unit$1 Lscala/tools/nsc/CompilationUnits$CompilationUnit; L0 L2 2
MAXSTACK = 4
MAXLOCALS = 3
// access flags 0x1A
private final static liftout$1(Lscala/tools/nsc/typechecker/Analyzer;Lscala/reflect/internal/Trees$Tree;ZLscala/runtime/IntRef;Lscala/collection/mutable/ListBuffer;Lscala/tools/nsc/CompilationUnits$CompilationUnit;Lscala/tools/nsc/typechecker/Typers$Typer;)Lscala/reflect/internal/Trees$Tree;
// parameter final $this
// parameter final tree
// parameter final byName
// parameter final cnt$1
// parameter final defs$1
// parameter final unit$1
// parameter final typer$1
L0
LINENUMBER 64 L0
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
INVOKEVIRTUAL scala/tools/nsc/Global.treeInfo ()Lscala/tools/nsc/ast/Trees$treeInfo$;
ALOAD 1
INVOKEVIRTUAL scala/tools/nsc/ast/Trees$treeInfo$.isExprSafeToInline (Lscala/reflect/internal/Trees$Tree;)Z
IFEQ L1
ALOAD 1
ARETURN
L1
LINENUMBER 66 L1
FRAME SAME
ALOAD 0
ALOAD 3
ALOAD 5
INVOKESTATIC scala/tools/nsc/typechecker/EtaExpansion$class.freshName$1 (Lscala/tools/nsc/typechecker/Analyzer;Lscala/runtime/IntRef;Lscala/tools/nsc/CompilationUnits$CompilationUnit;)Lscala/reflect/internal/Names$TermName;
L2
ASTORE 7
L3
LINENUMBER 68 L3
ALOAD 4
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
ALOAD 1
INVOKEVIRTUAL scala/reflect/internal/Trees$Tree.pos ()Lscala/reflect/internal/util/Position;
L4
LINENUMBER 69 L4
ILOAD 2
IFEQ L5
L6
LINENUMBER 70 L6
ALOAD 6
NEW scala/reflect/internal/Trees$Function
DUP
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
GETSTATIC scala/collection/immutable/Nil$.MODULE$ : Lscala/collection/immutable/Nil$;
ALOAD 1
INVOKESPECIAL scala/reflect/internal/Trees$Function.<init> (Lscala/reflect/internal/SymbolTable;Lscala/collection/immutable/List;Lscala/reflect/internal/Trees$Tree;)V
INVOKEVIRTUAL scala/tools/nsc/typechecker/Typers$Typer.typed (Lscala/reflect/internal/Trees$Tree;)Lscala/reflect/internal/Trees$Tree;
L7
ASTORE 9
L8
LINENUMBER 71 L8
NEW scala/reflect/internal/Trees$ChangeOwnerTraverser
DUP
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
ALOAD 6
INVOKEVIRTUAL scala/tools/nsc/typechecker/Typers$Typer.context ()Lscala/tools/nsc/typechecker/Contexts$Context;
INVOKEVIRTUAL scala/tools/nsc/typechecker/Contexts$Context.owner ()Lscala/reflect/internal/Symbols$Symbol;
ALOAD 9
INVOKEVIRTUAL scala/reflect/internal/Trees$Tree.symbol ()Lscala/reflect/internal/Symbols$Symbol;
INVOKESPECIAL scala/reflect/internal/Trees$ChangeOwnerTraverser.<init> (Lscala/reflect/internal/SymbolTable;Lscala/reflect/internal/Symbols$Symbol;Lscala/reflect/internal/Symbols$Symbol;)V
ALOAD 1
INVOKEVIRTUAL scala/reflect/internal/Trees$ChangeOwnerTraverser.traverse (Lscala/reflect/internal/Trees$Tree;)V
L9
LINENUMBER 72 L9
ALOAD 9
L10
GOTO L11
L5
LINENUMBER 73 L5
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree I scala/runtime/IntRef scala/collection/mutable/ListBuffer scala/tools/nsc/CompilationUnits$CompilationUnit scala/tools/nsc/typechecker/Typers$Typer scala/reflect/internal/Names$TermName] [scala/collection/mutable/ListBuffer scala/tools/nsc/Global scala/reflect/internal/util/Position]
ALOAD 1
L11
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree I scala/runtime/IntRef scala/collection/mutable/ListBuffer scala/tools/nsc/CompilationUnits$CompilationUnit scala/tools/nsc/typechecker/Typers$Typer scala/reflect/internal/Names$TermName] [scala/collection/mutable/ListBuffer scala/tools/nsc/Global scala/reflect/internal/util/Position scala/reflect/internal/Trees$Tree]
ASTORE 8
L12
LINENUMBER 74 L12
NEW scala/reflect/internal/Trees$ValDef
DUP
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
LDC 2097152
INVOKESTATIC scala/runtime/BoxesRunTime.boxToLong (J)Ljava/lang/Long;
INVOKEVIRTUAL scala/tools/nsc/Global.Modifiers (Ljava/lang/Object;)Lscala/reflect/api/Trees$ModifiersApi;
CHECKCAST scala/reflect/internal/Trees$Modifiers
ALOAD 7
INVOKEVIRTUAL scala/reflect/internal/Names$Name.toTermName ()Lscala/reflect/internal/Names$TermName;
NEW scala/reflect/internal/Trees$TypeTree
DUP
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
INVOKESPECIAL scala/reflect/internal/Trees$TypeTree.<init> (Lscala/reflect/internal/SymbolTable;)V
ALOAD 8
INVOKESPECIAL scala/reflect/internal/Trees$ValDef.<init> (Lscala/reflect/internal/SymbolTable;Lscala/reflect/internal/Trees$Modifiers;Lscala/reflect/internal/Names$TermName;Lscala/reflect/internal/Trees$Tree;Lscala/reflect/internal/Trees$Tree;)V
L13
INVOKEVIRTUAL scala/tools/nsc/Global.atPos (Lscala/reflect/internal/util/Position;Lscala/reflect/internal/Trees$Tree;)Lscala/reflect/internal/Trees$Tree;
INVOKEVIRTUAL scala/collection/mutable/ListBuffer.$plus$eq (Ljava/lang/Object;)Lscala/collection/mutable/ListBuffer;
POP
L14
LINENUMBER 76 L14
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
ALOAD 1
INVOKEVIRTUAL scala/reflect/internal/Trees$Tree.pos ()Lscala/reflect/internal/util/Position;
INVOKEVIRTUAL scala/reflect/internal/util/Position.focus ()Lscala/reflect/internal/util/Position;
L15
LINENUMBER 77 L15
ILOAD 2
IFEQ L16
NEW scala/reflect/internal/Trees$Apply
DUP
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
NEW scala/reflect/internal/Trees$Ident
DUP
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
ALOAD 7
INVOKESPECIAL scala/reflect/internal/Trees$Ident.<init> (Lscala/reflect/internal/SymbolTable;Lscala/reflect/internal/Names$Name;)V
GETSTATIC scala/collection/immutable/Nil$.MODULE$ : Lscala/collection/immutable/Nil$;
INVOKESPECIAL scala/reflect/internal/Trees$Apply.<init> (Lscala/reflect/internal/SymbolTable;Lscala/reflect/internal/Trees$Tree;Lscala/collection/immutable/List;)V
GOTO L17
L16
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree I scala/runtime/IntRef scala/collection/mutable/ListBuffer scala/tools/nsc/CompilationUnits$CompilationUnit scala/tools/nsc/typechecker/Typers$Typer scala/reflect/internal/Names$TermName scala/reflect/internal/Trees$Tree] [scala/tools/nsc/Global scala/reflect/internal/util/Position]
NEW scala/reflect/internal/Trees$Ident
DUP
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
ALOAD 7
INVOKESPECIAL scala/reflect/internal/Trees$Ident.<init> (Lscala/reflect/internal/SymbolTable;Lscala/reflect/internal/Names$Name;)V
L17
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree I scala/runtime/IntRef scala/collection/mutable/ListBuffer scala/tools/nsc/CompilationUnits$CompilationUnit scala/tools/nsc/typechecker/Typers$Typer scala/reflect/internal/Names$TermName scala/reflect/internal/Trees$Tree] [scala/tools/nsc/Global scala/reflect/internal/util/Position scala/reflect/internal/Trees$Tree]
INVOKEVIRTUAL scala/tools/nsc/Global.atPos (Lscala/reflect/internal/util/Position;Lscala/reflect/internal/Trees$Tree;)Lscala/reflect/internal/Trees$Tree;
L18
ARETURN
L19
LOCALVARIABLE res Lscala/reflect/internal/Trees$Tree; L7 L10 9
LOCALVARIABLE rhs Lscala/reflect/internal/Trees$Tree; L11 L13 8
LOCALVARIABLE vname Lscala/reflect/internal/Names$Name; L2 L18 7
LOCALVARIABLE $this Lscala/tools/nsc/typechecker/Analyzer; L0 L19 0
LOCALVARIABLE tree Lscala/reflect/internal/Trees$Tree; L0 L19 1
LOCALVARIABLE byName Z L0 L19 2
LOCALVARIABLE cnt$1 Lscala/runtime/IntRef; L0 L19 3
LOCALVARIABLE defs$1 Lscala/collection/mutable/ListBuffer; L0 L19 4
LOCALVARIABLE unit$1 Lscala/tools/nsc/CompilationUnits$CompilationUnit; L0 L19 5
LOCALVARIABLE typer$1 Lscala/tools/nsc/typechecker/Typers$Typer; L0 L19 6
MAXSTACK = 11
MAXLOCALS = 10
// access flags 0x1019
public final static synthetic scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$2(Lscala/tools/nsc/typechecker/Analyzer;Lscala/reflect/internal/Symbols$Symbol;)Z
// parameter final $this
// parameter final p
L0
LINENUMBER 92 L0
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
INVOKEVIRTUAL scala/tools/nsc/Global.definitions ()Lscala/reflect/internal/Definitions$definitions$;
ALOAD 1
INVOKEVIRTUAL scala/reflect/internal/Symbols$Symbol.tpe ()Lscala/reflect/internal/Types$Type;
INVOKEVIRTUAL scala/reflect/internal/Definitions$definitions$.isByNameParamType (Lscala/reflect/internal/Types$Type;)Z
IRETURN
L1
LOCALVARIABLE $this Lscala/tools/nsc/typechecker/Analyzer; L0 L1 0
LOCALVARIABLE p Lscala/reflect/internal/Symbols$Symbol; L0 L1 1
MAXSTACK = 2
MAXLOCALS = 2
// access flags 0x1019
public final static synthetic scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$4(Lscala/tools/nsc/typechecker/Analyzer;)Z
// parameter final $this
L0
LINENUMBER 95 L0
ICONST_0
IRETURN
L1
LOCALVARIABLE $this Lscala/tools/nsc/typechecker/Analyzer; L0 L1 0
MAXSTACK = 1
MAXLOCALS = 1
// access flags 0x1019
public final static synthetic scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$3(Lscala/tools/nsc/typechecker/Analyzer;Lscala/runtime/IntRef;Lscala/collection/mutable/ListBuffer;Lscala/Function1;Lscala/tools/nsc/CompilationUnits$CompilationUnit;Lscala/tools/nsc/typechecker/Typers$Typer;Lscala/reflect/internal/Trees$Tree;I)Lscala/reflect/internal/Trees$Tree;
// parameter final $this
// parameter final cnt$1
// parameter final defs$1
// parameter final byName$1
// parameter final unit$1
// parameter final typer$1
// parameter final arg
// parameter final i
L0
LINENUMBER 95 L0
ALOAD 0
ALOAD 6
ALOAD 3
ILOAD 7
INVOKESTATIC scala/runtime/BoxesRunTime.boxToInteger (I)Ljava/lang/Integer;
INVOKEINTERFACE scala/Function1.apply (Ljava/lang/Object;)Ljava/lang/Object;
CHECKCAST scala/Option
DUP
IFNONNULL L1
ACONST_NULL
ATHROW
L1
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/runtime/IntRef scala/collection/mutable/ListBuffer scala/Function1 scala/tools/nsc/CompilationUnits$CompilationUnit scala/tools/nsc/typechecker/Typers$Typer scala/reflect/internal/Trees$Tree I] [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/Option]
ASTORE 8
L2
ALOAD 8
INVOKEVIRTUAL scala/Option.isEmpty ()Z
IFEQ L3
ALOAD 0
INVOKESTATIC scala/tools/nsc/typechecker/EtaExpansion$class.scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$4 (Lscala/tools/nsc/typechecker/Analyzer;)Z
INVOKESTATIC scala/runtime/BoxesRunTime.boxToBoolean (Z)Ljava/lang/Boolean;
ASTORE 9
GOTO L4
L3
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/runtime/IntRef scala/collection/mutable/ListBuffer scala/Function1 scala/tools/nsc/CompilationUnits$CompilationUnit scala/tools/nsc/typechecker/Typers$Typer scala/reflect/internal/Trees$Tree I scala/Option] [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree]
ALOAD 8
INVOKEVIRTUAL scala/Option.get ()Ljava/lang/Object;
ASTORE 9
L4
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/runtime/IntRef scala/collection/mutable/ListBuffer scala/Function1 scala/tools/nsc/CompilationUnits$CompilationUnit scala/tools/nsc/typechecker/Typers$Typer scala/reflect/internal/Trees$Tree I scala/Option java/lang/Object] [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree]
ALOAD 9
INVOKESTATIC scala/runtime/BoxesRunTime.unboxToBoolean (Ljava/lang/Object;)Z
ALOAD 1
ALOAD 2
ALOAD 4
ALOAD 5
INVOKESTATIC scala/tools/nsc/typechecker/EtaExpansion$class.liftout$1 (Lscala/tools/nsc/typechecker/Analyzer;Lscala/reflect/internal/Trees$Tree;ZLscala/runtime/IntRef;Lscala/collection/mutable/ListBuffer;Lscala/tools/nsc/CompilationUnits$CompilationUnit;Lscala/tools/nsc/typechecker/Typers$Typer;)Lscala/reflect/internal/Trees$Tree;
ARETURN
L5
LOCALVARIABLE $this Lscala/tools/nsc/typechecker/Analyzer; L0 L5 0
LOCALVARIABLE cnt$1 Lscala/runtime/IntRef; L0 L5 1
LOCALVARIABLE defs$1 Lscala/collection/mutable/ListBuffer; L0 L5 2
LOCALVARIABLE byName$1 Lscala/Function1; L0 L5 3
LOCALVARIABLE unit$1 Lscala/tools/nsc/CompilationUnits$CompilationUnit; L0 L5 4
LOCALVARIABLE typer$1 Lscala/tools/nsc/typechecker/Typers$Typer; L0 L5 5
LOCALVARIABLE arg Lscala/reflect/internal/Trees$Tree; L0 L5 6
LOCALVARIABLE i I L0 L5 7
LOCALVARIABLE getOrElse_this Lscala/Option; L2 L4 8
MAXSTACK = 7
MAXLOCALS = 10
// access flags 0x1A
private final static liftoutPrefix$1(Lscala/tools/nsc/typechecker/Analyzer;Lscala/reflect/internal/Trees$Tree;Lscala/runtime/IntRef;Lscala/collection/mutable/ListBuffer;Lscala/tools/nsc/CompilationUnits$CompilationUnit;Lscala/tools/nsc/typechecker/Typers$Typer;)Lscala/reflect/internal/Trees$Tree;
// parameter final $this
// parameter final tree
// parameter final cnt$1
// parameter final defs$1
// parameter final unit$1
// parameter final typer$1
L0
LINENUMBER 88 L0
ALOAD 1
INSTANCEOF scala/reflect/internal/Trees$Block
IFEQ L1
ALOAD 1
CHECKCAST scala/reflect/internal/Trees$Block
ASTORE 7
ALOAD 7
INVOKEVIRTUAL scala/reflect/internal/Trees$Block.stats ()Lscala/collection/immutable/List;
L2
ASTORE 8
ALOAD 7
INVOKEVIRTUAL scala/reflect/internal/Trees$Block.expr ()Lscala/reflect/internal/Trees$Tree;
L3
ASTORE 9
L4
LINENUMBER 89 L4
ALOAD 3
ALOAD 8
INVOKEVIRTUAL scala/collection/mutable/ListBuffer.$plus$plus$eq (Lscala/collection/TraversableOnce;)Lscala/collection/mutable/ListBuffer;
POP
L5
LINENUMBER 90 L5
ALOAD 0
ALOAD 9
ALOAD 2
ALOAD 3
ALOAD 4
ALOAD 5
INVOKESTATIC scala/tools/nsc/typechecker/EtaExpansion$class.liftoutPrefix$1 (Lscala/tools/nsc/typechecker/Analyzer;Lscala/reflect/internal/Trees$Tree;Lscala/runtime/IntRef;Lscala/collection/mutable/ListBuffer;Lscala/tools/nsc/CompilationUnits$CompilationUnit;Lscala/tools/nsc/typechecker/Typers$Typer;)Lscala/reflect/internal/Trees$Tree;
ASTORE 6
GOTO L6
L1
LINENUMBER 91 L1
FRAME SAME
ALOAD 1
INSTANCEOF scala/reflect/internal/Trees$Apply
IFEQ L7
ALOAD 1
CHECKCAST scala/reflect/internal/Trees$Apply
ASTORE 10
ALOAD 10
INVOKEVIRTUAL scala/reflect/internal/Trees$Apply.fun ()Lscala/reflect/internal/Trees$Tree;
L8
ASTORE 11
ALOAD 10
INVOKEVIRTUAL scala/reflect/internal/Trees$Apply.args ()Lscala/collection/immutable/List;
L9
ASTORE 12
L10
LINENUMBER 92 L10
ALOAD 11
INVOKEVIRTUAL scala/reflect/internal/Trees$Tree.tpe ()Lscala/reflect/internal/Types$Type;
INVOKEVIRTUAL scala/reflect/internal/Types$Type.params ()Lscala/collection/immutable/List;
ALOAD 0
INVOKEDYNAMIC apply(Lscala/tools/nsc/typechecker/Analyzer;)Lscala/runtime/java8/JFunction1; [
// handle kind 0x6 : INVOKESTATIC
java/lang/invoke/LambdaMetafactory.altMetafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
// arguments:
(Ljava/lang/Object;)Ljava/lang/Object;,
// handle kind 0x6 : INVOKESTATIC
scala/tools/nsc/typechecker/EtaExpansion$class.scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$2$adapted(Lscala/tools/nsc/typechecker/Analyzer;Lscala/reflect/internal/Symbols$Symbol;)Ljava/lang/Object;,
(Lscala/reflect/internal/Symbols$Symbol;)Ljava/lang/Object;,
3,
1,
Lscala/Serializable;.class,
0
]
GETSTATIC scala/collection/immutable/List$.MODULE$ : Lscala/collection/immutable/List$;
INVOKEVIRTUAL scala/collection/immutable/List$.canBuildFrom ()Lscala/collection/generic/CanBuildFrom;
ASTORE 21
ASTORE 20
DUP
IFNONNULL L11
ACONST_NULL
ATHROW
L11
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/runtime/IntRef scala/collection/mutable/ListBuffer scala/tools/nsc/CompilationUnits$CompilationUnit scala/tools/nsc/typechecker/Typers$Typer T T T T scala/reflect/internal/Trees$Apply scala/reflect/internal/Trees$Tree scala/collection/immutable/List T T T T T T T scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom] [scala/collection/immutable/List]
ASTORE 19
L12
ALOAD 21
GETSTATIC scala/collection/immutable/List$.MODULE$ : Lscala/collection/immutable/List$;
INVOKEVIRTUAL scala/collection/immutable/List$.ReusableCBF ()Lscala/collection/generic/GenTraversableFactory$GenericCanBuildFrom;
IF_ACMPNE L13
ALOAD 19
GETSTATIC scala/collection/immutable/Nil$.MODULE$ : Lscala/collection/immutable/Nil$;
IF_ACMPNE L14
GETSTATIC scala/collection/immutable/Nil$.MODULE$ : Lscala/collection/immutable/Nil$;
ASTORE 26
GOTO L15
L14
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/runtime/IntRef scala/collection/mutable/ListBuffer scala/tools/nsc/CompilationUnits$CompilationUnit scala/tools/nsc/typechecker/Typers$Typer T T T T scala/reflect/internal/Trees$Apply scala/reflect/internal/Trees$Tree scala/collection/immutable/List T T T T T T scala/collection/immutable/List scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom] []
NEW scala/collection/immutable/$colon$colon
DUP
ALOAD 19
INVOKEVIRTUAL scala/collection/immutable/List.head ()Ljava/lang/Object;
CHECKCAST scala/reflect/internal/Symbols$Symbol
ASTORE 31
L16
LINENUMBER 92 L16
ALOAD 0
ALOAD 31
INVOKESTATIC scala/tools/nsc/typechecker/EtaExpansion$class.scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$2 (Lscala/tools/nsc/typechecker/Analyzer;Lscala/reflect/internal/Symbols$Symbol;)Z
INVOKESTATIC scala/runtime/BoxesRunTime.boxToBoolean (Z)Ljava/lang/Boolean;
GETSTATIC scala/collection/immutable/Nil$.MODULE$ : Lscala/collection/immutable/Nil$;
INVOKESPECIAL scala/collection/immutable/$colon$colon.<init> (Ljava/lang/Object;Lscala/collection/immutable/List;)V
L17
ASTORE 22
ALOAD 22
L18
ASTORE 23
ALOAD 19
INVOKEVIRTUAL scala/collection/immutable/List.tail ()Ljava/lang/Object;
CHECKCAST scala/collection/immutable/List
L19
ASTORE 24
L20
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/runtime/IntRef scala/collection/mutable/ListBuffer scala/tools/nsc/CompilationUnits$CompilationUnit scala/tools/nsc/typechecker/Typers$Typer T T T T scala/reflect/internal/Trees$Apply scala/reflect/internal/Trees$Tree scala/collection/immutable/List T T T T T T scala/collection/immutable/List scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom scala/collection/immutable/$colon$colon scala/collection/immutable/$colon$colon scala/collection/immutable/List T T T T T T scala/reflect/internal/Symbols$Symbol] []
ALOAD 24
GETSTATIC scala/collection/immutable/Nil$.MODULE$ : Lscala/collection/immutable/Nil$;
IF_ACMPEQ L21
NEW scala/collection/immutable/$colon$colon
DUP
ALOAD 24
INVOKEVIRTUAL scala/collection/immutable/List.head ()Ljava/lang/Object;
CHECKCAST scala/reflect/internal/Symbols$Symbol
ASTORE 31
L22
LINENUMBER 92 L22
ALOAD 0
ALOAD 31
INVOKESTATIC scala/tools/nsc/typechecker/EtaExpansion$class.scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$2 (Lscala/tools/nsc/typechecker/Analyzer;Lscala/reflect/internal/Symbols$Symbol;)Z
INVOKESTATIC scala/runtime/BoxesRunTime.boxToBoolean (Z)Ljava/lang/Boolean;
GETSTATIC scala/collection/immutable/Nil$.MODULE$ : Lscala/collection/immutable/Nil$;
INVOKESPECIAL scala/collection/immutable/$colon$colon.<init> (Ljava/lang/Object;Lscala/collection/immutable/List;)V
L23
ASTORE 25
ALOAD 23
ALOAD 25
INVOKEVIRTUAL scala/collection/immutable/$colon$colon.tl_$eq (Lscala/collection/immutable/List;)V
ALOAD 25
ASTORE 23
ALOAD 24
INVOKEVIRTUAL scala/collection/immutable/List.tail ()Ljava/lang/Object;
CHECKCAST scala/collection/immutable/List
ASTORE 24
L24
GOTO L20
L21
FRAME SAME
ALOAD 22
L25
ASTORE 26
GOTO L15
L13
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/runtime/IntRef scala/collection/mutable/ListBuffer scala/tools/nsc/CompilationUnits$CompilationUnit scala/tools/nsc/typechecker/Typers$Typer T T T T scala/reflect/internal/Trees$Apply scala/reflect/internal/Trees$Tree scala/collection/immutable/List T T T T T T scala/collection/immutable/List scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom] []
ALOAD 19
ALOAD 20
ALOAD 21
INVOKESTATIC scala/collection/TraversableLike$class.map (Lscala/collection/TraversableLike;Lscala/Function1;Lscala/collection/generic/CanBuildFrom;)Ljava/lang/Object;
ASTORE 26
L15
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/runtime/IntRef scala/collection/mutable/ListBuffer scala/tools/nsc/CompilationUnits$CompilationUnit scala/tools/nsc/typechecker/Typers$Typer T T T T scala/reflect/internal/Trees$Apply scala/reflect/internal/Trees$Tree scala/collection/immutable/List T T T T T T scala/collection/immutable/List scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom T T T T java/lang/Object] []
ALOAD 26
CHECKCAST scala/PartialFunction
INVOKEINTERFACE scala/PartialFunction.lift ()Lscala/Function1;
L26
ASTORE 13
L27
LINENUMBER 93 L27
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
IFNONNULL L28
ACONST_NULL
ATHROW
L28
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/runtime/IntRef scala/collection/mutable/ListBuffer scala/tools/nsc/CompilationUnits$CompilationUnit scala/tools/nsc/typechecker/Typers$Typer T T T T scala/reflect/internal/Trees$Apply scala/reflect/internal/Trees$Tree scala/collection/immutable/List scala/Function1 T T T T T scala/collection/immutable/List scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom T T T T java/lang/Object] []
NEW scala/collection/mutable/ListBuffer
DUP
INVOKESPECIAL scala/collection/mutable/ListBuffer.<init> ()V
L29
ASTORE 27
ICONST_0
L30
ISTORE 28
ALOAD 12
L31
ASTORE 29
L32
FRAME APPEND [scala/collection/mutable/ListBuffer I scala/collection/immutable/List]
ALOAD 29
INVOKEVIRTUAL scala/collection/immutable/List.isEmpty ()Z
IFNE L33
ALOAD 27
ALOAD 29
INVOKEVIRTUAL scala/collection/immutable/List.head ()Ljava/lang/Object;
CHECKCAST scala/reflect/internal/Trees$Tree
ASTORE 32
L34
LINENUMBER 95 L34
ALOAD 0
ALOAD 32
ALOAD 13
ILOAD 28
INVOKESTATIC scala/runtime/BoxesRunTime.boxToInteger (I)Ljava/lang/Integer;
INVOKEINTERFACE scala/Function1.apply (Ljava/lang/Object;)Ljava/lang/Object;
CHECKCAST scala/Option
DUP
IFNONNULL L35
ACONST_NULL
ATHROW
L35
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/runtime/IntRef scala/collection/mutable/ListBuffer scala/tools/nsc/CompilationUnits$CompilationUnit scala/tools/nsc/typechecker/Typers$Typer T T T T scala/reflect/internal/Trees$Apply scala/reflect/internal/Trees$Tree scala/collection/immutable/List scala/Function1 T T T T T scala/collection/immutable/List scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom T T T T java/lang/Object scala/collection/mutable/ListBuffer I scala/collection/immutable/List T T scala/reflect/internal/Trees$Tree] [scala/collection/mutable/ListBuffer scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/Option]
ASTORE 33
L36
ALOAD 33
INVOKEVIRTUAL scala/Option.isEmpty ()Z
IFEQ L37
ALOAD 0
INVOKESTATIC scala/tools/nsc/typechecker/EtaExpansion$class.scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$4 (Lscala/tools/nsc/typechecker/Analyzer;)Z
INVOKESTATIC scala/runtime/BoxesRunTime.boxToBoolean (Z)Ljava/lang/Boolean;
ASTORE 34
GOTO L38
L37
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/runtime/IntRef scala/collection/mutable/ListBuffer scala/tools/nsc/CompilationUnits$CompilationUnit scala/tools/nsc/typechecker/Typers$Typer T T T T scala/reflect/internal/Trees$Apply scala/reflect/internal/Trees$Tree scala/collection/immutable/List scala/Function1 T T T T T scala/collection/immutable/List scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom T T T T java/lang/Object scala/collection/mutable/ListBuffer I scala/collection/immutable/List T T scala/reflect/internal/Trees$Tree scala/Option] [scala/collection/mutable/ListBuffer scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree]
ALOAD 33
INVOKEVIRTUAL scala/Option.get ()Ljava/lang/Object;
ASTORE 34
L38
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/runtime/IntRef scala/collection/mutable/ListBuffer scala/tools/nsc/CompilationUnits$CompilationUnit scala/tools/nsc/typechecker/Typers$Typer T T T T scala/reflect/internal/Trees$Apply scala/reflect/internal/Trees$Tree scala/collection/immutable/List scala/Function1 T T T T T scala/collection/immutable/List scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom T T T T java/lang/Object scala/collection/mutable/ListBuffer I scala/collection/immutable/List T T scala/reflect/internal/Trees$Tree scala/Option java/lang/Object] [scala/collection/mutable/ListBuffer scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree]
ALOAD 34
INVOKESTATIC scala/runtime/BoxesRunTime.unboxToBoolean (Ljava/lang/Object;)Z
ALOAD 2
ALOAD 3
ALOAD 4
ALOAD 5
INVOKESTATIC scala/tools/nsc/typechecker/EtaExpansion$class.liftout$1 (Lscala/tools/nsc/typechecker/Analyzer;Lscala/reflect/internal/Trees$Tree;ZLscala/runtime/IntRef;Lscala/collection/mutable/ListBuffer;Lscala/tools/nsc/CompilationUnits$CompilationUnit;Lscala/tools/nsc/typechecker/Typers$Typer;)Lscala/reflect/internal/Trees$Tree;
INVOKEVIRTUAL scala/collection/mutable/ListBuffer.$plus$eq (Ljava/lang/Object;)Lscala/collection/mutable/ListBuffer;
POP
ALOAD 29
INVOKEVIRTUAL scala/collection/immutable/List.tail ()Ljava/lang/Object;
CHECKCAST scala/collection/immutable/List
ASTORE 29
ILOAD 28
ICONST_1
IADD
ISTORE 28
GOTO L32
L33
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/runtime/IntRef scala/collection/mutable/ListBuffer scala/tools/nsc/CompilationUnits$CompilationUnit scala/tools/nsc/typechecker/Typers$Typer T T T T scala/reflect/internal/Trees$Apply scala/reflect/internal/Trees$Tree scala/collection/immutable/List scala/Function1 T T T T T scala/collection/immutable/List scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom T T T T java/lang/Object scala/collection/mutable/ListBuffer I scala/collection/immutable/List] []
ALOAD 27
INVOKEVIRTUAL scala/collection/mutable/ListBuffer.toList ()Lscala/collection/immutable/List;
L39
ASTORE 30
L40
LINENUMBER 97 L40
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
INVOKEVIRTUAL scala/tools/nsc/Global.treeCopy ()Lscala/reflect/api/Trees$TreeCopierOps;
ALOAD 1
ALOAD 0
ALOAD 11
ALOAD 2
ALOAD 3
ALOAD 4
ALOAD 5
INVOKESTATIC scala/tools/nsc/typechecker/EtaExpansion$class.liftoutPrefix$1 (Lscala/tools/nsc/typechecker/Analyzer;Lscala/reflect/internal/Trees$Tree;Lscala/runtime/IntRef;Lscala/collection/mutable/ListBuffer;Lscala/tools/nsc/CompilationUnits$CompilationUnit;Lscala/tools/nsc/typechecker/Typers$Typer;)Lscala/reflect/internal/Trees$Tree;
ALOAD 30
INVOKEVIRTUAL scala/reflect/api/Trees$TreeCopierOps.Apply (Lscala/reflect/api/Trees$TreeApi;Lscala/reflect/api/Trees$TreeApi;Lscala/collection/immutable/List;)Lscala/reflect/api/Trees$ApplyApi;
CHECKCAST scala/reflect/internal/Trees$Tree
INVOKEVIRTUAL scala/reflect/internal/Trees$Tree.clearType ()Lscala/reflect/internal/Trees$Tree;
L41
ASTORE 6
GOTO L6
L7
LINENUMBER 98 L7
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/runtime/IntRef scala/collection/mutable/ListBuffer scala/tools/nsc/CompilationUnits$CompilationUnit scala/tools/nsc/typechecker/Typers$Typer] []
ALOAD 1
INSTANCEOF scala/reflect/internal/Trees$TypeApply
IFEQ L42
ALOAD 1
CHECKCAST scala/reflect/internal/Trees$TypeApply
ASTORE 14
ALOAD 14
INVOKEVIRTUAL scala/reflect/internal/Trees$TypeApply.fun ()Lscala/reflect/internal/Trees$Tree;
L43
ASTORE 15
ALOAD 14
INVOKEVIRTUAL scala/reflect/internal/Trees$TypeApply.args ()Lscala/collection/immutable/List;
L44
ASTORE 16
L45
LINENUMBER 99 L45
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
INVOKEVIRTUAL scala/tools/nsc/Global.treeCopy ()Lscala/reflect/api/Trees$TreeCopierOps;
ALOAD 1
ALOAD 0
ALOAD 15
ALOAD 2
ALOAD 3
ALOAD 4
ALOAD 5
INVOKESTATIC scala/tools/nsc/typechecker/EtaExpansion$class.liftoutPrefix$1 (Lscala/tools/nsc/typechecker/Analyzer;Lscala/reflect/internal/Trees$Tree;Lscala/runtime/IntRef;Lscala/collection/mutable/ListBuffer;Lscala/tools/nsc/CompilationUnits$CompilationUnit;Lscala/tools/nsc/typechecker/Typers$Typer;)Lscala/reflect/internal/Trees$Tree;
ALOAD 16
INVOKEVIRTUAL scala/reflect/api/Trees$TreeCopierOps.TypeApply (Lscala/reflect/api/Trees$TreeApi;Lscala/reflect/api/Trees$TreeApi;Lscala/collection/immutable/List;)Lscala/reflect/api/Trees$TypeApplyApi;
CHECKCAST scala/reflect/internal/Trees$Tree
INVOKEVIRTUAL scala/reflect/internal/Trees$Tree.clearType ()Lscala/reflect/internal/Trees$Tree;
ASTORE 6
GOTO L6
L42
LINENUMBER 100 L42
FRAME SAME
ALOAD 1
INSTANCEOF scala/reflect/internal/Trees$Select
IFEQ L46
ALOAD 1
CHECKCAST scala/reflect/internal/Trees$Select
INVOKEVIRTUAL scala/reflect/internal/Trees$Select.qualifier ()Lscala/reflect/internal/Trees$Tree;
L47
ASTORE 17
L48
LINENUMBER 101 L48
ALOAD 1
INVOKEVIRTUAL scala/reflect/internal/Trees$Tree.symbol ()Lscala/reflect/internal/Symbols$Symbol;
INVOKEVIRTUAL scala/reflect/internal/Symbols$Symbol.name ()Lscala/reflect/internal/Names$Name;
L49
ASTORE 18
L50
LINENUMBER 102 L50
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
INVOKEVIRTUAL scala/tools/nsc/Global.treeCopy ()Lscala/reflect/api/Trees$TreeCopierOps;
ALOAD 1
ALOAD 0
ALOAD 17
ICONST_0
ALOAD 2
ALOAD 3
ALOAD 4
ALOAD 5
INVOKESTATIC scala/tools/nsc/typechecker/EtaExpansion$class.liftout$1 (Lscala/tools/nsc/typechecker/Analyzer;Lscala/reflect/internal/Trees$Tree;ZLscala/runtime/IntRef;Lscala/collection/mutable/ListBuffer;Lscala/tools/nsc/CompilationUnits$CompilationUnit;Lscala/tools/nsc/typechecker/Typers$Typer;)Lscala/reflect/internal/Trees$Tree;
ALOAD 18
INVOKEVIRTUAL scala/reflect/api/Trees$TreeCopierOps.Select (Lscala/reflect/api/Trees$TreeApi;Lscala/reflect/api/Trees$TreeApi;Lscala/reflect/api/Names$NameApi;)Lscala/reflect/api/Trees$SelectApi;
CHECKCAST scala/reflect/internal/Trees$Tree
INVOKEVIRTUAL scala/reflect/internal/Trees$Tree.clearType ()Lscala/reflect/internal/Trees$Tree;
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
INVOKEVIRTUAL scala/tools/nsc/Global.NoSymbol ()Lscala/reflect/internal/Symbols$NoSymbol;
INVOKEVIRTUAL scala/reflect/internal/Trees$Tree.setSymbol (Lscala/reflect/internal/Symbols$Symbol;)Lscala/reflect/internal/Trees$Tree;
L51
ASTORE 6
GOTO L6
L46
LINENUMBER 103 L46
FRAME SAME
ALOAD 1
INSTANCEOF scala/reflect/internal/Trees$Ident
IFEQ L52
L53
LINENUMBER 104 L53
ALOAD 1
ASTORE 6
GOTO L6
L52
LINENUMBER 103 L52
FRAME SAME
NEW scala/MatchError
DUP
ALOAD 1
INVOKESPECIAL scala/MatchError.<init> (Ljava/lang/Object;)V
ATHROW
L6
LINENUMBER 106 L6
FRAME APPEND [scala/reflect/internal/Trees$Tree]
ALOAD 6
ALOAD 1
IF_ACMPEQ L54
ALOAD 6
ALOAD 6
INVOKEVIRTUAL scala/reflect/internal/Trees$Tree.pos ()Lscala/reflect/internal/util/Position;
INVOKEVIRTUAL scala/reflect/internal/util/Position.makeTransparent ()Lscala/reflect/internal/util/Position;
INVOKEVIRTUAL scala/reflect/internal/Trees$Tree.setPos (Lscala/reflect/internal/util/Position;)Lscala/reflect/internal/StdAttachments$Attachable;
POP
L54
LINENUMBER 107 L54
FRAME SAME
ALOAD 6
ARETURN
L55
LOCALVARIABLE stats Lscala/collection/immutable/List; L2 L1 8
LOCALVARIABLE fun Lscala/reflect/internal/Trees$Tree; L3 L1 9
LOCALVARIABLE byName Lscala/Function1; L26 L41 13
LOCALVARIABLE fn Lscala/reflect/internal/Trees$Tree; L8 L7 11
LOCALVARIABLE args Lscala/collection/immutable/List; L9 L7 12
LOCALVARIABLE fn Lscala/reflect/internal/Trees$Tree; L43 L42 15
LOCALVARIABLE args Lscala/collection/immutable/List; L44 L42 16
LOCALVARIABLE name Lscala/reflect/internal/Names$Name; L49 L51 18
LOCALVARIABLE qual Lscala/reflect/internal/Trees$Tree; L47 L46 17
LOCALVARIABLE $this Lscala/tools/nsc/typechecker/Analyzer; L0 L55 0
LOCALVARIABLE tree Lscala/reflect/internal/Trees$Tree; L0 L55 1
LOCALVARIABLE cnt$1 Lscala/runtime/IntRef; L0 L55 2
LOCALVARIABLE defs$1 Lscala/collection/mutable/ListBuffer; L0 L55 3
LOCALVARIABLE unit$1 Lscala/tools/nsc/CompilationUnits$CompilationUnit; L0 L55 4
LOCALVARIABLE typer$1 Lscala/tools/nsc/typechecker/Typers$Typer; L0 L55 5
LOCALVARIABLE map_nx Lscala/collection/immutable/$colon$colon; L23 L24 25
LOCALVARIABLE map_h Lscala/collection/immutable/$colon$colon; L17 L25 22
LOCALVARIABLE map_t Lscala/collection/immutable/$colon$colon; L18 L25 23
LOCALVARIABLE map_rest Lscala/collection/immutable/List; L19 L25 24
LOCALVARIABLE map_this Lscala/collection/immutable/List; L12 L15 19
LOCALVARIABLE map_f Lscala/Function1; L12 L15 20
LOCALVARIABLE map_bf Lscala/collection/generic/CanBuildFrom; L12 L15 21
LOCALVARIABLE mapWithIndex_mapWithIndex_lb Lscala/collection/mutable/ListBuffer; L29 L39 27
LOCALVARIABLE mapWithIndex_mapWithIndex_index I L30 L39 28
LOCALVARIABLE mapWithIndex_mapWithIndex_ys Lscala/collection/immutable/List; L31 L39 29
LOCALVARIABLE scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$3$adapted_scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$3_getOrElse_this Lscala/Option; L36 L38 33
MAXSTACK = 9
MAXLOCALS = 35
// access flags 0x1019
public final static synthetic scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$5(Lscala/tools/nsc/typechecker/Analyzer;Lscala/reflect/internal/Symbols$Symbol;)Lscala/Tuple2;
// parameter final $this
// parameter final sym
L0
LINENUMBER 115 L0
ALOAD 1
INVOKEVIRTUAL scala/reflect/internal/Symbols$Symbol.tpe ()Lscala/reflect/internal/Types$Type;
L1
ASTORE 2
L2
LINENUMBER 116 L2
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
INVOKEVIRTUAL scala/tools/nsc/Global.definitions ()Lscala/reflect/internal/Definitions$definitions$;
ALOAD 2
INVOKEVIRTUAL scala/reflect/internal/Definitions$definitions$.isRepeatedParamType (Lscala/reflect/internal/Types$Type;)Z
L3
ISTORE 3
L4
LINENUMBER 118 L4
GETSTATIC scala/reflect/internal/settings/MutableSettings$.MODULE$ : Lscala/reflect/internal/settings/MutableSettings$;
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
INVOKEVIRTUAL scala/tools/nsc/Global.settings ()Lscala/tools/nsc/Settings;
INVOKEVIRTUAL scala/tools/nsc/Settings.etaExpandKeepsStar ()Lscala/tools/nsc/settings/MutableSettings$BooleanSetting;
ASTORE 6
IFNONNULL L5
ACONST_NULL
ATHROW
L5
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Symbols$Symbol scala/reflect/internal/Types$Type I T T scala/tools/nsc/settings/MutableSettings$BooleanSetting] []
ALOAD 6
INVOKEINTERFACE scala/reflect/internal/settings/MutableSettings$SettingValue.value ()Ljava/lang/Object;
INVOKESTATIC scala/runtime/BoxesRunTime.unboxToBoolean (Ljava/lang/Object;)Z
L6
IFEQ L7
ALOAD 2
GOTO L8
L7
FRAME SAME
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
INVOKEVIRTUAL scala/tools/nsc/Global.dropIllegalStarTypes ()Lscala/reflect/internal/tpe/TypeMaps$dropIllegalStarTypes$;
ALOAD 2
INVOKEVIRTUAL scala/reflect/internal/tpe/TypeMaps$dropIllegalStarTypes$.apply (Lscala/reflect/internal/Types$Type;)Lscala/reflect/internal/Types$Type;
L8
FRAME SAME1 scala/reflect/internal/Types$Type
ASTORE 4
L9
LINENUMBER 119 L9
NEW scala/reflect/internal/Trees$ValDef
DUP
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
LDC 2105344
INVOKESTATIC scala/runtime/BoxesRunTime.boxToLong (J)Ljava/lang/Long;
INVOKEVIRTUAL scala/tools/nsc/Global.Modifiers (Ljava/lang/Object;)Lscala/reflect/api/Trees$ModifiersApi;
CHECKCAST scala/reflect/internal/Trees$Modifiers
ALOAD 1
INVOKEVIRTUAL scala/reflect/internal/Symbols$Symbol.name ()Lscala/reflect/internal/Names$Name;
INVOKEVIRTUAL scala/reflect/internal/Names$Name.toTermName ()Lscala/reflect/internal/Names$TermName;
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
ALOAD 4
INVOKEVIRTUAL scala/tools/nsc/Global.TypeTree (Lscala/reflect/internal/Types$Type;)Lscala/reflect/internal/Trees$TypeTree;
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
INVOKEVIRTUAL scala/tools/nsc/Global.EmptyTree ()Lscala/reflect/internal/Trees$EmptyTree$;
INVOKESPECIAL scala/reflect/internal/Trees$ValDef.<init> (Lscala/reflect/internal/SymbolTable;Lscala/reflect/internal/Trees$Modifiers;Lscala/reflect/internal/Names$TermName;Lscala/reflect/internal/Trees$Tree;Lscala/reflect/internal/Trees$Tree;)V
L10
ASTORE 5
L11
LINENUMBER 120 L11
NEW scala/Tuple2
DUP
ALOAD 5
ILOAD 3
INVOKESTATIC scala/runtime/BoxesRunTime.boxToBoolean (Z)Ljava/lang/Boolean;
INVOKESPECIAL scala/Tuple2.<init> (Ljava/lang/Object;Ljava/lang/Object;)V
L12
ARETURN
L13
LOCALVARIABLE origTpe Lscala/reflect/internal/Types$Type; L1 L12 2
LOCALVARIABLE isRepeated Z L3 L12 3
LOCALVARIABLE droppedStarTpe Lscala/reflect/internal/Types$Type; L8 L12 4
LOCALVARIABLE valDef Lscala/reflect/internal/Trees$ValDef; L10 L12 5
LOCALVARIABLE $this Lscala/tools/nsc/typechecker/Analyzer; L0 L13 0
LOCALVARIABLE sym Lscala/reflect/internal/Symbols$Symbol; L0 L13 1
LOCALVARIABLE reflectSettingToBoolean_s Lscala/reflect/internal/settings/MutableSettings$SettingValue; L5 L6 6
MAXSTACK = 7
MAXLOCALS = 7
// access flags 0x1019
public final static synthetic scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$6(Lscala/tools/nsc/typechecker/Analyzer;Lscala/Tuple2;)Lscala/reflect/internal/Trees$Tree;
// parameter final $this
// parameter final x0$1
L0
LINENUMBER 123 L0
ALOAD 1
IFNULL L1
L2
LINENUMBER 124 L2
ALOAD 1
INVOKEVIRTUAL scala/Tuple2._1 ()Ljava/lang/Object;
CHECKCAST scala/reflect/internal/Trees$ValDef
L3
ASTORE 3
ALOAD 1
INVOKEVIRTUAL scala/Tuple2._2$mcZ$sp ()Z
L4
ISTORE 4
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
INVOKEVIRTUAL scala/tools/nsc/Global.gen ()Lscala/tools/nsc/Global$gen$;
NEW scala/reflect/internal/Trees$Ident
DUP
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
ALOAD 3
INVOKEVIRTUAL scala/reflect/internal/Trees$ValDef.name ()Lscala/reflect/internal/Names$TermName;
INVOKESPECIAL scala/reflect/internal/Trees$Ident.<init> (Lscala/reflect/internal/SymbolTable;Lscala/reflect/internal/Names$Name;)V
ILOAD 4
INVOKEVIRTUAL scala/tools/nsc/Global$gen$.paramToArg (Lscala/reflect/internal/Trees$Ident;Z)Lscala/reflect/internal/Trees$Tree;
ASTORE 2
GOTO L5
L1
LINENUMBER 123 L1
FRAME SAME
NEW scala/MatchError
DUP
ALOAD 1
INVOKESPECIAL scala/MatchError.<init> (Ljava/lang/Object;)V
ATHROW
L5
FRAME APPEND [scala/reflect/internal/Trees$Tree scala/reflect/internal/Trees$ValDef I]
ALOAD 2
ARETURN
L6
LOCALVARIABLE valDef Lscala/reflect/internal/Trees$ValDef; L3 L1 3
LOCALVARIABLE isRepeated Z L4 L1 4
LOCALVARIABLE $this Lscala/tools/nsc/typechecker/Analyzer; L0 L6 0
LOCALVARIABLE x0$1 Lscala/Tuple2; L0 L6 1
MAXSTACK = 5
MAXLOCALS = 5
// access flags 0x1019
public final static synthetic scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$7(Lscala/tools/nsc/typechecker/Analyzer;Lscala/Tuple2;)Lscala/reflect/internal/Trees$ValDef;
// parameter final $this
// parameter final x$1
L0
LINENUMBER 126 L0
ALOAD 1
INVOKEVIRTUAL scala/Tuple2._1 ()Ljava/lang/Object;
CHECKCAST scala/reflect/internal/Trees$ValDef
ARETURN
L1
LOCALVARIABLE $this Lscala/tools/nsc/typechecker/Analyzer; L0 L1 0
LOCALVARIABLE x$1 Lscala/Tuple2; L0 L1 1
MAXSTACK = 1
MAXLOCALS = 2
// access flags 0x1A
private final static expand$1(Lscala/tools/nsc/typechecker/Analyzer;Lscala/reflect/internal/Trees$Tree;Lscala/reflect/internal/Types$Type;)Lscala/reflect/internal/Trees$Tree;
// parameter final $this
// parameter final tree
// parameter final tpe
L0
LINENUMBER 112 L0
ALOAD 2
INSTANCEOF scala/reflect/internal/Types$MethodType
IFEQ L1
ALOAD 2
CHECKCAST scala/reflect/internal/Types$MethodType
ASTORE 4
ALOAD 4
INVOKEVIRTUAL scala/reflect/internal/Types$MethodType.params ()Lscala/collection/immutable/List;
L2
ASTORE 5
ALOAD 4
INVOKEVIRTUAL scala/reflect/internal/Types$MethodType.resultType ()Lscala/reflect/internal/Types$Type;
L3
ASTORE 6
ALOAD 4
INVOKEVIRTUAL scala/reflect/internal/Types$MethodType.isImplicit ()Z
IFNE L1
L4
LINENUMBER 113 L4
ALOAD 5
L5
LINENUMBER 114 L5
ALOAD 0
INVOKEDYNAMIC apply(Lscala/tools/nsc/typechecker/Analyzer;)Lscala/runtime/java8/JFunction1; [
// handle kind 0x6 : INVOKESTATIC
java/lang/invoke/LambdaMetafactory.altMetafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
// arguments:
(Ljava/lang/Object;)Ljava/lang/Object;,
// handle kind 0x6 : INVOKESTATIC
scala/tools/nsc/typechecker/EtaExpansion$class.scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$5(Lscala/tools/nsc/typechecker/Analyzer;Lscala/reflect/internal/Symbols$Symbol;)Lscala/Tuple2;,
(Lscala/reflect/internal/Symbols$Symbol;)Lscala/Tuple2;,
3,
1,
Lscala/Serializable;.class,
0
]
L6
LINENUMBER 113 L6
GETSTATIC scala/collection/immutable/List$.MODULE$ : Lscala/collection/immutable/List$;
INVOKEVIRTUAL scala/collection/immutable/List$.canBuildFrom ()Lscala/collection/generic/CanBuildFrom;
ASTORE 10
ASTORE 9
IFNONNULL L7
ACONST_NULL
ATHROW
L7
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/reflect/internal/Types$Type T scala/reflect/internal/Types$MethodType scala/collection/immutable/List scala/reflect/internal/Types$Type T T scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom] []
ALOAD 10
GETSTATIC scala/collection/immutable/List$.MODULE$ : Lscala/collection/immutable/List$;
INVOKEVIRTUAL scala/collection/immutable/List$.ReusableCBF ()Lscala/collection/generic/GenTraversableFactory$GenericCanBuildFrom;
IF_ACMPNE L8
ALOAD 5
GETSTATIC scala/collection/immutable/Nil$.MODULE$ : Lscala/collection/immutable/Nil$;
IF_ACMPNE L9
GETSTATIC scala/collection/immutable/Nil$.MODULE$ : Lscala/collection/immutable/Nil$;
ASTORE 15
GOTO L10
L9
FRAME SAME
NEW scala/collection/immutable/$colon$colon
DUP
ALOAD 5
INVOKEVIRTUAL scala/collection/immutable/List.head ()Ljava/lang/Object;
CHECKCAST scala/reflect/internal/Symbols$Symbol
ASTORE 30
ALOAD 0
ALOAD 30
INVOKESTATIC scala/tools/nsc/typechecker/EtaExpansion$class.scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$5 (Lscala/tools/nsc/typechecker/Analyzer;Lscala/reflect/internal/Symbols$Symbol;)Lscala/Tuple2;
GETSTATIC scala/collection/immutable/Nil$.MODULE$ : Lscala/collection/immutable/Nil$;
INVOKESPECIAL scala/collection/immutable/$colon$colon.<init> (Ljava/lang/Object;Lscala/collection/immutable/List;)V
L11
ASTORE 11
ALOAD 11
L12
ASTORE 12
ALOAD 5
INVOKEVIRTUAL scala/collection/immutable/List.tail ()Ljava/lang/Object;
CHECKCAST scala/collection/immutable/List
L13
ASTORE 13
L14
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/reflect/internal/Types$Type T scala/reflect/internal/Types$MethodType scala/collection/immutable/List scala/reflect/internal/Types$Type T T scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom scala/collection/immutable/$colon$colon scala/collection/immutable/$colon$colon scala/collection/immutable/List T T T T T T T T T T T T T T T T scala/reflect/internal/Symbols$Symbol] []
ALOAD 13
GETSTATIC scala/collection/immutable/Nil$.MODULE$ : Lscala/collection/immutable/Nil$;
IF_ACMPEQ L15
NEW scala/collection/immutable/$colon$colon
DUP
ALOAD 13
INVOKEVIRTUAL scala/collection/immutable/List.head ()Ljava/lang/Object;
CHECKCAST scala/reflect/internal/Symbols$Symbol
ASTORE 30
ALOAD 0
ALOAD 30
INVOKESTATIC scala/tools/nsc/typechecker/EtaExpansion$class.scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$5 (Lscala/tools/nsc/typechecker/Analyzer;Lscala/reflect/internal/Symbols$Symbol;)Lscala/Tuple2;
GETSTATIC scala/collection/immutable/Nil$.MODULE$ : Lscala/collection/immutable/Nil$;
INVOKESPECIAL scala/collection/immutable/$colon$colon.<init> (Ljava/lang/Object;Lscala/collection/immutable/List;)V
L16
ASTORE 14
ALOAD 12
ALOAD 14
INVOKEVIRTUAL scala/collection/immutable/$colon$colon.tl_$eq (Lscala/collection/immutable/List;)V
ALOAD 14
ASTORE 12
ALOAD 13
INVOKEVIRTUAL scala/collection/immutable/List.tail ()Ljava/lang/Object;
CHECKCAST scala/collection/immutable/List
ASTORE 13
L17
GOTO L14
L15
FRAME SAME
ALOAD 11
L18
ASTORE 15
GOTO L10
L8
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/reflect/internal/Types$Type T scala/reflect/internal/Types$MethodType scala/collection/immutable/List scala/reflect/internal/Types$Type T T scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom] []
ALOAD 5
ALOAD 9
ALOAD 10
INVOKESTATIC scala/collection/TraversableLike$class.map (Lscala/collection/TraversableLike;Lscala/Function1;Lscala/collection/generic/CanBuildFrom;)Ljava/lang/Object;
ASTORE 15
L10
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/reflect/internal/Types$Type T scala/reflect/internal/Types$MethodType scala/collection/immutable/List scala/reflect/internal/Types$Type T T scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom T T T T java/lang/Object] []
ALOAD 15
CHECKCAST scala/collection/immutable/List
L19
ASTORE 7
L20
LINENUMBER 122 L20
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
ALOAD 1
INVOKEVIRTUAL scala/reflect/internal/Trees$Tree.pos ()Lscala/reflect/internal/util/Position;
INVOKEVIRTUAL scala/reflect/internal/util/Position.makeTransparent ()Lscala/reflect/internal/util/Position;
L21
LINENUMBER 123 L21
ALOAD 7
ALOAD 0
INVOKEDYNAMIC apply(Lscala/tools/nsc/typechecker/Analyzer;)Lscala/runtime/java8/JFunction1; [
// handle kind 0x6 : INVOKESTATIC
java/lang/invoke/LambdaMetafactory.altMetafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
// arguments:
(Ljava/lang/Object;)Ljava/lang/Object;,
// handle kind 0x6 : INVOKESTATIC
scala/tools/nsc/typechecker/EtaExpansion$class.scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$6(Lscala/tools/nsc/typechecker/Analyzer;Lscala/Tuple2;)Lscala/reflect/internal/Trees$Tree;,
(Lscala/Tuple2;)Lscala/reflect/internal/Trees$Tree;,
3,
1,
Lscala/Serializable;.class,
0
]
GETSTATIC scala/collection/immutable/List$.MODULE$ : Lscala/collection/immutable/List$;
INVOKEVIRTUAL scala/collection/immutable/List$.canBuildFrom ()Lscala/collection/generic/CanBuildFrom;
ASTORE 17
ASTORE 16
IFNONNULL L22
ACONST_NULL
ATHROW
L22
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/reflect/internal/Types$Type T scala/reflect/internal/Types$MethodType scala/collection/immutable/List scala/reflect/internal/Types$Type scala/collection/immutable/List T scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom T T T T java/lang/Object scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom] [scala/tools/nsc/Global scala/reflect/internal/util/Position]
ALOAD 17
GETSTATIC scala/collection/immutable/List$.MODULE$ : Lscala/collection/immutable/List$;
INVOKEVIRTUAL scala/collection/immutable/List$.ReusableCBF ()Lscala/collection/generic/GenTraversableFactory$GenericCanBuildFrom;
IF_ACMPNE L23
ALOAD 7
GETSTATIC scala/collection/immutable/Nil$.MODULE$ : Lscala/collection/immutable/Nil$;
IF_ACMPNE L24
GETSTATIC scala/collection/immutable/Nil$.MODULE$ : Lscala/collection/immutable/Nil$;
ASTORE 22
GOTO L25
L24
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/reflect/internal/Types$Type T scala/reflect/internal/Types$MethodType scala/collection/immutable/List scala/reflect/internal/Types$Type scala/collection/immutable/List T scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom T T T T java/lang/Object scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom] [scala/tools/nsc/Global scala/reflect/internal/util/Position]
NEW scala/collection/immutable/$colon$colon
DUP
ALOAD 7
INVOKEVIRTUAL scala/collection/immutable/List.head ()Ljava/lang/Object;
CHECKCAST scala/Tuple2
ASTORE 31
ALOAD 0
ALOAD 31
INVOKESTATIC scala/tools/nsc/typechecker/EtaExpansion$class.scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$6 (Lscala/tools/nsc/typechecker/Analyzer;Lscala/Tuple2;)Lscala/reflect/internal/Trees$Tree;
GETSTATIC scala/collection/immutable/Nil$.MODULE$ : Lscala/collection/immutable/Nil$;
INVOKESPECIAL scala/collection/immutable/$colon$colon.<init> (Ljava/lang/Object;Lscala/collection/immutable/List;)V
L26
ASTORE 18
ALOAD 18
L27
ASTORE 19
ALOAD 7
INVOKEVIRTUAL scala/collection/immutable/List.tail ()Ljava/lang/Object;
CHECKCAST scala/collection/immutable/List
L28
ASTORE 20
L29
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/reflect/internal/Types$Type T scala/reflect/internal/Types$MethodType scala/collection/immutable/List scala/reflect/internal/Types$Type scala/collection/immutable/List T scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom T T T T java/lang/Object scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom scala/collection/immutable/$colon$colon scala/collection/immutable/$colon$colon scala/collection/immutable/List T T T T T T T T T T scala/Tuple2] [scala/tools/nsc/Global scala/reflect/internal/util/Position]
ALOAD 20
GETSTATIC scala/collection/immutable/Nil$.MODULE$ : Lscala/collection/immutable/Nil$;
IF_ACMPEQ L30
NEW scala/collection/immutable/$colon$colon
DUP
ALOAD 20
INVOKEVIRTUAL scala/collection/immutable/List.head ()Ljava/lang/Object;
CHECKCAST scala/Tuple2
ASTORE 31
ALOAD 0
ALOAD 31
INVOKESTATIC scala/tools/nsc/typechecker/EtaExpansion$class.scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$6 (Lscala/tools/nsc/typechecker/Analyzer;Lscala/Tuple2;)Lscala/reflect/internal/Trees$Tree;
GETSTATIC scala/collection/immutable/Nil$.MODULE$ : Lscala/collection/immutable/Nil$;
INVOKESPECIAL scala/collection/immutable/$colon$colon.<init> (Ljava/lang/Object;Lscala/collection/immutable/List;)V
L31
ASTORE 21
ALOAD 19
ALOAD 21
INVOKEVIRTUAL scala/collection/immutable/$colon$colon.tl_$eq (Lscala/collection/immutable/List;)V
ALOAD 21
ASTORE 19
ALOAD 20
INVOKEVIRTUAL scala/collection/immutable/List.tail ()Ljava/lang/Object;
CHECKCAST scala/collection/immutable/List
ASTORE 20
L32
GOTO L29
L30
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/reflect/internal/Types$Type T scala/reflect/internal/Types$MethodType scala/collection/immutable/List scala/reflect/internal/Types$Type scala/collection/immutable/List T scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom T T T T java/lang/Object scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom scala/collection/immutable/$colon$colon scala/collection/immutable/$colon$colon scala/collection/immutable/List T T T T T T T T T T scala/Tuple2] [scala/tools/nsc/Global scala/reflect/internal/util/Position]
ALOAD 18
L33
ASTORE 22
GOTO L25
L23
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/reflect/internal/Types$Type T scala/reflect/internal/Types$MethodType scala/collection/immutable/List scala/reflect/internal/Types$Type scala/collection/immutable/List T scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom T T T T java/lang/Object scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom] [scala/tools/nsc/Global scala/reflect/internal/util/Position]
ALOAD 7
ALOAD 16
ALOAD 17
INVOKESTATIC scala/collection/TraversableLike$class.map (Lscala/collection/TraversableLike;Lscala/Function1;Lscala/collection/generic/CanBuildFrom;)Ljava/lang/Object;
ASTORE 22
L25
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/reflect/internal/Types$Type T scala/reflect/internal/Types$MethodType scala/collection/immutable/List scala/reflect/internal/Types$Type scala/collection/immutable/List T scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom T T T T java/lang/Object scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom T T T T java/lang/Object] [scala/tools/nsc/Global scala/reflect/internal/util/Position]
ALOAD 22
CHECKCAST scala/collection/immutable/List
L34
ASTORE 8
L35
LINENUMBER 126 L35
NEW scala/reflect/internal/Trees$Function
DUP
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
ALOAD 0
INVOKEDYNAMIC apply(Lscala/tools/nsc/typechecker/Analyzer;)Lscala/runtime/java8/JFunction1; [
// handle kind 0x6 : INVOKESTATIC
java/lang/invoke/LambdaMetafactory.altMetafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
// arguments:
(Ljava/lang/Object;)Ljava/lang/Object;,
// handle kind 0x6 : INVOKESTATIC
scala/tools/nsc/typechecker/EtaExpansion$class.scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$7(Lscala/tools/nsc/typechecker/Analyzer;Lscala/Tuple2;)Lscala/reflect/internal/Trees$ValDef;,
(Lscala/Tuple2;)Lscala/reflect/internal/Trees$ValDef;,
3,
1,
Lscala/Serializable;.class,
0
]
GETSTATIC scala/collection/immutable/List$.MODULE$ : Lscala/collection/immutable/List$;
INVOKEVIRTUAL scala/collection/immutable/List$.canBuildFrom ()Lscala/collection/generic/CanBuildFrom;
ASTORE 24
ASTORE 23
L36
ALOAD 24
GETSTATIC scala/collection/immutable/List$.MODULE$ : Lscala/collection/immutable/List$;
INVOKEVIRTUAL scala/collection/immutable/List$.ReusableCBF ()Lscala/collection/generic/GenTraversableFactory$GenericCanBuildFrom;
IF_ACMPNE L37
ALOAD 7
GETSTATIC scala/collection/immutable/Nil$.MODULE$ : Lscala/collection/immutable/Nil$;
IF_ACMPNE L38
GETSTATIC scala/collection/immutable/Nil$.MODULE$ : Lscala/collection/immutable/Nil$;
ASTORE 29
GOTO L39
L38
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/reflect/internal/Types$Type T scala/reflect/internal/Types$MethodType scala/collection/immutable/List scala/reflect/internal/Types$Type scala/collection/immutable/List scala/collection/immutable/List scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom T T T T java/lang/Object scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom T T T T java/lang/Object scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom] [scala/tools/nsc/Global scala/reflect/internal/util/Position L35 L35 scala/tools/nsc/Global]
NEW scala/collection/immutable/$colon$colon
DUP
ALOAD 7
INVOKEVIRTUAL scala/collection/immutable/List.head ()Ljava/lang/Object;
CHECKCAST scala/Tuple2
ASTORE 32
ALOAD 0
ALOAD 32
INVOKESTATIC scala/tools/nsc/typechecker/EtaExpansion$class.scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$7 (Lscala/tools/nsc/typechecker/Analyzer;Lscala/Tuple2;)Lscala/reflect/internal/Trees$ValDef;
GETSTATIC scala/collection/immutable/Nil$.MODULE$ : Lscala/collection/immutable/Nil$;
INVOKESPECIAL scala/collection/immutable/$colon$colon.<init> (Ljava/lang/Object;Lscala/collection/immutable/List;)V
L40
ASTORE 25
ALOAD 25
L41
ASTORE 26
ALOAD 7
INVOKEVIRTUAL scala/collection/immutable/List.tail ()Ljava/lang/Object;
CHECKCAST scala/collection/immutable/List
L42
ASTORE 27
L43
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/reflect/internal/Types$Type T scala/reflect/internal/Types$MethodType scala/collection/immutable/List scala/reflect/internal/Types$Type scala/collection/immutable/List scala/collection/immutable/List scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom T T T T java/lang/Object scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom T T T T java/lang/Object scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom scala/collection/immutable/$colon$colon scala/collection/immutable/$colon$colon scala/collection/immutable/List T T T T scala/Tuple2] [scala/tools/nsc/Global scala/reflect/internal/util/Position L35 L35 scala/tools/nsc/Global]
ALOAD 27
GETSTATIC scala/collection/immutable/Nil$.MODULE$ : Lscala/collection/immutable/Nil$;
IF_ACMPEQ L44
NEW scala/collection/immutable/$colon$colon
DUP
ALOAD 27
INVOKEVIRTUAL scala/collection/immutable/List.head ()Ljava/lang/Object;
CHECKCAST scala/Tuple2
ASTORE 32
ALOAD 0
ALOAD 32
INVOKESTATIC scala/tools/nsc/typechecker/EtaExpansion$class.scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$7 (Lscala/tools/nsc/typechecker/Analyzer;Lscala/Tuple2;)Lscala/reflect/internal/Trees$ValDef;
GETSTATIC scala/collection/immutable/Nil$.MODULE$ : Lscala/collection/immutable/Nil$;
INVOKESPECIAL scala/collection/immutable/$colon$colon.<init> (Ljava/lang/Object;Lscala/collection/immutable/List;)V
L45
ASTORE 28
ALOAD 26
ALOAD 28
INVOKEVIRTUAL scala/collection/immutable/$colon$colon.tl_$eq (Lscala/collection/immutable/List;)V
ALOAD 28
ASTORE 26
ALOAD 27
INVOKEVIRTUAL scala/collection/immutable/List.tail ()Ljava/lang/Object;
CHECKCAST scala/collection/immutable/List
ASTORE 27
L46
GOTO L43
L44
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/reflect/internal/Types$Type T scala/reflect/internal/Types$MethodType scala/collection/immutable/List scala/reflect/internal/Types$Type scala/collection/immutable/List scala/collection/immutable/List scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom T T T T java/lang/Object scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom T T T T java/lang/Object scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom scala/collection/immutable/$colon$colon scala/collection/immutable/$colon$colon scala/collection/immutable/List T T T T scala/Tuple2] [scala/tools/nsc/Global scala/reflect/internal/util/Position L35 L35 scala/tools/nsc/Global]
ALOAD 25
L47
ASTORE 29
GOTO L39
L37
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/reflect/internal/Types$Type T scala/reflect/internal/Types$MethodType scala/collection/immutable/List scala/reflect/internal/Types$Type scala/collection/immutable/List scala/collection/immutable/List scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom T T T T java/lang/Object scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom T T T T java/lang/Object scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom] [scala/tools/nsc/Global scala/reflect/internal/util/Position L35 L35 scala/tools/nsc/Global]
ALOAD 7
ALOAD 23
ALOAD 24
INVOKESTATIC scala/collection/TraversableLike$class.map (Lscala/collection/TraversableLike;Lscala/Function1;Lscala/collection/generic/CanBuildFrom;)Ljava/lang/Object;
ASTORE 29
L39
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/reflect/internal/Types$Type T scala/reflect/internal/Types$MethodType scala/collection/immutable/List scala/reflect/internal/Types$Type scala/collection/immutable/List scala/collection/immutable/List scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom T T T T java/lang/Object scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom T T T T java/lang/Object scala/runtime/java8/JFunction1 scala/collection/generic/CanBuildFrom T T T T java/lang/Object] [scala/tools/nsc/Global scala/reflect/internal/util/Position L35 L35 scala/tools/nsc/Global]
ALOAD 29
CHECKCAST scala/collection/immutable/List
ALOAD 0
NEW scala/reflect/internal/Trees$Apply
DUP
ALOAD 0
INVOKEINTERFACE scala/tools/nsc/typechecker/Analyzer.global ()Lscala/tools/nsc/Global;
ALOAD 1
ALOAD 8
INVOKESPECIAL scala/reflect/internal/Trees$Apply.<init> (Lscala/reflect/internal/SymbolTable;Lscala/reflect/internal/Trees$Tree;Lscala/collection/immutable/List;)V
ALOAD 6
INVOKESTATIC scala/tools/nsc/typechecker/EtaExpansion$class.expand$1 (Lscala/tools/nsc/typechecker/Analyzer;Lscala/reflect/internal/Trees$Tree;Lscala/reflect/internal/Types$Type;)Lscala/reflect/internal/Trees$Tree;
INVOKESPECIAL scala/reflect/internal/Trees$Function.<init> (Lscala/reflect/internal/SymbolTable;Lscala/collection/immutable/List;Lscala/reflect/internal/Trees$Tree;)V
L48
INVOKEVIRTUAL scala/tools/nsc/Global.atPos (Lscala/reflect/internal/util/Position;Lscala/reflect/internal/Trees$Tree;)Lscala/reflect/internal/Trees$Tree;
L49
ASTORE 3
GOTO L50
L1
LINENUMBER 129 L1
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/reflect/internal/Types$Type] []
ALOAD 1
ASTORE 3
L50
FRAME APPEND [scala/reflect/internal/Trees$Tree]
ALOAD 3
ARETURN
L51
LOCALVARIABLE args Lscala/collection/immutable/List; L34 L48 8
LOCALVARIABLE params Lscala/collection/immutable/List; L19 L49 7
LOCALVARIABLE paramSyms Lscala/collection/immutable/List; L2 L1 5
LOCALVARIABLE restpe Lscala/reflect/internal/Types$Type; L3 L1 6
LOCALVARIABLE $this Lscala/tools/nsc/typechecker/Analyzer; L0 L51 0
LOCALVARIABLE tree Lscala/reflect/internal/Trees$Tree; L0 L51 1
LOCALVARIABLE tpe Lscala/reflect/internal/Types$Type; L0 L51 2
LOCALVARIABLE map_nx Lscala/collection/immutable/$colon$colon; L16 L17 14
LOCALVARIABLE map_h Lscala/collection/immutable/$colon$colon; L11 L18 11
LOCALVARIABLE map_t Lscala/collection/immutable/$colon$colon; L12 L18 12
LOCALVARIABLE map_rest Lscala/collection/immutable/List; L13 L18 13
LOCALVARIABLE map_f Lscala/Function1; L7 L10 9
LOCALVARIABLE map_bf Lscala/collection/generic/CanBuildFrom; L7 L10 10
LOCALVARIABLE map_nx Lscala/collection/immutable/$colon$colon; L31 L32 21
LOCALVARIABLE map_h Lscala/collection/immutable/$colon$colon; L26 L33 18
LOCALVARIABLE map_t Lscala/collection/immutable/$colon$colon; L27 L33 19
LOCALVARIABLE map_rest Lscala/collection/immutable/List; L28 L33 20
LOCALVARIABLE map_f Lscala/Function1; L22 L25 16
LOCALVARIABLE map_bf Lscala/collection/generic/CanBuildFrom; L22 L25 17
LOCALVARIABLE map_nx Lscala/collection/immutable/$colon$colon; L45 L46 28
LOCALVARIABLE map_h Lscala/collection/immutable/$colon$colon; L40 L47 25
LOCALVARIABLE map_t Lscala/collection/immutable/$colon$colon; L41 L47 26
LOCALVARIABLE map_rest Lscala/collection/immutable/List; L42 L47 27
LOCALVARIABLE map_f Lscala/Function1; L36 L39 23
LOCALVARIABLE map_bf Lscala/collection/generic/CanBuildFrom; L36 L39 24
MAXSTACK = 12
MAXLOCALS = 33
// access flags 0x9
public static $init$(Lscala/tools/nsc/typechecker/Analyzer;)V
// parameter final $this
L0
LINENUMBER 17 L0
RETURN
L1
LOCALVARIABLE $this Lscala/tools/nsc/typechecker/Analyzer; L0 L1 0
MAXSTACK = 0
MAXLOCALS = 1
// access flags 0x1019
public final static synthetic scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$2$adapted(Lscala/tools/nsc/typechecker/Analyzer;Lscala/reflect/internal/Symbols$Symbol;)Ljava/lang/Object;
// parameter final x$1
// parameter final p
L0
LINENUMBER 92 L0
ALOAD 0
ALOAD 1
INVOKESTATIC scala/tools/nsc/typechecker/EtaExpansion$class.scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$2 (Lscala/tools/nsc/typechecker/Analyzer;Lscala/reflect/internal/Symbols$Symbol;)Z
INVOKESTATIC scala/runtime/BoxesRunTime.boxToBoolean (Z)Ljava/lang/Boolean;
ARETURN
L1
LOCALVARIABLE x$1 Lscala/tools/nsc/typechecker/Analyzer; L0 L1 0
LOCALVARIABLE p Lscala/reflect/internal/Symbols$Symbol; L0 L1 1
MAXSTACK = 2
MAXLOCALS = 2
// access flags 0x1019
public final static synthetic scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$3$adapted(Lscala/tools/nsc/typechecker/Analyzer;Lscala/runtime/IntRef;Lscala/collection/mutable/ListBuffer;Lscala/Function1;Lscala/tools/nsc/CompilationUnits$CompilationUnit;Lscala/tools/nsc/typechecker/Typers$Typer;Lscala/reflect/internal/Trees$Tree;Ljava/lang/Object;)Lscala/reflect/internal/Trees$Tree;
// parameter final x$1
// parameter final cnt$1
// parameter final defs$1
// parameter final byName$1
// parameter final unit$1
// parameter final typer$1
// parameter final arg
// parameter final i
L0
LINENUMBER 93 L0
ALOAD 7
INVOKESTATIC scala/runtime/BoxesRunTime.unboxToInt (Ljava/lang/Object;)I
ISTORE 8
L1
LINENUMBER 95 L1
ALOAD 0
ALOAD 6
ALOAD 3
ILOAD 8
INVOKESTATIC scala/runtime/BoxesRunTime.boxToInteger (I)Ljava/lang/Integer;
INVOKEINTERFACE scala/Function1.apply (Ljava/lang/Object;)Ljava/lang/Object;
CHECKCAST scala/Option
DUP
IFNONNULL L2
ACONST_NULL
ATHROW
L2
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/runtime/IntRef scala/collection/mutable/ListBuffer scala/Function1 scala/tools/nsc/CompilationUnits$CompilationUnit scala/tools/nsc/typechecker/Typers$Typer scala/reflect/internal/Trees$Tree java/lang/Object I] [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree scala/Option]
ASTORE 9
L3
ALOAD 9
INVOKEVIRTUAL scala/Option.isEmpty ()Z
IFEQ L4
ALOAD 0
INVOKESTATIC scala/tools/nsc/typechecker/EtaExpansion$class.scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$4 (Lscala/tools/nsc/typechecker/Analyzer;)Z
INVOKESTATIC scala/runtime/BoxesRunTime.boxToBoolean (Z)Ljava/lang/Boolean;
ASTORE 10
GOTO L5
L4
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/runtime/IntRef scala/collection/mutable/ListBuffer scala/Function1 scala/tools/nsc/CompilationUnits$CompilationUnit scala/tools/nsc/typechecker/Typers$Typer scala/reflect/internal/Trees$Tree java/lang/Object I scala/Option] [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree]
ALOAD 9
INVOKEVIRTUAL scala/Option.get ()Ljava/lang/Object;
ASTORE 10
L5
FRAME FULL [scala/tools/nsc/typechecker/Analyzer scala/runtime/IntRef scala/collection/mutable/ListBuffer scala/Function1 scala/tools/nsc/CompilationUnits$CompilationUnit scala/tools/nsc/typechecker/Typers$Typer scala/reflect/internal/Trees$Tree java/lang/Object I scala/Option java/lang/Object] [scala/tools/nsc/typechecker/Analyzer scala/reflect/internal/Trees$Tree]
ALOAD 10
INVOKESTATIC scala/runtime/BoxesRunTime.unboxToBoolean (Ljava/lang/Object;)Z
ALOAD 1
ALOAD 2
ALOAD 4
ALOAD 5
INVOKESTATIC scala/tools/nsc/typechecker/EtaExpansion$class.liftout$1 (Lscala/tools/nsc/typechecker/Analyzer;Lscala/reflect/internal/Trees$Tree;ZLscala/runtime/IntRef;Lscala/collection/mutable/ListBuffer;Lscala/tools/nsc/CompilationUnits$CompilationUnit;Lscala/tools/nsc/typechecker/Typers$Typer;)Lscala/reflect/internal/Trees$Tree;
L6
ARETURN
L7
LOCALVARIABLE x$1 Lscala/tools/nsc/typechecker/Analyzer; L0 L7 0
LOCALVARIABLE cnt$1 Lscala/runtime/IntRef; L0 L7 1
LOCALVARIABLE defs$1 Lscala/collection/mutable/ListBuffer; L0 L7 2
LOCALVARIABLE byName$1 Lscala/Function1; L0 L7 3
LOCALVARIABLE unit$1 Lscala/tools/nsc/CompilationUnits$CompilationUnit; L0 L7 4
LOCALVARIABLE typer$1 Lscala/tools/nsc/typechecker/Typers$Typer; L0 L7 5
LOCALVARIABLE arg Lscala/reflect/internal/Trees$Tree; L0 L7 6
LOCALVARIABLE i Ljava/lang/Object; L0 L7 7
LOCALVARIABLE scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$3_i I L1 L6 8
LOCALVARIABLE scala$tools$nsc$typechecker$EtaExpansion$class$$$anonfun$3_getOrElse_this Lscala/Option; L3 L5 9
MAXSTACK = 7
MAXLOCALS = 11
// access flags 0x100A
private static synthetic $deserializeLambda$(Ljava/lang/invoke/SerializedLambda;)Ljava/lang/Object;
GETSTATIC scala/tools/nsc/typechecker/EtaExpansion$class.$deserializeLambdaCache$ : Ljava/util/Map;
ASTORE 1
ALOAD 1
IFNONNULL L0
NEW java/util/HashMap
DUP
INVOKESPECIAL java/util/HashMap.<init> ()V
ASTORE 1
ALOAD 1
PUTSTATIC scala/tools/nsc/typechecker/EtaExpansion$class.$deserializeLambdaCache$ : Ljava/util/Map;
L0
FRAME APPEND [java/util/Map]
GETSTATIC scala/runtime/LambdaDeserializer$.MODULE$ : Lscala/runtime/LambdaDeserializer$;
INVOKESTATIC java/lang/invoke/MethodHandles.lookup ()Ljava/lang/invoke/MethodHandles$Lookup;
ALOAD 1
ALOAD 0
INVOKEVIRTUAL scala/runtime/LambdaDeserializer$.deserializeLambda (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/util/Map;Ljava/lang/invoke/SerializedLambda;)Ljava/lang/Object;
ARETURN
MAXSTACK = 4
MAXLOCALS = 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment