LambdaModule

Methods of the module object val Lambda

Methods of the module object val Lambda

class Object
trait Matchable
class Any

Value members

Abstract methods

def apply(owner: Symbol, tpe: MethodType, rhsFn: (Symbol, List[Tree]) => Tree): Block

Generates a lambda with the given method type.

Generates a lambda with the given method type.

Block((DefDef(_, _, params :: Nil, _, Some(rhsFn(meth, paramRefs)))) :: Nil, Closure(meth, _))
Value Params
owner:

owner of the generated meth symbol

rhsFn:

Function that receives the meth symbol and the a list of references to the params

tpe:

Type of the definition

def unapply(tree: Block): Option[(List[ValDef], Term)]

Matches a lambda definition of the form

Matches a lambda definition of the form

Block((DefDef(_, _, params :: Nil, _, Some(body))) :: Nil, Closure(meth, _))

Extracts the parameter definitions and body.