sealed abstract class Context extends AnyRef
Maintains state through traversal of a TASTy file, such as the outer scope of the defintion being traversed, the traversal mode, and the root owners and source path for the TASTy file. It also provides all operations for manipulation of the symbol table, such as creating/updating symbols and updating their types.
- Self Type
- TastyUniverse.Context
- Source
- ContextOps.scala
- Alphabetic
- By Inheritance
- Context
- AnyRef
- Any
- by SafeEq
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract def mode: TastyMode
- abstract def owner: TastyUniverse.Symbol
- abstract def source: AbstractFile
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def !==(u: TastyUniverse.Context): Boolean
- Implicit
- This member is added by an implicit conversion from TastyUniverse.Context toSafeEq[TastyUniverse.Context] performed by method SafeEq in scala.tools.nsc.tasty.
- Definition Classes
- SafeEq
- Annotations
- @inline()
- final def ##: Int
- Definition Classes
- AnyRef → Any
- def +(other: String): String
- Implicit
- This member is added by an implicit conversion from TastyUniverse.Context toany2stringadd[TastyUniverse.Context] performed by method any2stringadd in scala.Predef.
- Definition Classes
- any2stringadd
- def ->[B](y: B): (TastyUniverse.Context, B)
- Implicit
- This member is added by an implicit conversion from TastyUniverse.Context toArrowAssoc[TastyUniverse.Context] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ===(u: TastyUniverse.Context): Boolean
- Implicit
- This member is added by an implicit conversion from TastyUniverse.Context toSafeEq[TastyUniverse.Context] performed by method SafeEq in scala.tools.nsc.tasty.
- Definition Classes
- SafeEq
- Annotations
- @inline()
- final def addMode(mode: TastyMode): TastyUniverse.Context
- def adjustAnnotations(sym: TastyUniverse.Symbol, annots: List[TastyUniverse.DeferredAnnotation]): Unit
Associates the annotations with the symbol, and will force their evaluation if not reading statements.
- final def argumentCtx(fn: TastyUniverse.Tree): TastyUniverse.Context
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def canEnterOverload(decl: TastyUniverse.Symbol): Boolean
- final lazy val classRoot: TastyUniverse.Symbol
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- final def completeEnumSingleton(sym: TastyUniverse.Symbol, tpe: TastyUniverse.Type): Unit
- final def delayClassCompletion(owner: TastyUniverse.Symbol, typeName: TypeName, completer: TastyUniverse.TastyCompleter, privateWithin: TastyUniverse.Symbol): TastyUniverse.Symbol
Guards the creation of an object class by checking for an existing definition in the owner's scope
- final def delayCompletion(owner: TastyUniverse.Symbol, name: TastyName, completer: TastyUniverse.TastyCompleter, privateWithin: TastyUniverse.Symbol = noSymbol): TastyUniverse.Symbol
Guards the creation of an object val by checking for an existing definition in the owner's scope
- def ensuring(cond: (TastyUniverse.Context) => Boolean, msg: => Any): TastyUniverse.Context
- Implicit
- This member is added by an implicit conversion from TastyUniverse.Context toEnsuring[TastyUniverse.Context] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- def ensuring(cond: (TastyUniverse.Context) => Boolean): TastyUniverse.Context
- Implicit
- This member is added by an implicit conversion from TastyUniverse.Context toEnsuring[TastyUniverse.Context] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- def ensuring(cond: Boolean, msg: => Any): TastyUniverse.Context
- Implicit
- This member is added by an implicit conversion from TastyUniverse.Context toEnsuring[TastyUniverse.Context] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- def ensuring(cond: Boolean): TastyUniverse.Context
- Implicit
- This member is added by an implicit conversion from TastyUniverse.Context toEnsuring[TastyUniverse.Context] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- final def enterClassCompletion(): TastyUniverse.Symbol
- final def enterIfUnseen(sym: TastyUniverse.Symbol): Unit
- final def enterIfUnseen0(decls: TastyCore.SymbolTable.Scope, decl: TastyUniverse.Symbol): Unit
- Attributes
- protected
- final def enterRefinement[T](parent: TastyUniverse.Type)(op: (TastyUniverse.Context) => T): T
Determines the owner of a refinement in the current context by the following steps: 1) if the owner if this context is a refinement symbol, we are in a recursive RefinedType.
Determines the owner of a refinement in the current context by the following steps: 1) if the owner if this context is a refinement symbol, we are in a recursive RefinedType. Ensure that the context owner is initialised with the parent and reuse it. 2) if the parent is also a RefinedType, then we will flatten the nested structure by reusing its owner 3) the parent is not a RefinedType, and we are not in an enclosing RefinedType, so create a new RefinementClassSymbol. The Parent alongside the RefinedType owner are passed to the given operation
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def evict(sym: TastyUniverse.Symbol): Unit
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def findOuterClassTypeParameter(name: TypeName): TastyUniverse.Symbol
- final def findRootSymbol(roots: Set[TastyUniverse.Symbol], name: TastyName): Option[TastyUniverse.Symbol]
- final def fresh: TastyUniverse.FreshContext
- final def freshMode(mode: TastyMode): TastyUniverse.FreshContext
- final def freshSymbol(owner: TastyUniverse.Symbol): TastyUniverse.FreshContext
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def globallyVisibleOwner: TastyUniverse.Symbol
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def ignoreAnnotations: Boolean
- implicit final def implyThisCtx: Context.this.type
- Attributes
- protected
- final def initialContext: TastyUniverse.InitialContext
- Annotations
- @tailrec()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def isJava: Boolean
JAVAattr is necessary to support pipelining in Zinc, we have to set Java erasure semantics if found.
JAVAattr is necessary to support pipelining in Zinc, we have to set Java erasure semantics if found. To support this we also need to support TASTy-only classpaths, see https://github.com/scala/scala3/pull/17594 For a test case, see test/tasty/run-pipelined
- final def log(str: => String): Unit
- final def markAsEnumSingleton(sym: TastyUniverse.Symbol): Unit
- final def markAsOpaqueType(sym: TastyUniverse.Symbol, alias: TastyUniverse.Type): Unit
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def newConstructor(owner: TastyUniverse.Symbol, info: TastyUniverse.Type): TastyUniverse.Symbol
- final def newLambdaParameter(tname: TastyName, flags: TastyFlagSet, idx: Int, infoDb: (Int) => TastyUniverse.Type): TastyUniverse.Symbol
- final def newLocalDummy: TastyUniverse.Symbol
- final def newLocalSealedChildProxy(cls: TastyUniverse.Symbol): TastyUniverse.Symbol
- final def newRefinementClassSymbol: TastyUniverse.Symbol
- final def newRefinementSymbol(parent: TastyUniverse.Type, owner: TastyUniverse.Symbol, name: TastyName, tpe: TastyUniverse.Type): TastyUniverse.Symbol
- final def newWildcard(info: TastyUniverse.Type): TastyUniverse.Symbol
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def onCompletionError[T](sym: TastyUniverse.Symbol): PartialFunction[Throwable, T]
- final def processParents(cls: TastyUniverse.Symbol, parentTypes: List[TastyUniverse.Type]): parentTypes.type
sets up value class machinery
- final def redefineSymbol(symbol: TastyUniverse.Symbol, completer: TastyUniverse.TastyCompleter, privateWithin: TastyUniverse.Symbol): symbol.type
- final def requiredPackage(fullname: TastyName): TastyUniverse.Symbol
- def requiresLatentEntry(decl: TastyUniverse.Symbol): Boolean
- final def retractMode(mode: TastyMode): TastyUniverse.Context
- final def setInfo(sym: TastyUniverse.Symbol, info: TastyUniverse.Type): Unit
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def trace[T](info: => TastyUniverse.TraceInfo[T])(op: => T): T
- Annotations
- @inline()
- final def traceV[T](info: => TastyUniverse.TraceInfo[T])(op: => T): T
Trace only when
-Vdebug
is setTrace only when
-Vdebug
is set- Annotations
- @inline()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def withMode(mode: TastyMode): TastyUniverse.Context
- final def withNewScope: TastyUniverse.Context
- final def withOwner(owner: TastyUniverse.Symbol): TastyUniverse.Context
- final def withPhaseNoLater[T](phase: String)(op: (TastyUniverse.Context) => T): T
- final def withSource(source: AbstractFile): TastyUniverse.Context
Deprecated Value Members
- def formatted(fmtstr: String): String
- Implicit
- This member is added by an implicit conversion from TastyUniverse.Context toStringFormat[TastyUniverse.Context] performed by method StringFormat in scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @deprecated @inline()
- Deprecated
(Since version 2.12.16) Use
formatString.format(value)
instead ofvalue.formatted(formatString)
, or use thef""
string interpolator. In Java 15 and later,formatted
resolves to the new method in String which has reversed parameters.
- def →[B](y: B): (TastyUniverse.Context, B)
- Implicit
- This member is added by an implicit conversion from TastyUniverse.Context toArrowAssoc[TastyUniverse.Context] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @deprecated
- Deprecated
(Since version 2.13.0) Use
->
instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.
The Scala compiler and reflection APIs.