- Companion:
- class
Type members
Classlikes
Value members
Concrete methods
For a retained inline method, another method that keeps track of the body that is kept at runtime. For instance, an inline method
For a retained inline method, another method that keeps track of the body that is kept at runtime. For instance, an inline method
inline override def f(x: T) = b
is complemented by the body retainer method
private def f$retainedBody(x: T) = f(x)
where the call f(x) is inline-expanded. This body is then transferred
back to f at erasure, using method addRetainedInlineBodies.
The body to inline for method sym, or EmptyTree if none exists.
The body to inline for method sym, or EmptyTree if none exists.
Replace Inlined node by a block that contains its bindings and expansion
Replace Inlined node by a block that contains its bindings and expansion
sym is an inline method with a known body to inline.
sym is an inline method with a known body to inline.
Try to inline a call to an inline method. Fail with error if the maximal inline depth is exceeded.
Try to inline a call to an inline method. Fail with error if the maximal inline depth is exceeded.
- Value parameters:
- pt
The expected type of the call.
- tree
The call to inline
- Returns:
An
Inlinednode that refers to the original call and the inlined bindings and body that replace it.
Leave only a call trace consisting of
Leave only a call trace consisting of
- a reference to the top-level class from which the call was inlined,
- the call's position in the call field of an Inlined node. The trace has enough info to completely reconstruct positions. Note: For macros it returns a Select and for other inline methods it returns an Ident (this distinction is only temporary to be able to run YCheckPositions)
Try to inline a pattern with an inline unapply method. Fail with error if the maximal inline depth is exceeded.
Try to inline a pattern with an inline unapply method. Fail with error if the maximal inline depth is exceeded.
- Value parameters:
- unapp
The tree of the pattern to inline
- Returns:
An
Unapplywith afuncontaining the inlined call to the unapply