Scala Compiler2.13.17 < Back


# Packages

-  package root

  The Scala compiler and reflection APIs.

  The Scala compiler and reflection APIs.

  Definition Classes
    root
-  package scala
  Definition Classes
    root
-  package reflect
  Definition Classes
    scala
-  package macros
  Definition Classes
    reflect
-  package contexts
  Definition Classes
    macros
- Aliases
- Context
- Enclosures
- Evals
- ExprUtils
- FrontEnds
- Infrastructure
- Internals
- Names
- Parsers
- Reifiers
- Traces
- Typers

c

scala.reflect.macros.contexts

# Context

###

#### abstract class Context extends blackbox.Context with whitebox.Context with Aliases with Enclosures with Names with Reifiers with FrontEnds with Infrastructure with Typers with Parsers with Evals with ExprUtils with Traces with Internals

Source
  Context.scala

Linear Supertypes
Internals, TypingTransformers, Traces, util.Traces, ExprUtils, Evals, Parsers, Typers, Infrastructure, FrontEnds, Reifiers, Names, Enclosures, Aliases, whitebox.Context, blackbox.Context, macros.Internals, macros.ExprUtils, macros.Evals, macros.Parsers, macros.Typers, macros.Infrastructure, macros.FrontEnds, macros.Reifiers, macros.Names, macros.Enclosures, macros.Aliases, AnyRef, Any
Type Hierarchy

Ordering

1. Alphabetic
2. By Inheritance

Inherited

1. Context
2. Internals
3. TypingTransformers
4. Traces
5. Traces
6. ExprUtils
7. Evals
8. Parsers
9. Typers
10. Infrastructure
11. FrontEnds
12. Reifiers
13. Names
14. Enclosures
15. Aliases
16. Context
17. Context
18. Internals
19. ExprUtils
20. Evals
21. Parsers
22. Typers
23. Infrastructure
24. FrontEnds
25. Reifiers
26. Names
27. Enclosures
28. Aliases
29. AnyRef
30. Any

Implicitly

1. by any2stringadd
2. by StringFormat
3. by Ensuring
4. by ArrowAssoc

1. Hide All
2. Show All

Visibility

1. Public
2. Protected

### Instance Constructors

1.  new Context()

### Type Members

1.  implicit class RichOpenImplicit extends AnyRef
   Definition Classes
     Aliases
2.  trait ContextInternalApi extends MacroInternalApi
   Definition Classes
     Internals
3.  type Expr[+T] = tools.nsc.Global.Expr[T]
   Definition Classes
     Aliases
4.  case class ImplicitCandidate extends Product with Serializable
   Definition Classes
     Context
5.  type Modifiers = tools.nsc.Global.Modifiers
   Definition Classes
     Aliases
6.  type Name = tools.nsc.Global.Name
   Definition Classes
     Aliases
7.  type Position = internal.util.Position
   Definition Classes
     Aliases
8.  abstract type PrefixType
   Definition Classes
     Context
9.  type Scope = tools.nsc.Global.Scope
   Definition Classes
     Aliases
10.  type Symbol = tools.nsc.Global.Symbol
    Definition Classes
      Aliases
11.  type TermName = tools.nsc.Global.TermName
    Definition Classes
      Aliases
12.  type Tree = tools.nsc.Global.Tree
    Definition Classes
      Aliases
13.  type Type = tools.nsc.Global.Type
    Definition Classes
      Aliases
14.  type TypeName = tools.nsc.Global.TypeName
    Definition Classes
      Aliases
15.  type TypeTag[T] = tools.nsc.Global.TypeTag[T]
    Definition Classes
      Aliases
16.  type TypecheckException = macros.TypecheckException
    Definition Classes
      Typers
17.  type TypecheckMode = Mode
    Definition Classes
      Typers
18.  type WeakTypeTag[T] = tools.nsc.Global.WeakTypeTag[T]
    Definition Classes
      Aliases
