Skip to content

Commit 01e1932

Browse files
committed
clarify comment about TypeVar
1 parent dbeceba commit 01e1932

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

src/dotty/tools/dotc/core/Types.scala

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2184,13 +2184,16 @@ object Types {
21842184

21852185
// ------------ Type variables ----------------------------------------
21862186

2187-
/** A type variable is essentially a switch that models some part of a substitution.
2187+
/** In a TypeApply tree, a TypeVar is created for each argument type to be inferred.
2188+
* Every type variable is referred to by exactly one inferred type parameter of some
2189+
* TypeApply tree.
2190+
*
2191+
* A type variable is essentially a switch that models some part of a substitution.
21882192
* It is first linked to `origin`, a poly param that's in the current constraint set.
21892193
* It can then be (once) instantiated to some other type. The instantiation is
21902194
* recorded in the type variable itself, or else, if the current type state
21912195
* is different from the variable's creation state (meaning unrolls are possible)
2192-
* in the current typer state. Every type variable is referred to by exactly
2193-
* one inferred type parameter in a TypeApply tree.
2196+
* in the current typer state.
21942197
*
21952198
* @param origin The parameter that's tracked by the type variable.
21962199
* @param creatorState The typer state in which the variable was created.

0 commit comments

Comments
 (0)