Dotty Documentation


class FunctionXXLForwarders
extends MiniPhaseTransform with IdentityDenotTransformer

This phase adds forwarder for XXL functions apply methods that are implemented with a method with explicit parameters (not in Array[Object]).

In particular for every method def apply(x1: T1, ... xn: Tn): R in class M subtype of FunctionN[T1, ..., Tn, R] with N > 22 a forwarder def apply(xs: Array[Object]): R = this.apply(xs(0).asInstanceOf[T1], ..., xs(n-1).asInstanceOf[Tn]).asInstanceOf[R] is generated.

[-] Constructors

FunctionXXLForwarders ( )

[-] Members

[+] override def phaseName : String

A name given to the Phase that can be used to debug the compiler. For instance, it is possible to print trees after a given phase using:

$ ./bin/dotc -Xprint:<phaseNameHere> sourceFile.scala
[+] override def transformTemplate ( impl: Template ) ( implicit ctx: Context , info: TransformerInfo ) : Template