19.  abstract class ThicketTransformer extends TypingTransformer

    A base class for typing transformers that need to perform "thicket expansion".

    A base class for typing transformers that need to perform "thicket expansion". A thicket is the output of a transformation that is flattened into the enclosing block.

    Definition Classes
      TypingTransformers
20.  abstract class TypingTransformer extends Global.AstTransformer
    Definition Classes
      TypingTransformers

### Deprecated Type Members

1.  type CompilationUnit = tools.nsc.Global.CompilationUnit
   Definition Classes
     Aliases
   Annotations
     @deprecated
   Deprecated

     (Since version 2.11.0) c.enclosingTree-style APIs are now deprecated; consult the scaladoc for more information

2.  case class EnclosureException extends Exception with Product with Serializable
   Definition Classes
     Enclosures
   Annotations
     @deprecated
   Deprecated

     (Since version 2.11.0) c.enclosingTree-style APIs are now deprecated; consult the scaladoc for more information

3.  type Run = tools.nsc.Global.Run
   Definition Classes
     Aliases
   Annotations
     @deprecated
   Deprecated

     (Since version 2.11.0) c.enclosingTree-style APIs are now deprecated; consult the scaladoc for more information

### Abstract Value Members

1.  abstract val callsiteTyper: (analyzer)#Typer
2.  abstract val expandee: Tree
3.  abstract val prefix: Expr[PrefixType]
   Definition Classes
     Context → Context
4.  abstract val universe: Global
   Definition Classes
     Context → Context

### Concrete Value Members

1.  final def !=(arg0: Any): Boolean
   Definition Classes
     AnyRef → Any
2.  final def ##: Int
   Definition Classes
     AnyRef → Any
3.  def +(other: String): String
   Implicit
     This member is added by an implicit conversion from Context toany2stringadd[Context] performed by method any2stringadd in scala.Predef.
   Definition Classes
     any2stringadd
4.  def ->[B](y: B): (Context, B)
   Implicit
     This member is added by an implicit conversion from Context toArrowAssoc[Context] performed by method ArrowAssoc in scala.Predef.
   Definition Classes
     ArrowAssoc
   Annotations
     @inline()
5.  final def ==(arg0: Any): Boolean
   Definition Classes
     AnyRef → Any
6.  def Expr[T](tree: Tree)(implicit arg0: WeakTypeTag[T]): Expr[T]
   Definition Classes
     Aliases
7.  val Expr: tools.nsc.Global.Expr.type
   Definition Classes
     Aliases
8.  val PATTERNmode: Mode
   Definition Classes
     Typers
9.  val TERMmode: Mode
   Definition Classes
     Typers
10.  val TYPEmode: Mode
    Definition Classes
      Typers
11.  def TypeTag[T](tpe: Type): TypeTag[T]
    Definition Classes
      Aliases
12.  val TypeTag: tools.nsc.Global.TypeTag.type
    Definition Classes
      Aliases
13.  val TypecheckException: macros.TypecheckException.type
    Definition Classes
      Typers
14.  val TypecheckMode: Mode.type
    Definition Classes
      Typers
15.  def WeakTypeTag[T](tpe: Type): WeakTypeTag[T]
    Definition Classes
      Aliases
16.  val WeakTypeTag: tools.nsc.Global.WeakTypeTag.type
    Definition Classes
      Aliases
17.  def abort(pos: Position, msg: String): Nothing
    Definition Classes
      FrontEnds
18.  final def asInstanceOf[T0]: T0
    Definition Classes
      Any
19.  def classPath: List[URL]
    Definition Classes
      Infrastructure
20.  def clone(): AnyRef
    Attributes
      protected[lang]
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.CloneNotSupportedException]) @native()
21.  def compilerSettings: List[String]
    Definition Classes
      Infrastructure
22.  def echo(pos: Position, msg: String): Unit
    Definition Classes
      FrontEnds
23.  lazy val enclosingClass: Tree
    Definition Classes
      Enclosures
