P package

scala.tasty.reflect

extends Object with Serializable

Supertypes

Object, Serializable

Members

trait 

CompilerInterface

Tasty reflect abstract types

Tasty reflect abstract types


+- Tree -+- PackageClause
         +- Import
         +- Statement -+- Definition --+- PackageDef
         |             |               +- ClassDef
         |             |               +- TypeDef
         |             |               +- DefDef
         |             |               +- ValDef
         |             |
         |             +- Term --------+- Ref -+- Ident
         |                             |       +- Select
         |                             |
         |                             +- Literal
         |                             +- This
         |                             +- New
         |                             +- NamedArg
         |                             +- Apply
         |                             +- TypeApply
         |                             +- Super
         |                             +- Typed
         |                             +- Assign
         |                             +- Block
         |                             +- Closure
         |                             +- If
         |                             +- Match
         |                             +- GivenMatch
         |                             +- Try
         |                             +- Return
         |                             +- Repeated
         |                             +- Inlined
         |                             +- SelectOuter
         |                             +- While
         |
         |
         +- TypeTree ----+- Inferred
         |               +- TypeIdent
         |               +- TypeSelect
         |               +- Projection
         |               +- Singleton
         |               +- Refined
         |               +- Applied
         |               +- Annotated
         |               +- MatchTypeTree
         |               +- ByName
         |               +- LambdaTypeTree
         |               +- TypeBind
         |               +- TypeBlock
         |
         +- TypeBoundsTree
         +- WildcardTypeTree
          |
         +- CaseDef
         +- TypeCaseDef
         |
         +- Bind
         +- Unapply
         +- Alternatives

                 +- NoPrefix
+- TypeOrBounds -+- TypeBounds
                 |
                 +- Type -------+- ConstantType
                                +- TermRef
                                +- TypeRef
                                +- SuperType
                                +- Refinement
                                +- AppliedType
                                +- AnnotatedType
                                +- AndType
                                +- OrType
                                +- MatchType
                                +- ByNameType
                                +- ParamRef
                                +- ThisType
                                +- RecursiveThis
                                +- RecursiveType
                                +- LambdaType[ParamInfo <: TypeOrBounds] -+- MethodType
                                                                          +- PolyType
                                                                          +- TypeLambda

+- ImportSelector -+- SimpleSelector
                   +- RenameSelector
                   +- OmitSelector

+- Id

+- Signature

+- Position

+- Comment

+- Constant

+- Symbol

+- Flags

class 

ExprCastError

class 

ExtractorsPrinter

[R]

trait 

Printer

[R]

class 

SourceCodePrinter

[R]

Printer for fully elaborated representation of the source code

Printer for fully elaborated representation of the source code

trait 

TreeAccumulator

[X]

TASTy Reflect tree accumulator.

Usage:

TASTy Reflect tree accumulator.

Usage:

class MyTreeAccumulator[R <: scala.tasty.Reflection & Singleton](val reflect: R)
    extends scala.tasty.reflect.TreeAccumulator[X] {
  import reflect.{given _, _}
  def foldTree(x: X, tree: Tree)(using ctx: Context): X = ...
}
trait 

TreeMap

TASTy Reflect tree map.

Usage:

TASTy Reflect tree map.

Usage:

class MyTreeMap[R <: scala.tasty.Reflection & Singleton](val reflect: R)
    extends scala.tasty.reflect.TreeMap {
  import reflect.{given _, _}
  override def transformTree(tree: Tree)(using ctx: Context): Tree = ...
}
trait 

TreeTraverser

TASTy Reflect tree traverser.

Usage:

TASTy Reflect tree traverser.

Usage:

class MyTraverser[R <: scala.tasty.Reflection & Singleton](val reflect: R)
    extends scala.tasty.reflect.TreeTraverser {
  import reflect.{given _, _}
  override def traverseTree(tree: Tree)(using ctx: Context): Unit = ...
}
type 

IsInstanceOf

 = ClassTag[T]

Place holder until we implement a ClassTag like abstraction that is sound for all type tests

Place holder until we implement a ClassTag like abstraction that is sound for all type tests