reflectModule
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 -+- Wildcard
| | +- Select
| |
| +- Literal
| +- This
| +- New
| +- NamedArg
| +- Apply
| +- TypeApply
| +- Super
| +- Assign
| +- Block
| +- Closure
| +- If
| +- Match
| +- SummonFrom
| +- Try
| +- Return
| +- Repeated
| +- Inlined
| +- SelectOuter
| +- While
| +---+- Typed
| /
+- TypedOrTest +----------------ยท
+- Bind
+- Unapply
+- Alternatives
|
+- CaseDef
+- TypeCaseDef
|
+- TypeTree ----+- Inferred
| +- TypeIdent
| +- TypeSelect
| +- TypeProjection
| +- Singleton
| +- Refined
| +- Applied
| +- Annotated
| +- MatchTypeTree
| +- ByName
| +- LambdaTypeTree
| +- TypeBind
| +- TypeBlock
|
+- TypeBoundsTree
+- WildcardTypeTree
+- 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 AndType
Methods of the module object val AndType
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 Applied
Methods of the module object val Applied
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 CaseDef
Methods of the module object val CaseDef
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 Closure
Methods of the module object val Closure
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
Extension methods of ImplicitSearchFailure
Extension methods of ImplicitSearchFailure
Extension methods of ImplicitSearchSuccess
Extension methods of ImplicitSearchSuccess
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 Inlined
Methods of the module object val Inlined
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 Literal
Methods of the module object val Literal
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 Printer
Methods of the module object val Printer
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 Refined
Methods of the module object val Refined
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
Extension methods of TermParamClause
Extension methods of TermParamClause
Methods of the module object val TermParamClause
Methods of the module object val TermParamClause
Methods of the module object val TermRef
Methods of the module object val TermRef
Methods of the module object val ThisType
Methods of the module object val ThisType
Customizable Tree accumulator.
Customizable Tree accumulator.
Usage:
class MyTreeAccumulator[X] extends TreeAccumulator[X] {
def foldTree(x: X, tree: Tree)(owner: Symbol): X = ???
}
Customizable tree mapper.
Customizable tree mapper.
Usage:
class MyTreeMap extends TreeMap {
override def transformTree(tree: Tree)(owner: Symbol): Tree = ???
}
Use Symbol.asQuotes to create quotes with the correct owner within the TreeMap.
Customizable tree traverser.
Customizable tree traverser.
Usage:
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 TypeDef
Methods of the module object val TypeDef
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
Extension methods of TypeParamClause
Extension methods of TypeParamClause
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 TypeRef
Methods of the module object val TypeRef
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
Extension methods of TypedOrTest
Extension methods of TypedOrTest
Methods of the module object val TypedOrTest
Methods of the module object val TypedOrTest
Methods of the module object val Unapply
Methods of the module object val Unapply
Methods of the module object val UnitConstant
Methods of the module object val UnitConstant
Methods of the module object val Wildcard
Methods of the module object val Wildcard
Extension methods of WildcardTypeTree
Extension methods of WildcardTypeTree
Methods of the module object val WildcardTypeTree
Methods of the module object val WildcardTypeTree
Types
Tree representing an application of arguments.
It represents a single list of arguments, multiple argument lists will have nested Applys
Tree representing 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
type T
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. This includes anonymous class definitions and the class of a module object
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. It can be ClassDef, TypeDef, DefDef or ValDef
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. Export forwarders generated from this clause appear in the same scope.
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. It's return type may be a MethodType.
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. Such as arg1 = x in foo(arg1 = x)
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. It's return type may be a MethodType.
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:
Import/Export selectors:
- SimpleSelector:
.barinimport foo.bar - RenameSelector:
.{bar => baz}inexport foo.{bar => baz} - OmitSelector:
.{bar => _}inimport foo.{bar => _} - GivenSelector:
.given/.{given T}inexport 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.
Symbols can be compared with == to know if two definitions are the same.
Symbol of a definition.
Symbols can be compared with == to know if two definitions are 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
Tree representing an application of type arguments
Tree representing an application of type arguments
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. It's return type may be a TypeLambda.
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.
Also represents a pattern that contains a term x.
Other : T patterns use the more general TypedOrTest.
Tree representing a type ascription or type test pattern x: T in the source code.
Tree representing a type ascription or type test pattern 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.
Type tree representing wildcard type bounds written in the source.
The wildcard type _ (for example in in List[_]) will be a type tree that
represents a type but has TypeBounds inside.
Type tree representing wildcard type bounds written in the source.
The wildcard type _ (for example in in List[_]) will be a type tree that
represents a type but has TypeBounds inside.
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.
Contains custom printers such as TreeCode, TreeAnsiCode, TreeCases, TypeReprCode, ..., SymbolFullName and FlagsCombination.
Module object of type Printer.
Contains custom printers such as TreeCode, TreeAnsiCode, TreeCases, TypeReprCode, ..., SymbolFullName and FlagsCombination.
Givens
Givens
Makes extension methods on Alternatives available without any imports
Makes extension methods on Alternatives available without any imports
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
Makes extension methods on AndOrType available without any imports
Makes extension methods on AndOrType available without any imports
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
Makes extension methods on Annotated available without any imports
Makes extension methods on Annotated available without any imports
Makes extension methods on AnnotatedType available without any imports
Makes extension methods on AnnotatedType available without any imports
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
Makes extension methods on Applied available without any imports
Makes extension methods on Applied available without any imports
Makes extension methods on AppliedType available without any imports
Makes extension methods on AppliedType available without any imports
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
Makes extension methods on Apply available without any imports
Makes extension methods on Apply available without any imports
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
Makes extension methods on Assign available without any imports
Makes extension methods on Assign available without any imports
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
Makes extension methods on Bind available without any imports
Makes extension methods on Bind available without any imports
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
Makes extension methods on Block available without any imports
Makes extension methods on Block available without any imports
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
Makes extension methods on ByName available without any imports
Makes extension methods on ByName available without any imports
Makes extension methods on ByNameType available without any imports
Makes extension methods on ByNameType available without any imports
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
Makes extension methods on CaseDef available without any imports
Makes extension methods on CaseDef available without any imports
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
Makes extension methods on ClassDef available without any imports
Makes extension methods on ClassDef available without any imports
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
Makes extension methods on Closure available without any imports
Makes extension methods on Closure available without any imports
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
Makes extension methods on Constant available without any imports
Makes extension methods on Constant available without any imports
Default pinter for Constant used when calling const.show
Default pinter for Constant used when calling const.show
Makes extension methods on ConstantType available without any imports
Makes extension methods on ConstantType available without any imports
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
Makes extension methods on DefDef available without any imports
Makes extension methods on DefDef available without any imports
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
Makes extension methods on Definition available without any imports
Makes extension methods on Definition available without any imports
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
Makes extension methods on Export available without any imports
Makes extension methods on Export available without any imports
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
Makes extension methods on Flags available without any imports
Makes extension methods on Flags available without any imports
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
Makes extension methods on GivenSelector available without any imports
Makes extension methods on GivenSelector available without any imports
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
Makes extension methods on Ident available without any imports
Makes extension methods on Ident available without any imports
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
Makes extension methods on If available without any imports
Makes extension methods on If available without any imports
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
Makes extension methods on ImplicitSearchFailure available without any imports
Makes extension methods on ImplicitSearchFailure available without any imports
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
Makes extension methods on ImplicitSearchSuccess available without any imports
Makes extension methods on ImplicitSearchSuccess available without any imports
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
Makes extension methods on Import available without any imports
Makes extension methods on Import available without any imports
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
Makes extension methods on Inlined available without any imports
Makes extension methods on Inlined available without any imports
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
Makes extension methods on LambdaType available without any imports
Makes extension methods on LambdaType available without any imports
Makes extension methods on LambdaTypeTree available without any imports
Makes extension methods on LambdaTypeTree available without any imports
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
Makes extension methods on Literal available without any imports
Makes extension methods on Literal available without any imports
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
Makes extension methods on MatchCase available without any imports
Makes extension methods on MatchCase available without any imports
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
Makes extension methods on Match available without any imports
Makes extension methods on Match available without any imports
Makes extension methods on MatchType available without any imports
Makes extension methods on MatchType available without any imports
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
Makes extension methods on MatchTypeTree available without any imports
Makes extension methods on MatchTypeTree available without any imports
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
Makes extension methods on MethodType available without any imports
Makes extension methods on MethodType available without any imports
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
Makes extension methods on NamedArg available without any imports
Makes extension methods on NamedArg available without any imports
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
Makes extension methods on NamedType available without any imports
Makes extension methods on NamedType available without any imports
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
Makes extension methods on New available without any imports
Makes extension methods on New available without any imports
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
Makes extension methods on OmitSelector available without any imports
Makes extension methods on OmitSelector available without any imports
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
Makes extension methods on PackageClause available without any imports
Makes extension methods on PackageClause available without any imports
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
Makes extension methods on ParamClause available without any imports
Makes extension methods on ParamClause available without any imports
Makes extension methods on ParamRef available without any imports
Makes extension methods on ParamRef available without any imports
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
Makes extension methods on PolyType available without any imports
Makes extension methods on PolyType available without any imports
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
Makes extension methods on Position available without any imports
Makes extension methods on Position available without any imports
Makes extension methods on RecursiveThis available without any imports
Makes extension methods on RecursiveThis available without any imports
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
Makes extension methods on RecursiveType available without any imports
Makes extension methods on RecursiveType available without any imports
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
Makes extension methods on Refined available without any imports
Makes extension methods on Refined available without any imports
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
Makes extension methods on Refinement available without any imports
Makes extension methods on Refinement available without any imports
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
Makes extension methods on RenameSelector available without any imports
Makes extension methods on RenameSelector available without any imports
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
Makes extension methods on Repeated available without any imports
Makes extension methods on Repeated available without any imports
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
Makes extension methods on Return available without any imports
Makes extension methods on Return available without any imports
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
Makes extension methods on Select available without any imports
Makes extension methods on Select available without any imports
Makes extension methods on SelectOuter available without any imports
Makes extension methods on SelectOuter available without any imports
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
Makes extension methods on Signature available without any imports
Makes extension methods on Signature available without any imports
Makes extension methods on SimpleSelector available without any imports
Makes extension methods on SimpleSelector available without any imports
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
Makes extension methods on Singleton available without any imports
Makes extension methods on Singleton available without any imports
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
Makes extension methods on SourceFile available without any imports
Makes extension methods on SourceFile available without any imports
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
Makes extension methods on SummonFrom available without any imports
Makes extension methods on SummonFrom available without any imports
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
Makes extension methods on Super available without any imports
Makes extension methods on Super available without any imports
Makes extension methods on SuperType available without any imports
Makes extension methods on SuperType available without any imports
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
Makes extension methods on Symbol available without any imports
Makes extension methods on Symbol available without any imports
Makes extension methods on Term available without any imports
Makes extension methods on Term available without any imports
Makes extension methods on TermParamClause available without any imports
Makes extension methods on TermParamClause available without any imports
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
Makes extension methods on This available without any imports
Makes extension methods on This available without any imports
Makes extension methods on ThisType available without any imports
Makes extension methods on ThisType available without any imports
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
Makes extension methods on Tree available without any imports
Makes extension methods on Tree available without any imports
Default pinter for Tree used when calling tree.show
Default pinter for Tree used when calling tree.show
Makes extension methods on Try available without any imports
Makes extension methods on Try available without any imports
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
Makes extension methods on TypeApply available without any imports
Makes extension methods on TypeApply available without any imports
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
Makes extension methods on TypeBind available without any imports
Makes extension methods on TypeBind available without any imports
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
Makes extension methods on TypeBlock available without any imports
Makes extension methods on TypeBlock available without any imports
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
Makes extension methods on TypeBounds available without any imports
Makes extension methods on TypeBounds available without any imports
Makes extension methods on TypeBoundsTree available without any imports
Makes extension methods on TypeBoundsTree available without any imports
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
Makes extension methods on TypeCaseDef available without any imports
Makes extension methods on TypeCaseDef available without any imports
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
Makes extension methods on TypeDef available without any imports
Makes extension methods on TypeDef available without any imports
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
Makes extension methods on TypeIdent available without any imports
Makes extension methods on TypeIdent available without any imports
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
Makes extension methods on TypeLambda available without any imports
Makes extension methods on TypeLambda available without any imports
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
Makes extension methods on TypeParamClause available without any imports
Makes extension methods on TypeParamClause available without any imports
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
Makes extension methods on TypeProjection available without any imports
Makes extension methods on TypeProjection available without any imports
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
Makes extension methods on TypeRef available without any imports
Makes extension methods on TypeRef available without any imports
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
Makes extension methods on TypeRepr available without any imports
Makes extension methods on TypeRepr available without any imports
Default pinter for TypeRepr used when calling tpe.show
Default pinter for TypeRepr used when calling tpe.show
Makes extension methods on TypeSelect available without any imports
Makes extension methods on TypeSelect available without any imports
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
Makes extension methods on TypeTree available without any imports
Makes extension methods on TypeTree available without any imports
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
Makes extension methods on Typed available without any imports
Makes extension methods on Typed available without any imports
Makes extension methods on TypedOrTest available without any imports
Makes extension methods on TypedOrTest available without any imports
TypeTest that allows testing at runtime in a pattern match if a Tree is a TypedOrTest
TypeTest that allows testing at runtime in a pattern match if a Tree is a TypedOrTest
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
Makes extension methods on Unapply available without any imports
Makes extension methods on Unapply available without any imports
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
Makes extension methods on ValDef available without any imports
Makes extension methods on ValDef available without any imports
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
Makes extension methods on While available without any imports
Makes extension methods on While available without any imports
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
TypeTest that allows testing at runtime in a pattern match if a Tree is a Wildcard
TypeTest that allows testing at runtime in a pattern match if a Tree is a Wildcard
Makes extension methods on WildcardTypeTree available without any imports
Makes extension methods on WildcardTypeTree available without any imports