T trait

Reflection

extends Object with Types

TASTy Reflect Interface.

Provides all functionality related with AST based metaprogramming.

Supertypes

Object, Types

Members

object 

Alternatives

object 

AndType

object 

Annotated

object 

AnnotatedType

object 

Applied

object 

AppliedType

object 

Apply

Scala parameter application

Scala parameter application

object 

Assign

Scala assign x = y

Scala assign x = y

object 

Bind

object 

Block

Scala code block { stat0; ...; statN; expr } term

Scala code block { stat0; ...; statN; expr } term

object 

ByName

object 

ByNameType

object 

CaseDef

object 

ClassDef

object 

Closure

object 

Comment

object 

Constant

Module of Constant literals

Module of Constant literals

object 

ConstantType

object 

DefDef

object 

Definition

object 

Flags

object 

GivenMatch

Scala implicit match term

Scala implicit match term

object 

Id

object 

Ident

Scala term identifier

Scala term identifier

object 

If

Scala if/else term

Scala if/else term

object 

Import

object 

Inferred

TypeTree containing an inferred type

TypeTree containing an inferred type

object 

Inlined

object 

Lambda

A lambda (...) => ... in the source code is represented as a local method and a closure:

{ def m(...) = ... closure(m) }

A lambda (...) => ... in the source code is represented as a local method and a closure:

{ def m(...) = ... closure(m) }

object 

LambdaTypeTree

object 

Literal

Scala literal constant

Scala literal constant

object 

Match

Scala match term

Scala match term

object 

MatchType

object 

MatchTypeTree

object 

MethodType

object 

NamedArg

Scala named argument x = y in argument position

Scala named argument x = y in argument position

object 

New

Scala new

Scala new

object 

NoPrefix

object 

OmitSelector

object 

OrType

object 

PackageClause

object 

PackageDef

object 

ParamRef

object 

PolyType

object 

Position

object 

Projection

object 

RecursiveThis

object 

RecursiveType

object 

Ref

object 

Refined

object 

Refinement

object 

RenameSelector

object 

Repeated

object 

Return

Scala local return

Scala local return

object 

Select

Scala term selection

Scala term selection

object 

SelectOuter

object 

Signature

The signature of a method

The signature of a method

object 

SimpleSelector

object 

Singleton

object 

Source

object 

SourceFile

trait 

StandardSymbols

Defines standard symbols (and types via its base trait).

Defines standard symbols (and types via its base trait).

trait 

StandardTypes

Defines standard types.

Defines standard types.

object 

Super

Scala x.super or x.super[id]

Scala x.super or x.super[id]

object 

SuperType

object 

Symbol

object 

Term

object 

TermRef

object 

This

Scala this or this[id]

Scala this or this[id]

object 

ThisType

object 

Tree

trait 

TreeAccumulator

[X]

TASTy Reflect tree accumulator

TASTy Reflect tree accumulator

trait 

TreeMap

TASTy Reflect tree map

TASTy Reflect tree map

trait 

TreeTraverser

TASTy Reflect tree traverser

TASTy Reflect tree traverser

object 

Try

Scala try/catch/finally term

Scala try/catch/finally term

object 

Type

object 

TypeApply

Scala type parameter application

Scala type parameter application

object 

TypeBind

object 

TypeBlock

object 

TypeBounds

object 

TypeBoundsTree

object 

TypeCaseDef

object 

TypeDef

object 

TypeIdent

object 

TypeLambda

object 

TypeOrBoundsOps

object 

TypeRef

object 

TypeSelect

object 

TypeTree

object 

Typed

Scala ascription x: T

Scala ascription x: T

object 

Unapply

object 

ValDef

object 

While

object 

WildcardTypeTree

object 

defn

A value containing all standard definitions in [[DefinitionsAPI]]

A value containing all standard definitions in [[DefinitionsAPI]]

final given def 

AlternativesOps

: Alternatives.type

final given def 

AndTypeOps

: AndType.type

final given def 

AnnotatedOps

: Annotated.type

final given def 

AnnotatedTypeOps

: AnnotatedType.type

final given def 

AppliedOps

: Applied.type

final given def 

AppliedTypeOps

: AppliedType.type

final given def 

ApplyOps

: Apply.type

final given def 

AssignOps

: Assign.type

final given def 

BindOps

: Bind.type

final given def 

BlockOps

: Block.type

final given def 

ByNameOps

: ByName.type

final given def 

ByNameTypeOps

