Scala Compiler2.12.2-20170504-135222-21d12e9 < Back
 

# Packages

-  package root

  The Scala compiler and reflection APIs.

  The Scala compiler and reflection APIs.

  Definition Classes
    root
-  package scala
  Definition Classes
    root
-  package tools
  Definition Classes
    scala
-  package nsc
  Definition Classes
    tools
-  package transform
  Definition Classes
    nsc
-  abstract class Delambdafy extends SubComponent with Transform with TypingTransformers with TreeDSL with TypeAdaptingTransformer

  This transformer is responsible for preparing Function nodes for runtime, by translating to a tree that will be converted to an invokedynamic by the backend.

  This transformer is responsible for preparing Function nodes for runtime, by translating to a tree that will be converted to an invokedynamic by the backend.

  The main assumption it makes is that a Function {args => body} has been turned into {args => liftedBody()} where lifted body is a top level method that implements the body of the function. Currently Uncurry is responsible for that transformation.

  From this shape of Function, Delambdafy will create:

  An application of the captured arguments to a fictional symbol representing the lambda factory. This will be translated by the backed into an invokedynamic using a bootstrap method in JDK8's `LambdaMetaFactory`. The captured arguments include `this` if `liftedBody` is unable to be made STATIC.

  Definition Classes
    transform
- CODE
- DelambdafyTransformer
- FreeVarTraverser
- LambdaMetaFactoryCapable
- Phase
- SkipPhase
- StdPhase
- ThisReferringMethodsTraverser
- TypeAdapter
- TypingTransformer

o

scala.tools.nsc.transform.Delambdafy

# FreeVarTraverser 

###
Companion class FreeVarTraverser

#### object FreeVarTraverser

Source
  Delambdafy.scala

Linear Supertypes
AnyRef, Any
 
Ordering

1. Alphabetic
2. By Inheritance

Inherited

1. FreeVarTraverser
2. AnyRef
3. Any

1. Hide All
2. Show All

Visibility

1. Public
2. All

### Value Members

1.  final def !=(arg0: Any): Boolean
   Definition Classes
     AnyRef → Any
2.  final def ##(): Int
   Definition Classes
     AnyRef → Any
3.  final def ==(arg0: Any): Boolean
   Definition Classes
     AnyRef → Any
4.  final def asInstanceOf[T0]: T0
   Definition Classes
     Any
5.  def clone(): AnyRef
   Attributes
     protected[java.lang]
   Definition Classes
     AnyRef
   Annotations
     @throws( ... )
6.  final def eq(arg0: AnyRef): Boolean
   Definition Classes
     AnyRef
7.  def equals(arg0: Any): Boolean
   Definition Classes
     AnyRef → Any
8.  def finalize(): Unit
   Attributes
     protected[java.lang]
   Definition Classes
     AnyRef
   Annotations
     @throws( classOf[java.lang.Throwable] )
9.  def freeVarsOf(function: Global.Function): LinkedHashSet[Global.Symbol]
10.  final def getClass(): Class[_]
    Definition Classes
      AnyRef → Any
11.  def hashCode(): Int
    Definition Classes
      AnyRef → Any
12.  final def isInstanceOf[T0]: Boolean
    Definition Classes
      Any
13.  final def ne(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef
14.  final def notify(): Unit
    Definition Classes
      AnyRef
15.  final def notifyAll(): Unit
    Definition Classes
      AnyRef
16.  final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
      AnyRef
17.  def toString(): String
    Definition Classes
      AnyRef → Any
18.  final def wait(): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws( ... )
19.  final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws( ... )
20.  final def wait(arg0: Long): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws( ... )

### Inherited from AnyRef

### Inherited from Any

### Ungrouped