24.  lazy val enclosingImplicits: List[ImplicitCandidate]
    Definition Classes
      Enclosures
25.  val enclosingMacros: List[Context]
    Definition Classes
      Enclosures
26.  lazy val enclosingMethod: Tree
    Definition Classes
      Enclosures
27.  def enclosingPackage: tools.nsc.Global.PackageDef
    Definition Classes
      Enclosures
28.  lazy val enclosingPosition: Position
    Definition Classes
      Enclosures
29.  def ensuring(cond: (Context) => Boolean, msg: => Any): Context
    Implicit
      This member is added by an implicit conversion from Context toEnsuring[Context] performed by method Ensuring in scala.Predef.
    Definition Classes
      Ensuring
30.  def ensuring(cond: (Context) => Boolean): Context
    Implicit
      This member is added by an implicit conversion from Context toEnsuring[Context] performed by method Ensuring in scala.Predef.
    Definition Classes
      Ensuring
31.  def ensuring(cond: Boolean, msg: => Any): Context
    Implicit
      This member is added by an implicit conversion from Context toEnsuring[Context] performed by method Ensuring in scala.Predef.
    Definition Classes
      Ensuring
32.  def ensuring(cond: Boolean): Context
    Implicit
      This member is added by an implicit conversion from Context toEnsuring[Context] performed by method Ensuring in scala.Predef.
    Definition Classes
      Ensuring
33.  final def eq(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef
34.  def equals(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef → Any
35.  def error(pos: Position, msg: String): Unit
    Definition Classes
      FrontEnds
36.  def eval[T](expr: Expr[T]): T
    Definition Classes
      Evals
37.  def finalize(): Unit
    Attributes
      protected[lang]
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.Throwable])
38.  def fresh[NameType <: Name](name: NameType): NameType
    Definition Classes
      Names
39.  def fresh(name: String): String
    Definition Classes
      Names
40.  def fresh(): String
    Definition Classes
      Names
41.  def freshName[NameType <: Name](name: NameType): NameType
    Definition Classes
      Names
42.  def freshName(name: String): String
    Definition Classes
      Names
43.  def freshName(): String
    Definition Classes
      Names
44.  def freshNameCreator: FreshNameCreator
    Definition Classes
      Names
45.  final def getClass(): Class[_ <: AnyRef]
    Definition Classes
      AnyRef → Any
    Annotations
      @native()
46.  val global: universe.type
    Definition Classes
      Reifiers
47.  def globalSettings: Settings
    Definition Classes
      Traces → Traces
48.  def hasErrors: Boolean
    Definition Classes
      FrontEnds
49.  def hasWarnings: Boolean
    Definition Classes
      FrontEnds
50.  def hashCode(): Int
    Definition Classes
      AnyRef → Any
    Annotations
      @native()
51.  def inferImplicitValue(pt: Type, silent: Boolean = true, withMacrosDisabled: Boolean = false, pos: Position = enclosingPosition): Tree
    Definition Classes
      Typers
52.  def inferImplicitValueIgnoring(pt: Type, silent: Boolean = true, withMacrosDisabled: Boolean = false, pos: Position = enclosingPosition)(ignoredSymbols: Symbol*): Tree
    Definition Classes
      Typers
53.  def inferImplicitView(tree: Tree, from: Type, to: Type, silent: Boolean = true, withMacrosDisabled: Boolean = false, pos: Position = enclosingPosition): Tree
    Definition Classes
      Typers
54.  lazy val internal: ContextInternalApi
    Definition Classes
      Internals
55.  final def isInstanceOf[T0]: Boolean
    Definition Classes
      Any
56.  def literal(x: Char): Expr[Char]
    Definition Classes
      ExprUtils
57.  def literal(x: String): Expr[String]
    Definition Classes
      ExprUtils
58.  def literal(x: Double): Expr[Double]
    Definition Classes
      ExprUtils
59.  def literal(x: Float): Expr[Float]
    Definition Classes
      ExprUtils