: ByNameType.type

final given def 

CaseDefOps

: CaseDef.type

final given def 

ClassDefOps

: ClassDef.type

final given def 

ClosureOps

: Closure.type

final given def 

CommentOps

: Comment.type

final given def 

ConstantOps

: Constant.type

final given def 

ConstantTypeOps

: ConstantType.type

final given def 

DefDefOps

: DefDef.type

final given def 

DefinitionOps

: Definition.type

final given def 

FlagsOps

: Flags.type

final given def 

GivenMatchOps

: GivenMatch.type

final given def 

IdOps

: Id.type

final given def 

IdentOps

: Ident.type

final given def 

IfOps

: If.type

final given def 

ImplicitSearchFailureOps

: ImplicitSearchFailure.type

final given def 

ImplicitSearchSuccessOps

: ImplicitSearchSuccess.type

final given def 

ImportOps

: Import.type

final given def 

InlinedOps

: Inlined.type

final given def 

LambdaTypeTreeOps

: LambdaTypeTree.type

final given def 

LiteralOps

: Literal.type

def 

MatchCaseType

( implicit  ctx: Context ) : Type

An accessor for scala.internal.MatchCase[_,_], the representation of a MatchType case.

An accessor for scala.internal.MatchCase[_,_], the representation of a MatchType case.

final given def 

MatchOps

: Match.type

final given def 

MatchTypeOps

: MatchType.type

final given def 

MatchTypeTreeOps

: MatchTypeTree.type

final given def 

MethodTypeOps

: MethodType.type

final given def 

NamedArgOps

: NamedArg.type

final given def 

NewOps

: New.type

final given def 

OmitSelectorOmitSelectorOps

: OmitSelector.type

final given def 

OrTypeOps

: OrType.type

final given def 

PackageClauseOps

: PackageClause.type

final given def 

PackageDefOps

: PackageDef.type

final given def 

ParamRefOps

: ParamRef.type

final given def 

PolyTypeOps

: PolyType.type

final given def 

PositionOps

: Position.type

final given def 

ProjectionOps

: Projection.type

final given def 

RecursiveThisOps

: RecursiveThis.type

final given def 

RecursiveTypeOps

: RecursiveType.type

final given def 

RefinedOps

: Refined.type

final given def 

RefinementOps

: Refinement.type

final given def 

RenameSelectorOps

: RenameSelector.type

final given def 

RepeatedOps

: Repeated.type

final given def 

ReturnOps

: Return.type

final given def 

SelectOps

: Select.type

final given def 

SelectOuterOps

: SelectOuter.type

final given def 

SignatureOps

: Signature.type

final given def 

SimpleSelectorOps

: SimpleSelector.type

final given def 

SingletonOps

: Singleton.type

final given def 

SourceFileOps

: SourceFile.type

final given def 

SuperOps

: Super.type

final given def 

SuperTypeOps

: SuperType.type

final given def 

SymbolOps

: Symbol.type

final given def 

TermOps

: Term.type

final given def 

TermRefOps

: TermRef.type

final given def 

ThisOps

: This.type

final given def 

ThisTypeOps

: ThisType.type

final given def 

TreeOps

: Tree.type

final given def 

TryOps

: Try.type

final given def 

TypeApplyOps

: TypeApply.type

final given def 

TypeBindOps

: TypeBind.type

final given def 

TypeBlockOps

: TypeBlock.type

final given def 

TypeBoundsOps

: TypeBounds.type

final given def 

TypeBoundsTreeOps

: TypeBoundsTree.type

final given def 

TypeCaseDefOps

: TypeCaseDef.type

final given def 

TypeDefOps

: TypeDef.type

final given def 

TypeIdentOps

: TypeIdent.type

final given def 

TypeLambdaOps

: TypeLambda.type

final given def 

TypeOps

: Type.type

final given def 

TypeRefOps

: TypeRef.type

final given def 

TypeSelectOps

: TypeSelect.type

final given def 

TypeTreeOps

: TypeTree.type

final given def 

TypedOps

: Typed.type

final given def 

UnapplyOps

: Unapply.type

final given def 

ValDefOps

: ValDef.type

final given def 

WhileOps

: While.type

final given def 

WildcardTypeTreeOps

: WildcardTypeTree.type

def 

error

( msg: => String pos: Position ) ( implicit  ctx: Context ) : Unit

Emits an error message

Emits an error message

def 

error

