ApplyTypedClosure

dotty.tools.sjs.ir.Trees.ApplyTypedClosure
sealed case class ApplyTypedClosure(flags: ApplyFlags, fun: Tree, args: List[Tree])(implicit pos: Position) extends Tree

Apply a typed closure

The given fun must have a closure type.

The arguments' types must match (be subtypes of) the parameter types of the closure type.

The tpe of this node is the result type of the closure type, or nothing if the latter is nothing.

Evaluation steps are as follows:

  1. Let funV be the result of evaluating fun.
  2. If funV is nullClosure, trigger an NPE undefined behavior.
  3. Let argsV be the result of evaluating args, in order.
  4. Invoke funV with arguments argsV, and return the result.

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Tree
class IRNode
class Object
trait Matchable
class Any
Show all

Members list

Value members

Inherited methods

Attributes

Inherited from:
Product

Attributes

Inherited from:
Product
def show: String

Attributes

Inherited from:
IRNode

Concrete fields

val tpe: Type

Implicits

Implicits

implicit val pos: Position