60.  def literal(x: Long): Expr[Long]
    Definition Classes
      ExprUtils
61.  def literal(x: Int): Expr[Int]
    Definition Classes
      ExprUtils
62.  def literal(x: Short): Expr[Short]
    Definition Classes
      ExprUtils
63.  def literal(x: Byte): Expr[Byte]
    Definition Classes
      ExprUtils
64.  def literal(x: Boolean): Expr[Boolean]
    Definition Classes
      ExprUtils
65.  def literalFalse: Expr[Boolean]
    Definition Classes
      ExprUtils
66.  def literalNull: Expr[Null]
    Definition Classes
      ExprUtils
67.  def literalTrue: Expr[Boolean]
    Definition Classes
      ExprUtils
68.  def literalUnit: Expr[Unit]
    Definition Classes
      ExprUtils
69.  val macroApplication: Tree
    Definition Classes
      Enclosures
70.  val macroDebugLite: Boolean
    Definition Classes
      Traces
71.  val macroDebugVerbose: Boolean
    Definition Classes
      Traces
72.  final def macroLogLite(msg: => Any): Unit
    Definition Classes
      Traces
    Annotations
      @inline()
73.  final def macroLogVerbose(msg: => Any): Unit
    Definition Classes
      Traces
    Annotations
      @inline()
74.  val mirror: tools.nsc.Global.Mirror
    Definition Classes
      Context → Context
75.  final def ne(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef
76.  def newRootLocalTyper(unit: tools.nsc.Global.CompilationUnit): (analyzer)#Typer
    Attributes
      protected
    Definition Classes
      TypingTransformers
77.  final def notify(): Unit
    Definition Classes
      AnyRef
    Annotations
      @native()
78.  final def notifyAll(): Unit
    Definition Classes
      AnyRef
    Annotations
      @native()
79.  def openImplicits: List[ImplicitCandidate]
    Definition Classes
      Typers
80.  def openMacros: List[Context]
    Definition Classes
      Typers
81.  def parse(code: String): Tree
    Definition Classes
      Parsers
82.  def reifyEnclosingRuntimeClass: Tree
    Definition Classes
      Reifiers
83.  def reifyRuntimeClass(tpe: Type, concrete: Boolean = true): Tree
    Definition Classes
      Reifiers
84.  def reifyTree(universe: Tree, mirror: Tree, tree: Tree): Tree
    Definition Classes
      Reifiers
85.  def reifyType(universe: Tree, mirror: Tree, tpe: Type, concrete: Boolean = false): Tree
    Definition Classes
      Reifiers
86.  def resetLocalAttrs(tree: Tree): Tree
    Definition Classes
      Typers
87.  def settings: List[String]
    Definition Classes
      Infrastructure
88.  def symbolOf[T](implicit arg0: Context.WeakTypeTag[T]): tools.nsc.Global.TypeSymbol
    Definition Classes
      Aliases
89.  final def synchronized[T0](arg0: => T0): T0
    Definition Classes
      AnyRef
90.  def toString(): String
    Definition Classes
      AnyRef → Any
91.  def typeOf[T](implicit ttag: TypeTag[T]): Type
    Definition Classes
      Aliases
92.  def typeTag[T](implicit ttag: TypeTag[T]): TypeTag[T]
    Definition Classes
      Aliases
93.  def typecheck(tree: Tree, mode: TypecheckMode = TERMmode, pt: Type = universe.WildcardType, silent: Boolean = false, withImplicitViewsDisabled: Boolean = false, withMacrosDisabled: Boolean = false): Tree

    Definition Classes
      Typers
    See also

      scala.tools.reflect.ToolBox.typeCheck

94.  def unreifyTree(tree: Tree): Tree
    Definition Classes
      Reifiers
95.  def untypecheck(tree: Tree): Tree
    Definition Classes
      Typers
96.  final def wait(): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.InterruptedException])
97.  final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.InterruptedException])
98.  final def wait(arg0: Long): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.InterruptedException]) @native()
99.  def warning(pos: Position, msg: String): Unit
    Definition Classes
      FrontEnds