( msg: => String source: SourceFile start: Int end: Int ) ( implicit  ctx: Context ) : Unit

Emits an error at a specific range of a file

Emits an error at a specific range of a file

final given def 

given_Context

: Context

final given def 

given_TypeTest_ImplicitSearchResult_AmbiguousImplicits

( implicit  ctx: Context ) : TypeTest[ImplicitSearchResult,AmbiguousImplicits]

final given def 

given_TypeTest_ImplicitSearchResult_DivergingImplicit

( implicit  ctx: Context ) : TypeTest[ImplicitSearchResult,DivergingImplicit]

final given def 

given_TypeTest_ImplicitSearchResult_ImplicitSearchFailure

( implicit  ctx: Context ) : TypeTest[ImplicitSearchResult,ImplicitSearchFailure]

final given def 

given_TypeTest_ImplicitSearchResult_ImplicitSearchSuccess

( implicit  ctx: Context ) : TypeTest[ImplicitSearchResult,ImplicitSearchSuccess]

final given def 

given_TypeTest_ImplicitSearchResult_NoMatchingImplicits

( implicit  ctx: Context ) : TypeTest[ImplicitSearchResult,NoMatchingImplicits]

final given def 

given_TypeTest_ImportSelector_OmitSelector

( implicit  ctx: Context ) : TypeTest[ImportSelector,OmitSelector]

final given def 

given_TypeTest_ImportSelector_RenameSelector

( implicit  ctx: Context ) : TypeTest[ImportSelector,RenameSelector]

final given def 

given_TypeTest_ImportSelector_SimpleSelector

( implicit  ctx: Context ) : TypeTest[ImportSelector,SimpleSelector]

final given def 

given_TypeTest_Tree_Alternatives

( implicit  ctx: Context ) : TypeTest[Tree,Alternatives]

final given def 

given_TypeTest_Tree_Annotated

( implicit  ctx: Context ) : TypeTest[Tree,Annotated]

final given def 

given_TypeTest_Tree_Applied

( implicit  ctx: Context ) : TypeTest[Tree,Applied]

final given def 

given_TypeTest_Tree_Apply

( implicit  ctx: Context ) : TypeTest[Tree,Apply]

final given def 

given_TypeTest_Tree_Assign

( implicit  ctx: Context ) : TypeTest[Tree,Assign]

final given def 

given_TypeTest_Tree_Bind

( implicit  ctx: Context ) : TypeTest[Tree,Bind]

final given def 

given_TypeTest_Tree_Block

( implicit  ctx: Context ) : TypeTest[Tree,Block]

final given def 

given_TypeTest_Tree_ByName

( implicit  ctx: Context ) : TypeTest[Tree,ByName]

final given def 

given_TypeTest_Tree_CaseDef

( implicit  ctx: Context ) : TypeTest[Tree,CaseDef]

final given def 

given_TypeTest_Tree_ClassDef

( implicit  ctx: Context ) : TypeTest[Tree,ClassDef]

final given def 

given_TypeTest_Tree_Closure

( implicit  ctx: Context ) : TypeTest[Tree,Closure]

final given def 

given_TypeTest_Tree_DefDef

( implicit  ctx: Context ) : TypeTest[Tree,DefDef]

final given def 

given_TypeTest_Tree_Definition

( implicit  ctx: Context ) : TypeTest[Tree,Definition]

final given def 

given_TypeTest_Tree_GivenMatch

( implicit  ctx: Context ) : TypeTest[Tree,GivenMatch]

final given def 

given_TypeTest_Tree_Ident

( implicit  ctx: Context ) : TypeTest[Tree,Ident]

final given def 

given_TypeTest_Tree_If

( implicit  ctx: Context ) : TypeTest[Tree,If]

final given def 

given_TypeTest_Tree_Import

( implicit  ctx: Context ) : TypeTest[Tree,Import]

final given def 

given_TypeTest_Tree_Inferred

( implicit  ctx: Context ) : TypeTest[Tree,Inferred]

final given def 

given_TypeTest_Tree_Inlined

( implicit  ctx: Context ) : TypeTest[Tree,Inlined]

final given def 

given_TypeTest_Tree_LambdaTypeTree

( implicit  ctx: Context ) : TypeTest[Tree,LambdaTypeTree]

final given def 

given_TypeTest_Tree_Literal

( implicit  ctx: Context ) : TypeTest[Tree,Literal]

final given def 

given_TypeTest_Tree_Match

