ApproximatingTypeMap
A type map that approximates TypeBounds types depending on variance.
if variance > 0 : approximate by upper bound variance < 0 : approximate by lower bound variance = 0 : propagate bounds to next outer level
Attributes
- Graph
- Supertypes
- Known subtypes
- class SubstParamsMapclass SubstApproxMapclass AsSeenFromMapclass AvoidWildcardsMapclass AvoidMapclass LevelAvoidMap
- Self type
Members list
Value members
Concrete methods
Attributes
- Definition Classes
Attributes
- Definition Classes
Attributes
- Definition Classes
Attributes
- Definition Classes
Attributes
- Definition Classes
Attributes
- Definition Classes
Attributes
- Definition Classes
Attributes
- Definition Classes
Attributes
- Definition Classes
Attributes
- Definition Classes
Attributes
- Definition Classes
Derived selection.
Attributes
- Definition Classes
Attributes
- Definition Classes
Attributes
- Definition Classes
Attributes
- Definition Classes
Expand parameter reference corresponding to prefix pre
;
If the expansion is a wildcard parameter reference, convert its
underlying bounds to a range, otherwise return the expansion.
Expand parameter reference corresponding to prefix pre
;
If the expansion is a wildcard parameter reference, convert its
underlying bounds to a range, otherwise return the expansion.
Attributes
Whether it is currently expanding bounds
Whether it is currently expanding bounds
It is used to avoid following LazyRef in F-Bounds
Attributes
Attributes
- Definition Classes
Try to widen a named type to its info relative to given prefix pre
, where possible.
The possible cases are listed inline in the code.
Try to widen a named type to its info relative to given prefix pre
, where possible.
The possible cases are listed inline in the code.
Attributes
Use an alterate type tp
that replaces a range. This can happen if the
prefix of a Select is a range and the selected symbol is an alias type
or a value with a singleton type. In both cases we can forget the prefix
and use the symbol's type.
Use an alterate type tp
that replaces a range. This can happen if the
prefix of a Select is a range and the selected symbol is an alias type
or a value with a singleton type. In both cases we can forget the prefix
and use the symbol's type.
Attributes
Inherited methods
Attributes
- Inherited from:
- VariantTraversal
Attributes
- Inherited from:
- TypeMap
Attributes
- Inherited from:
- TypeMap
Can the prefix of this static reference be omitted if the reference itself can be omitted? Overridden in TypeOps#avoid.
Can the prefix of this static reference be omitted if the reference itself can be omitted? Overridden in TypeOps#avoid.
Attributes
- Inherited from:
- VariantTraversal
Attributes
- Inherited from:
- TypeMap
Can be overridden. By default, only the prefix is mapped.
Map this function over given type
Attributes
- Inherited from:
- TypeMap
Attributes
- Inherited from:
- VariantTraversal
Attributes
- Inherited from:
- VariantTraversal