class
HKTypeLambda
extends
HKLambda
with
TypeLambda
A type lambda of the form [X_0 B_0, ..., X_n B_n] => T
Variances are encoded in parameter names. A name starting with +
designates a covariant parameter, a name starting with -
designates
a contravariant parameter, and every other name designates a non-variant parameter.
Constructors
HKTypeLambda
(
paramNames:
List
[
TypeName
]
)
HKTypeLambda
(
paramInfosExp:
HKTypeLambda => List
[
TypeBounds
]
,
resultTypeExp:
HKTypeLambda => Type
)
Members
type
This
=
HKTypeLambda
val
paramInfos
: List
[
TypeBounds
]
private
val
paramInfosExp
: HKTypeLambda => List
[
TypeBounds
]
val
paramNames
: List
[
TypeName
]
val
resType
: Type
private
val
resultTypeExp
: HKTypeLambda => Type
def
companion
: LambdaTypeCompanion
[
ThisName, PInfo, This
]
protected
def
prefixString
: String