( implicit  ctx: Context ) : TypeTest[Tree,Match]

final given def 

given_TypeTest_Tree_MatchTypeTree

( implicit  ctx: Context ) : TypeTest[Tree,MatchTypeTree]

final given def 

given_TypeTest_Tree_NamedArg

( implicit  ctx: Context ) : TypeTest[Tree,NamedArg]

final given def 

given_TypeTest_Tree_New

( implicit  ctx: Context ) : TypeTest[Tree,New]

final given def 

given_TypeTest_Tree_PackageClause

( implicit  ctx: Context ) : TypeTest[Tree,PackageClause]

final given def 

given_TypeTest_Tree_PackageDef

( implicit  ctx: Context ) : TypeTest[Tree,PackageDef]

final given def 

given_TypeTest_Tree_Projection

( implicit  ctx: Context ) : TypeTest[Tree,Projection]

final given def 

given_TypeTest_Tree_Ref

( implicit  ctx: Context ) : TypeTest[Tree,Ref]

final given def 

given_TypeTest_Tree_Refined

( implicit  ctx: Context ) : TypeTest[Tree,Refined]

final given def 

given_TypeTest_Tree_Repeated

( implicit  ctx: Context ) : TypeTest[Tree,Repeated]

final given def 

given_TypeTest_Tree_Return

( implicit  ctx: Context ) : TypeTest[Tree,Return]

final given def 

given_TypeTest_Tree_Select

( implicit  ctx: Context ) : TypeTest[Tree,Select]

final given def 

given_TypeTest_Tree_SelectOuter

( implicit  ctx: Context ) : TypeTest[Tree,SelectOuter]

final given def 

given_TypeTest_Tree_Singleton

( implicit  ctx: Context ) : TypeTest[Tree,Singleton]

final given def 

given_TypeTest_Tree_Statement

( implicit  ctx: Context ) : TypeTest[Tree,Statement]

final given def 

given_TypeTest_Tree_Super

( implicit  ctx: Context ) : TypeTest[Tree,Super]

final given def 

given_TypeTest_Tree_Term

( implicit  ctx: Context ) : TypeTest[Tree,Term]

final given def 

given_TypeTest_Tree_This

( implicit  ctx: Context ) : TypeTest[Tree,This]

final given def 

given_TypeTest_Tree_Try

( implicit  ctx: Context ) : TypeTest[Tree,Try]

final given def 

given_TypeTest_Tree_TypeApply

( implicit  ctx: Context ) : TypeTest[Tree,TypeApply]

final given def 

given_TypeTest_Tree_TypeBind

( implicit  ctx: Context ) : TypeTest[Tree,TypeBind]

final given def 

given_TypeTest_Tree_TypeBlock

( implicit  ctx: Context ) : TypeTest[Tree,TypeBlock]

final given def 

given_TypeTest_Tree_TypeBoundsTree

( implicit  ctx: Context ) : TypeTest[Tree,TypeBoundsTree]

final given def 

given_TypeTest_Tree_TypeCaseDef

( implicit  ctx: Context ) : TypeTest[Tree,TypeCaseDef]

final given def 

given_TypeTest_Tree_TypeDef

( implicit  ctx: Context ) : TypeTest[Tree,TypeDef]

final given def 

given_TypeTest_Tree_TypeIdent

( implicit  ctx: Context ) : TypeTest[Tree,TypeIdent]

final given def 

given_TypeTest_Tree_TypeSelect

( implicit  ctx: Context ) : TypeTest[Tree,TypeSelect]

final given def 

given_TypeTest_Tree_TypeTree

( implicit  ctx: Context ) : TypeTest[Tree,TypeTree]

final given def 

given_TypeTest_Tree_Typed

( implicit  ctx: Context ) : TypeTest[Tree,Typed]

final given def 

given_TypeTest_Tree_Unapply

( implicit  ctx: Context ) : TypeTest[Tree,Unapply]

final given def 

given_TypeTest_Tree_ValDef

( implicit  ctx: Context ) : TypeTest[Tree,ValDef]

final given def 

given_TypeTest_Tree_While

( implicit  ctx: Context ) : TypeTest[Tree,While]

final given def 

given_TypeTest_Tree_WildcardTypeTree

( implicit  ctx: Context ) : TypeTest[Tree,WildcardTypeTree]

final given def 

given_TypeTest_TypeOrBounds_AndType

( implicit  ctx: Context ) : TypeTest[TypeOrBounds,AndType]

