reflectModule
Low-level Typed AST metaprogramming API.
Low-level Typed AST metaprogramming API.
Provides all functionality related to AST-based metaprogramming.
Each type XYZ in the API is defined as an abstract type type XYZ.
Methods on XYZ are provided by a given XYZMethods which implements extension methods on XYZ in the trait XYZMethods.
The XYZ module is defined by a val XYZ: XYZModule which contains the methods defined in XYZModule.
Type tests (TypeTest) are also given to perform subtype checks on these types.
Type hierarchy
+- Tree -+- PackageClause
|
+- Statement -+- Import
| +- Export
| +- Definition --+- ClassDef
| | +- TypeDef
| | +- DefDef
| | +- ValDef
| |
| +- Term --------+- Ref -+- Ident
| | +- Select
| |
| +- Literal
| +- This
| +- New
| +- NamedArg
| +- Apply
| +- TypeApply
| +- Super
| +- Typed
| +- Assign
| +- Block
| +- Closure
| +- If
| +- Match
| +- SummonFrom
| +- Try
| +- Return
| +- Repeated
| +- Inlined
| +- SelectOuter
| +- While
|
|
+- TypeTree ----+- Inferred
| +- TypeIdent
| +- TypeSelect
| +- TypeProjection
| +- Singleton
| +- Refined
| +- Applied
| +- Annotated
| +- MatchTypeTree
| +- ByName
| +- LambdaTypeTree
| +- TypeBind
| +- TypeBlock
|
+- TypeBoundsTree
+- WildcardTypeTree
|
+- CaseDef
|
+- TypeCaseDef
+- Bind
+- Unapply
+- Alternatives
+- ParamClause -+- TypeParamClause
+- TermParamClause
+- TypeRepr -+- NamedType -+- TermRef
| +- TypeRef
+- ConstantType
+- SuperType
+- Refinement
+- AppliedType
+- AnnotatedType
+- AndOrType -+- AndType
| +- OrType
+- MatchType
+- ByNameType
+- ParamRef
+- ThisType
+- RecursiveThis
+- RecursiveType
+- LambdaType -+- MethodOrPoly -+- MethodType
| | +- PolyType
| +- TypeLambda
+- MatchCase
+- TypeBounds
+- NoPrefix
+- Selector -+- SimpleSelector
+- RenameSelector
+- OmitSelector
+- GivenSelector
+- Signature
+- Position
+- SourceFile
+- Constant -+- BooleanConstant
+- ByteConstant
+- ShortConstant
+- IntConstant
+- LongConstant
+- FloatConstant
+- DoubleConstant
+- CharConstant
+- StringConstant
+- UnitConstant
+- NullConstant
+- ClassOfConstant
+- Symbol
+- Flags
Type members
Classlikes
Methods of the module object val Alternatives
Methods of the module object val Alternatives
Methods of the module object val Annotated
Methods of the module object val Annotated
Methods of the module object val AnnotatedType
Methods of the module object val AnnotatedType
Methods of the module object val AppliedType
Methods of the module object val AppliedType
Methods of the module object val BooleanConstant
Methods of the module object val BooleanConstant
Methods of the module object val ByNameType
Methods of the module object val ByNameType
Methods of the module object val ByteConstant
Methods of the module object val ByteConstant
Methods of the module object val CharConstant
Methods of the module object val CharConstant
Methods of the module object val ClassDef
Methods of the module object val ClassDef
Methods of the module object val ClassOf
Methods of the module object val ClassOf
Methods of the module object val CompilationInfo
Methods of the module object val CompilationInfo
Constant value represented as the constant itself
Constant value represented as the constant itself
Methods of the module object val Definition
Methods of the module object val Definition
Methods of the module object val DoubleConstant
Methods of the module object val DoubleConstant
Methods of the module object val FloatConstant
Methods of the module object val FloatConstant
Methods of the module object val GivenSelector
Methods of the module object val GivenSelector
Methods of the module object val Implicits
Methods of the module object val Implicits
Methods of the module object val Inferred
Methods of the module object val Inferred
Methods of the module object val IntConstant
Methods of the module object val IntConstant
Methods of the module object val LambdaTypeTree
Methods of the module object val LambdaTypeTree
Methods of the module object val LongConstant
Methods of the module object val LongConstant
Methods of the module object val MatchCase
Methods of the module object val MatchCase
Methods of the module object val MatchType
Methods of the module object val MatchType
Methods of the module object val MatchTypeTree
Methods of the module object val MatchTypeTree
Methods of the module object val MethodType
Methods of the module object val MethodType
Methods of the module object val NamedArg
Methods of the module object val NamedArg
Methods of the module object val NoPrefix
Methods of the module object val NoPrefix
Methods of the module object val NullConstant
Methods of the module object val NullConstant
Methods of the module object val OmitSelector
Methods of the module object val OmitSelector
Methods of the module object val PackageClause
Methods of the module object val PackageClause
Methods of the module object val ParamClause
Methods of the module object val ParamClause
Methods of the module object val ParamRef
Methods of the module object val ParamRef
Methods of the module object val PolyType
Methods of the module object val PolyType
Methods of the module object val Position
Methods of the module object val Position
Type class used in show methods to provide customizable String representations
Type class used in show methods to provide customizable String representations
Methods of the module object val RecursiveThis
Methods of the module object val RecursiveThis
Methods of the module object val RecursiveType
Methods of the module object val RecursiveType
Methods of the module object val Refinement
Methods of the module object val Refinement
Methods of the module object val RenameSelector
Methods of the module object val RenameSelector
Methods of the module object val Repeated
Methods of the module object val Repeated
Methods of the module object val SelectOuter
Methods of the module object val SelectOuter
Methods of the module object val Selector
Methods of the module object val Selector
Methods of the module object val Short
Methods of the module object val Short
Methods of the module object val Signature
Methods of the module object val Signature
Methods of the module object val SimpleSelector
Methods of the module object val SimpleSelector
Methods of the module object val Singleton
Methods of the module object val Singleton
Methods of the module object val SourceFile
Methods of the module object val SourceFile
Methods of the module object val StringConstant
Methods of the module object val StringConstant
Methods of the module object val SummonFrom
Methods of the module object val SummonFrom
Methods of the module object val SuperType
Methods of the module object val SuperType
Methods of the module object val TermParamClause
Methods of the module object val TermParamClause
Methods of the module object val ThisType
Methods of the module object val ThisType
Customizable Tree accumulator.
Customizable Tree accumulator.
Usage:
import quotes.reflect._
class MyTreeAccumulator extends TreeAccumulator[X] {
def foldTree(x: X, tree: Tree)(owner: Symbol): X = ...
}
Customizable tree mapper.
Customizable tree mapper.
Usage:
import quotes.reflect._
class MyTreeMap extends TreeMap {
override def transformTree(tree: Tree)(owner: Symbol): Tree = ...
}
Customizable tree traverser.
Customizable tree traverser.
Usage:
import quotes.relfect._
class MyTraverser extends TreeTraverser {
override def traverseTree(tree: Tree)(owner: Symbol): Unit = ...
}
Methods of the module object val TypeApply
Methods of the module object val TypeApply
Methods of the module object val TypeBind
Methods of the module object val TypeBind
Methods of the module object val TypeBlock
Methods of the module object val TypeBlock
Methods of the module object val TypeBounds
Methods of the module object val TypeBounds
Methods of the module object val TypeBoundsTree
Methods of the module object val TypeBoundsTree
Methods of the module object val TypeCaseDef
Methods of the module object val TypeCaseDef
Methods of the module object val TypeIdent
Methods of the module object val TypeIdent
Methods of the module object val TypeLambda
Methods of the module object val TypeLambda
Methods of the module object val TypeParamClause
Methods of the module object val TypeParamClause
Methods of the module object val TypeProjection
Methods of the module object val TypeProjection
Methods of the module object val TypeRepr
Methods of the module object val TypeRepr
Methods of the module object val TypeSelect
Methods of the module object val TypeSelect
Methods of the module object val TypeTree
Methods of the module object val TypeTree
Methods of the module object val UnitConstant
Methods of the module object val UnitConstant
Methods of the module object val WildcardTypeTree
Methods of the module object val WildcardTypeTree
Types
Tree an application of arguments.
Tree an application of arguments. It represents a single list of arguments, multiple argument lists will have nested Applys
Tree representing an assignment x = y in the source code
Tree representing an assignment x = y in the source code
Tree representing a block { ... } in the source code
Tree representing a block { ... } in the source code
Type of a by-name definition of type =>T.
Type of a by-name definition of type =>T.
May represent by-name parameter such as thunk in
def log[T](thunk: =>T): T = ...
May also represent a the return type of a parameterless method definition such as
def foo: Int = ...
Tree representing a class definition.
Tree representing a class definition. This includes anonymous class definitions and the class of a module object
A lambda (...) => ... in the source code is represented as
a local method and a closure:
A lambda (...) => ... in the source code is represented as
a local method and a closure:
{ def m(...) = ... closure(m) }
A singleton type representing a known constant value
A singleton type representing a known constant value
Tree representing a method definition in the source code
Tree representing a method definition in the source code
Tree representing a definition in the source code.
Tree representing a definition in the source code. It can be ClassDef, TypeDef, DefDef or ValDef
Tree representing an export clause in the source code.
Tree representing an export clause in the source code. Export forwarders generated from this clause appear in the same scope.
given import/export selector: .given/.{given T} in import foo.given/export foo.{given T}
given import/export selector: .given/.{given T} in import foo.given/export foo.{given T}
Tree representing a reference to definition with a given name
Tree representing a reference to definition with a given name
Tree representing an if/then/else if (...) ... else ... in the source code
Tree representing an if/then/else if (...) ... else ... in the source code
Tree representing an import in the source code.
Tree representing an import in the source code.
See also documentation on Selector.
Type of the definition of a method taking a single list of type or term parameters
Type of the definition of a method taking a single list of type or term parameters
Tree representing a literal value in the source code
Tree representing a literal value in the source code
Tree representing a pattern match x match { ... } in the source code
Tree representing a pattern match x match { ... } in the source code
Case of a MatchType containing pattern case P => R.
Case of a MatchType containing pattern case P => R.
Note: cases with type bindings are represented nested in a TypeLambda.
Type of the definition of a method taking a single list of type or term parameters
Type of the definition of a method taking a single list of type or term parameters
Type of the definition of a method taking a single list of parameters.
Type of the definition of a method taking a single list of parameters. It's return type may be a MethodType.
Tree representing an argument passed with an explicit name.
Tree representing an argument passed with an explicit name. Such as arg1 = x in foo(arg1 = x)
Omit import/export selector: .{bar => _} in import foo.{bar => _}
Omit import/export selector: .{bar => _} in import foo.{bar => _}
Tree representing a package clause in the source code
Tree representing a package clause in the source code
package foo {
// package stats
}
or
package foo.bar
// package stats
A parameter clause [X1, ..., Xn] or (x1: X1, ..., xn: Xx)
A parameter clause [X1, ..., Xn] or (x1: X1, ..., xn: Xx)
[X1, ..., Xn] are represented with TypeParamClause and (x1: X1, ..., xn: Xx) are represented with TermParamClause
ParamClause encodes the following enumeration
enum ParamClause:
case TypeParamClause(params: List[TypeDef])
case TermParamClause(params: List[ValDef])
Type of the definition of a method taking a list of type parameters.
Type of the definition of a method taking a list of type parameters. It's return type may be a MethodType.
Rename import/export selector: .{bar => baz} in import foo.{bar => baz}
Rename import/export selector: .{bar => baz} in import foo.{bar => baz}
Tree representing a variable argument list in the source code
Tree representing a variable argument list in the source code
Tree representing a selection of definition with a given name on a given prefix
Tree representing a selection of definition with a given name on a given prefix
Tree representing a selection of definition with a given name on a given prefix and number of nested scopes of inlined trees
Tree representing a selection of definition with a given name on a given prefix and number of nested scopes of inlined trees
Import/Export selectors:
- SimpleSelector: .bar in import foo.bar
- RenameSelector: .{bar => baz} in export foo.{bar => baz}
- OmitSelector: .{bar => _} in import foo.{bar => _}
- GivenSelector: .given/.{given T} in export foo.given/import foo.{given T}
Import/Export selectors:
- SimpleSelector: .bar in import foo.bar
- RenameSelector: .{bar => baz} in export foo.{bar => baz}
- OmitSelector: .{bar => _} in import foo.{bar => _}
- GivenSelector: .given/.{given T} in export foo.given/import foo.{given T}
Simple import/export selector: .bar in import foo.bar
Simple import/export selector: .bar in import foo.bar
Tree representing a summoning match summonFrom { ... } in the source code
Tree representing a summoning match summonFrom { ... } in the source code
Symbol of a definition.
Symbol of a definition. Then can be compared with == to know if the definition is the same.
Tree representing an expression in the source code
Tree representing an expression in the source code
A term parameter clause (x1: X1, ..., xn: Xx)
Can also be (implicit X1, ..., Xn), (given X1, ..., Xn) or (given x1: X1, ..., xn: Xn)
A term parameter clause (x1: X1, ..., xn: Xx)
Can also be (implicit X1, ..., Xn), (given X1, ..., Xn) or (given x1: X1, ..., xn: Xn)
Tree representing this or C.this in the source code
Tree representing this or C.this in the source code
Tree representing a try catch try x catch { ... } finally { ... } in the source code
Tree representing a try catch try x catch { ... } finally { ... } in the source code
Type tree within a block with aliases { type U1 = ... ; T[U1, U2] }
Type tree within a block with aliases { type U1 = ... ; T[U1, U2] }
Type tree representing a type bound written in the source
Type tree representing a type bound written in the source
Tree representing a type (parameter or member) definition in the source code
Tree representing a type (parameter or member) definition in the source code
Type tree representing a reference to definition with a given name
Type tree representing a reference to definition with a given name
Type of the definition of a type lambda taking a list of type parameters.
Type of the definition of a type lambda taking a list of type parameters. It's return type may be a TypeLambda.
Type tree representing a selection of definition with a given name on a given type prefix
Type tree representing a selection of definition with a given name on a given type prefix
A type, type constructors, type bounds or NoPrefix
A type, type constructors, type bounds or NoPrefix
Type tree representing a selection of definition with a given name on a given term prefix
Type tree representing a selection of definition with a given name on a given term prefix
Type tree representing a type written in the source
Type tree representing a type written in the source
Tree representing a type ascription x: T in the source code
Tree representing a type ascription x: T in the source code
Tree representing a value definition in the source code This includes val, lazy val, var, object and parameter definitions.
Tree representing a value definition in the source code This includes val, lazy val, var, object and parameter definitions.
Value members
Abstract fields
A lambda (...) => ... in the source code is represented as
a local method and a closure:
A lambda (...) => ... in the source code is represented as
a local method and a closure:
{
def m(...) = ...
closure(m)
}
- Note
Due to the encoding, in pattern matches the case for
Lambdashould come before the case forBlockto avoid mishandling ofLambda.
Module object of type Printer.
Module object of type Printer.
Contains custom printers such as TreeCode, TreeAnsiCode, TreeCases, TypeReprCode, ..., SymbolFullName and FlagsCombination.
Concrete fields
Default pinter for Constant used when calling const.show
Default pinter for Constant used when calling const.show
Default pinter for Tree used when calling tree.show
Default pinter for Tree used when calling tree.show
Givens
Givens
TypeTest that allows testing at runtime in a pattern match if a Tree is an Alternatives
TypeTest that allows testing at runtime in a pattern match if a Tree is an Alternatives
TypeTest that allows testing at runtime in a pattern match if an ImplicitSearchResult is an AmbiguousImplicits
TypeTest that allows testing at runtime in a pattern match if an ImplicitSearchResult is an AmbiguousImplicits
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is an AndOrType
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is an AndOrType
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is an AndType
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is an AndType
TypeTest that allows testing at runtime in a pattern match if a Tree is an Annotated
TypeTest that allows testing at runtime in a pattern match if a Tree is an Annotated
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is an AnnotatedType
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is an AnnotatedType
TypeTest that allows testing at runtime in a pattern match if a Tree is an Applied
TypeTest that allows testing at runtime in a pattern match if a Tree is an Applied
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is an AppliedType
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is an AppliedType
TypeTest that allows testing at runtime in a pattern match if a Tree is an Apply
TypeTest that allows testing at runtime in a pattern match if a Tree is an Apply
TypeTest that allows testing at runtime in a pattern match if a Tree is an Assign
TypeTest that allows testing at runtime in a pattern match if a Tree is an Assign
TypeTest that allows testing at runtime in a pattern match if a Tree is a Bind
TypeTest that allows testing at runtime in a pattern match if a Tree is a Bind
TypeTest that allows testing at runtime in a pattern match if a Tree is a Block
TypeTest that allows testing at runtime in a pattern match if a Tree is a Block
TypeTest that allows testing at runtime in a pattern match if a Constant is a BooleanConstant
TypeTest that allows testing at runtime in a pattern match if a Constant is a BooleanConstant
TypeTest that allows testing at runtime in a pattern match if a Tree is a ByName
TypeTest that allows testing at runtime in a pattern match if a Tree is a ByName
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a ByNameType
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a ByNameType
TypeTest that allows testing at runtime in a pattern match if a Constant is a ByteConstant
TypeTest that allows testing at runtime in a pattern match if a Constant is a ByteConstant
TypeTest that allows testing at runtime in a pattern match if a Tree is a CaseDef
TypeTest that allows testing at runtime in a pattern match if a Tree is a CaseDef
TypeTest that allows testing at runtime in a pattern match if a Constant is a CharConstant
TypeTest that allows testing at runtime in a pattern match if a Constant is a CharConstant
TypeTest that allows testing at runtime in a pattern match if a Tree is a ClassDef
TypeTest that allows testing at runtime in a pattern match if a Tree is a ClassDef
TypeTest that allows testing at runtime in a pattern match if a Constant is a ClassOfConstant
TypeTest that allows testing at runtime in a pattern match if a Constant is a ClassOfConstant
TypeTest that allows testing at runtime in a pattern match if a Tree is a Closure
TypeTest that allows testing at runtime in a pattern match if a Tree is a Closure
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a ConstantType
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a ConstantType
TypeTest that allows testing at runtime in a pattern match if a Tree is a DefDef
TypeTest that allows testing at runtime in a pattern match if a Tree is a DefDef
TypeTest that allows testing at runtime in a pattern match if a Tree is a Definition
TypeTest that allows testing at runtime in a pattern match if a Tree is a Definition
TypeTest that allows testing at runtime in a pattern match if an ImplicitSearchResult is a DivergingImplicit
TypeTest that allows testing at runtime in a pattern match if an ImplicitSearchResult is a DivergingImplicit
TypeTest that allows testing at runtime in a pattern match if a Constant is a DoubleConstant
TypeTest that allows testing at runtime in a pattern match if a Constant is a DoubleConstant
TypeTest that allows testing at runtime in a pattern match if a Tree is an Export
TypeTest that allows testing at runtime in a pattern match if a Tree is an Export
TypeTest that allows testing at runtime in a pattern match if a Constant is a FloatConstant
TypeTest that allows testing at runtime in a pattern match if a Constant is a FloatConstant
TypeTest that allows testing at runtime in a pattern match if an Selector is a GivenSelector
TypeTest that allows testing at runtime in a pattern match if an Selector is a GivenSelector
TypeTest that allows testing at runtime in a pattern match if a Tree is an Ident
TypeTest that allows testing at runtime in a pattern match if a Tree is an Ident
TypeTest that allows testing at runtime in a pattern match if a Tree is an If
TypeTest that allows testing at runtime in a pattern match if a Tree is an If
TypeTest that allows testing at runtime in a pattern match if an ImplicitSearchResult is an ImplicitSearchFailure
TypeTest that allows testing at runtime in a pattern match if an ImplicitSearchResult is an ImplicitSearchFailure
TypeTest that allows testing at runtime in a pattern match if an ImplicitSearchResult is an ImplicitSearchSuccess
TypeTest that allows testing at runtime in a pattern match if an ImplicitSearchResult is an ImplicitSearchSuccess
TypeTest that allows testing at runtime in a pattern match if a Tree is an Import
TypeTest that allows testing at runtime in a pattern match if a Tree is an Import
TypeTest that allows testing at runtime in a pattern match if a Tree is an Inferred
TypeTest that allows testing at runtime in a pattern match if a Tree is an Inferred
TypeTest that allows testing at runtime in a pattern match if a Tree is an Inlined
TypeTest that allows testing at runtime in a pattern match if a Tree is an Inlined
TypeTest that allows testing at runtime in a pattern match if a Constant is a IntConstant
TypeTest that allows testing at runtime in a pattern match if a Constant is a IntConstant
TypeTest that allows testing at runtime in a pattern match if a Tree is a LambdaTypeTree
TypeTest that allows testing at runtime in a pattern match if a Tree is a LambdaTypeTree
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a LambdaType
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a LambdaType
TypeTest that allows testing at runtime in a pattern match if a Tree is a Literal
TypeTest that allows testing at runtime in a pattern match if a Tree is a Literal
TypeTest that allows testing at runtime in a pattern match if a Constant is a LongConstant
TypeTest that allows testing at runtime in a pattern match if a Constant is a LongConstant
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a MatchCase
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a MatchCase
TypeTest that allows testing at runtime in a pattern match if a Tree is a Match
TypeTest that allows testing at runtime in a pattern match if a Tree is a Match
TypeTest that allows testing at runtime in a pattern match if a Tree is a MatchTypeTree
TypeTest that allows testing at runtime in a pattern match if a Tree is a MatchTypeTree
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a MatchType
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a MatchType
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a MethodOrPoly
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a MethodOrPoly
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a MethodType
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a MethodType
TypeTest that allows testing at runtime in a pattern match if a Tree is a NamedArg
TypeTest that allows testing at runtime in a pattern match if a Tree is a NamedArg
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a NamedType
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a NamedType
TypeTest that allows testing at runtime in a pattern match if a Tree is a New
TypeTest that allows testing at runtime in a pattern match if a Tree is a New
TypeTest that allows testing at runtime in a pattern match if an ImplicitSearchResult is a NoMatchingImplicits
TypeTest that allows testing at runtime in a pattern match if an ImplicitSearchResult is a NoMatchingImplicits
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a NoPrefix
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a NoPrefix
TypeTest that allows testing at runtime in a pattern match if a Constant is a NullConstant
TypeTest that allows testing at runtime in a pattern match if a Constant is a NullConstant
TypeTest that allows testing at runtime in a pattern match if a Selector is an OmitSelector
TypeTest that allows testing at runtime in a pattern match if a Selector is an OmitSelector
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is an OrType
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is an OrType
TypeTest that allows testing at runtime in a pattern match if a Tree is a PackageClause
TypeTest that allows testing at runtime in a pattern match if a Tree is a PackageClause
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a ParamRef
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a ParamRef
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a PolyType
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a PolyType
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a RecursiveThis
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a RecursiveThis
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a RecursiveType
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a RecursiveType
TypeTest that allows testing at runtime in a pattern match if a Tree is a Ref
TypeTest that allows testing at runtime in a pattern match if a Tree is a Ref
TypeTest that allows testing at runtime in a pattern match if a Tree is a Refined
TypeTest that allows testing at runtime in a pattern match if a Tree is a Refined
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a Refinement
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a Refinement
TypeTest that allows testing at runtime in a pattern match if a Selector is a RenameSelector
TypeTest that allows testing at runtime in a pattern match if a Selector is a RenameSelector
TypeTest that allows testing at runtime in a pattern match if a Tree is a Repeated
TypeTest that allows testing at runtime in a pattern match if a Tree is a Repeated
TypeTest that allows testing at runtime in a pattern match if a Tree is a Return
TypeTest that allows testing at runtime in a pattern match if a Tree is a Return
TypeTest that allows testing at runtime in a pattern match if a Tree is a SelectOuter
TypeTest that allows testing at runtime in a pattern match if a Tree is a SelectOuter
TypeTest that allows testing at runtime in a pattern match if a Tree is a Select
TypeTest that allows testing at runtime in a pattern match if a Tree is a Select
TypeTest that allows testing at runtime in a pattern match if a Constant is a ShortConstant
TypeTest that allows testing at runtime in a pattern match if a Constant is a ShortConstant
TypeTest that allows testing at runtime in a pattern match if a Selector is a SimpleSelector
TypeTest that allows testing at runtime in a pattern match if a Selector is a SimpleSelector
TypeTest that allows testing at runtime in a pattern match if a Tree is a Singleton
TypeTest that allows testing at runtime in a pattern match if a Tree is a Singleton
TypeTest that allows testing at runtime in a pattern match if a Tree is a Statement
TypeTest that allows testing at runtime in a pattern match if a Tree is a Statement
TypeTest that allows testing at runtime in a pattern match if a Constant is a StringConstant
TypeTest that allows testing at runtime in a pattern match if a Constant is a StringConstant
TypeTest that allows testing at runtime in a pattern match if a Tree is a SummonFrom
TypeTest that allows testing at runtime in a pattern match if a Tree is a SummonFrom
TypeTest that allows testing at runtime in a pattern match if a Tree is a Super
TypeTest that allows testing at runtime in a pattern match if a Tree is a Super
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a SuperType
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a SuperType
Extension methods of TermParamClause
Extension methods of TermParamClause
TypeTest that allows testing at runtime in a pattern match if a ParamClause is a TermParamClause
TypeTest that allows testing at runtime in a pattern match if a ParamClause is a TermParamClause
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a TermRef
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a TermRef
TypeTest that allows testing at runtime in a pattern match if a Tree is a Term
TypeTest that allows testing at runtime in a pattern match if a Tree is a Term
TypeTest that allows testing at runtime in a pattern match if a Tree is a This
TypeTest that allows testing at runtime in a pattern match if a Tree is a This
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a ThisType
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a ThisType
TypeTest that allows testing at runtime in a pattern match if a Tree is a Try
TypeTest that allows testing at runtime in a pattern match if a Tree is a Try
TypeTest that allows testing at runtime in a pattern match if a Tree is a TypeApply
TypeTest that allows testing at runtime in a pattern match if a Tree is a TypeApply
TypeTest that allows testing at runtime in a pattern match if a Tree is a TypeBind
TypeTest that allows testing at runtime in a pattern match if a Tree is a TypeBind
TypeTest that allows testing at runtime in a pattern match if a Tree is a TypeBlock
TypeTest that allows testing at runtime in a pattern match if a Tree is a TypeBlock
TypeTest that allows testing at runtime in a pattern match if a Tree is a TypeBoundsTree
TypeTest that allows testing at runtime in a pattern match if a Tree is a TypeBoundsTree
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a TypeBounds
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a TypeBounds
TypeTest that allows testing at runtime in a pattern match if a Tree is a TypeCaseDef
TypeTest that allows testing at runtime in a pattern match if a Tree is a TypeCaseDef
TypeTest that allows testing at runtime in a pattern match if a Tree is a TypeDef
TypeTest that allows testing at runtime in a pattern match if a Tree is a TypeDef
TypeTest that allows testing at runtime in a pattern match if a Tree is a TypeIdent
TypeTest that allows testing at runtime in a pattern match if a Tree is a TypeIdent
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a TypeLambda
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a TypeLambda
Extension methods of TypeParamClause
Extension methods of TypeParamClause
TypeTest that allows testing at runtime in a pattern match if a ParamClause is a TypeParamClause
TypeTest that allows testing at runtime in a pattern match if a ParamClause is a TypeParamClause
TypeTest that allows testing at runtime in a pattern match if a Tree is a TypeProjection
TypeTest that allows testing at runtime in a pattern match if a Tree is a TypeProjection
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a TypeRef
TypeTest that allows testing at runtime in a pattern match if a TypeRepr is a TypeRef
TypeTest that allows testing at runtime in a pattern match if a Tree is a TypeSelect
TypeTest that allows testing at runtime in a pattern match if a Tree is a TypeSelect
TypeTest that allows testing at runtime in a pattern match if a Tree is a TypeTree
TypeTest that allows testing at runtime in a pattern match if a Tree is a TypeTree
TypeTest that allows testing at runtime in a pattern match if a Tree is a Typed
TypeTest that allows testing at runtime in a pattern match if a Tree is a Typed
TypeTest that allows testing at runtime in a pattern match if a Tree is an Unapply
TypeTest that allows testing at runtime in a pattern match if a Tree is an Unapply
TypeTest that allows testing at runtime in a pattern match if a Constant is a UnitConstant
TypeTest that allows testing at runtime in a pattern match if a Constant is a UnitConstant
TypeTest that allows testing at runtime in a pattern match if a Tree is a ValDef
TypeTest that allows testing at runtime in a pattern match if a Tree is a ValDef
TypeTest that allows testing at runtime in a pattern match if a Tree is a While
TypeTest that allows testing at runtime in a pattern match if a Tree is a While
Extension methods of WildcardTypeTree
Extension methods of WildcardTypeTree