100.  def weakTypeOf[T](implicit attag: WeakTypeTag[T]): Type
     Definition Classes
       Aliases
101.  def weakTypeTag[T](implicit attag: WeakTypeTag[T]): WeakTypeTag[T]
     Definition Classes
       Aliases

### Deprecated Value Members

1.  def enclosingDef: tools.nsc.Global.DefDef
   Definition Classes
     Enclosures
   Annotations
     @deprecated
   Deprecated

     (Since version 2.13.4) c.enclosingTree-style APIs are now deprecated; consult the scaladoc for more information

2.  def enclosingImpl: tools.nsc.Global.ImplDef
   Definition Classes
     Enclosures
   Annotations
     @deprecated
   Deprecated

     (Since version 2.13.4) c.enclosingTree-style APIs are now deprecated; consult the scaladoc for more information

3.  val enclosingRun: Run
   Definition Classes
     Enclosures
   Annotations
     @deprecated
   Deprecated

     (Since version 2.13.4) c.enclosingTree-style APIs are now deprecated; consult the scaladoc for more information

4.  def enclosingTemplate: tools.nsc.Global.Template
   Definition Classes
     Enclosures
   Annotations
     @deprecated
   Deprecated

     (Since version 2.13.4) c.enclosingTree-style APIs are now deprecated; consult the scaladoc for more information

5.  val enclosingUnit: CompilationUnit
   Definition Classes
     Enclosures
   Annotations
     @deprecated
   Deprecated

     (Since version 2.13.4) c.enclosingTree-style APIs are now deprecated; consult the scaladoc for more information

6.  def formatted(fmtstr: String): String
   Implicit
     This member is added by an implicit conversion from Context toStringFormat[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 of `value.formatted(formatString)`, or use the `f""` string interpolator. In Java 15 and later, `formatted` resolves to the new method in String which has reversed parameters.

7.  def info(pos: Position, msg: String, force: Boolean): Unit
   Definition Classes
     FrontEnds
   Annotations
     @deprecated
   Deprecated

     (Since version 2.13.0) Use echo, info messages are always forced

8.  def typeCheck(tree: Context.Tree, pt: Context.Type, silent: Boolean, withImplicitViewsDisabled: Boolean, withMacrosDisabled: Boolean): Context.Tree
   Definition Classes
     Typers
   Annotations
     @deprecated
   Deprecated

     (Since version 2.11.0) use `c.typecheck` instead

9.  def →[B](y: B): (Context, B)
   Implicit
     This member is added by an implicit conversion from Context toArrowAssoc[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.

### Inherited from Internals

### Inherited from TypingTransformers

### Inherited from Traces

### Inherited from util.Traces

### Inherited from ExprUtils

### Inherited from Evals

### Inherited from Parsers

### Inherited from Typers

### Inherited from Infrastructure

### Inherited from FrontEnds

### Inherited from Reifiers

### Inherited from Names

### Inherited from Enclosures

### Inherited from Aliases

### Inherited from whitebox.Context

### Inherited from blackbox.Context

### Inherited from macros.Internals

### Inherited from macros.ExprUtils

### Inherited from macros.Evals

### Inherited from macros.Parsers

### Inherited from macros.Typers

### Inherited from macros.Infrastructure

### Inherited from macros.FrontEnds

### Inherited from macros.Reifiers

### Inherited from macros.Names

### Inherited from macros.Enclosures

### Inherited from macros.Aliases

### Inherited from AnyRef

### Inherited from Any

### Inherited by implicit conversion any2stringadd fromContext to any2stringadd[Context]

### Inherited by implicit conversion StringFormat fromContext to StringFormat[Context]

### Inherited by implicit conversion Ensuring fromContext to Ensuring[Context]

### Inherited by implicit conversion ArrowAssoc fromContext to ArrowAssoc[Context]

### Ungrouped