final given def 

given_TypeTest_TypeOrBounds_AnnotatedType

( implicit  ctx: Context ) : TypeTest[TypeOrBounds,AnnotatedType]

final given def 

given_TypeTest_TypeOrBounds_AppliedType

( implicit  ctx: Context ) : TypeTest[TypeOrBounds,AppliedType]

final given def 

given_TypeTest_TypeOrBounds_ByNameType

( implicit  ctx: Context ) : TypeTest[TypeOrBounds,ByNameType]

final given def 

given_TypeTest_TypeOrBounds_ConstantType

( implicit  ctx: Context ) : TypeTest[TypeOrBounds,ConstantType]

final given def 

given_TypeTest_TypeOrBounds_MatchType

( implicit  ctx: Context ) : TypeTest[TypeOrBounds,MatchType]

final given def 

given_TypeTest_TypeOrBounds_MethodType

( implicit  ctx: Context ) : TypeTest[TypeOrBounds,MethodType]

final given def 

given_TypeTest_TypeOrBounds_NoPrefix

( implicit  ctx: Context ) : TypeTest[TypeOrBounds,NoPrefix]

final given def 

given_TypeTest_TypeOrBounds_OrType

( implicit  ctx: Context ) : TypeTest[TypeOrBounds,OrType]

final given def 

given_TypeTest_TypeOrBounds_ParamRef

( implicit  ctx: Context ) : TypeTest[TypeOrBounds,ParamRef]

final given def 

given_TypeTest_TypeOrBounds_PolyType

( implicit  ctx: Context ) : TypeTest[TypeOrBounds,PolyType]

final given def 

given_TypeTest_TypeOrBounds_RecursiveThis

( implicit  ctx: Context ) : TypeTest[TypeOrBounds,RecursiveThis]

final given def 

given_TypeTest_TypeOrBounds_RecursiveType

( implicit  ctx: Context ) : TypeTest[TypeOrBounds,RecursiveType]

final given def 

given_TypeTest_TypeOrBounds_Refinement

( implicit  ctx: Context ) : TypeTest[TypeOrBounds,Refinement]

final given def 

given_TypeTest_TypeOrBounds_SuperType

( implicit  ctx: Context ) : TypeTest[TypeOrBounds,SuperType]

final given def 

given_TypeTest_TypeOrBounds_TermRef

( implicit  ctx: Context ) : TypeTest[TypeOrBounds,TermRef]

final given def 

given_TypeTest_TypeOrBounds_ThisType

( implicit  ctx: Context ) : TypeTest[TypeOrBounds,ThisType]

final given def 

given_TypeTest_TypeOrBounds_Type

( implicit  ctx: Context ) : TypeTest[TypeOrBounds,Type]

final given def 

given_TypeTest_TypeOrBounds_TypeBounds

( implicit  ctx: Context ) : TypeTest[TypeOrBounds,TypeBounds]

final given def 

given_TypeTest_TypeOrBounds_TypeLambda

( implicit  ctx: Context ) : TypeTest[TypeOrBounds,TypeLambda]

final given def 

given_TypeTest_TypeOrBounds_TypeRef

( implicit  ctx: Context ) : TypeTest[TypeOrBounds,TypeRef]

def 

let

( rhs: Term ) ( body: Ident => Term ) ( implicit  ctx: Context ) : Term

Bind the rhs to a val and use it in body

Bind the rhs to a val and use it in body

def 

lets

( terms: List[Term] ) ( body: List[Term] => Term ) ( implicit  ctx: Context ) : Term

Bind the given terms to names and use them in the body

Bind the given terms to names and use them in the body

def 

rootContext

: Context

Context of the macro expansion

Context of the macro expansion

def 

rootPosition

: Position

Root position of this tasty context. For macros it corresponds to the expansion site.

Root position of this tasty context. For macros it corresponds to the expansion site.

def 

searchImplicit

( tpe: Type ) ( implicit  ctx: Context ) : ImplicitSearchResult

def 

typeOf

[T] ( implicit  qtype: Type[T] ctx: Context ) : Type

Returns the type (Type) of T

Returns the type (Type) of T

def 

warning

( msg: => String pos: Position ) ( implicit  ctx: Context ) : Unit

Emits an error message

Emits an error message

def 

warning

( msg: => String source: SourceFile start: Int end: Int ) ( implicit  ctx: Context ) : Unit

Emits a warning at a specific range of a file

Emits a warning at a specific range of a file