Scala Reflection Library2.13.18 < Back


# Packages

-  package root
  Definition Classes
    root
-  package scala
  Definition Classes
    root
-  package reflect
  Definition Classes
    scala
-  package macros

  EXPERIMENTAL

  EXPERIMENTAL

  The base package for Scala macros.

  Macros are functions that are called by the compiler during compilation. Within these functions the programmer has access to compiler APIs. For example, it is possible to generate, analyze and typecheck code.

  See the Macros Guide on how to get started with Scala macros.

  Definition Classes
    reflect
-  package blackbox
  Definition Classes
    macros
-  package whitebox
  Definition Classes
    macros
- Aliases
- Attachments
- Enclosures
- Evals
- ExprUtils
- FrontEnds
- Infrastructure
- Internals
- Names
- ParseException
- Parsers
- ReificationException
- Reifiers
- TypecheckException
- Typers
- UnexpectedReificationException
- Universe

t

scala.reflect.macros

# Aliases

###

#### trait Aliases extends AnyRef

EXPERIMENTAL

A slice of the Scala macros context that defines shorthands for the most frequently used types and functions of the underlying compiler universe.

Self Type
  blackbox.Context
Source
  Aliases.scala

Linear Supertypes
AnyRef, Any
Known Subclasses
Context, Context
Type Hierarchy

Ordering

1. Alphabetic
2. By Inheritance

Inherited

1. Aliases
2. AnyRef
3. 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

### Type Members

1.  type Expr[+T] = Universe.Expr[T]

   Expr wraps an abstract syntax tree and tags it with its type.

2.  type Modifiers = Universe.Modifiers

   The type of tree modifiers.

3.  type Name = Universe.Name

   The abstract type of names.

4.  type Position = Universe.Position

   Defines a universe-specific notion of positions.

5.  type Scope = Universe.Scope

   The base type of all scopes.

6.  type Symbol = Universe.Symbol

   The type of symbols representing declarations.

7.  type TermName = Universe.TermName

   The abstract type of names representing terms.

8.  type Tree = Universe.Tree

   The type of Scala abstract syntax trees.

9.  type Type = Universe.Type

   The type of Scala types, and also Scala type signatures.

   The type of Scala types, and also Scala type signatures. (No difference is internally made between the two).

10.  type TypeName = Universe.TypeName

    The abstract type of names representing types.

11.  type TypeTag[T] = Universe.TypeTag[T]

    The type of type tags.

12.  type WeakTypeTag[T] = Universe.WeakTypeTag[T]

    The type of weak type tags.

### Deprecated Type Members

1.  type CompilationUnit = Universe.CompilationUnit

   The type of compilation units.

   The type of compilation units.

   Annotations
     @deprecated
   Deprecated

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

   See also

     scala.reflect.macros.Enclosures

2.  type Run = Universe.Run

   The type of compilation runs.

   The type of compilation runs.

   Annotations
     @deprecated
   Deprecated

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

   See also

     scala.reflect.macros.Enclosures

### Abstract Value Members

1.  abstract def Expr[T](tree: blackbox.Context.Tree)(implicit arg0: blackbox.Context.WeakTypeTag[T]): blackbox.Context.Expr[T]

   A shorthand to create an expr.

   A shorthand to create an expr.

   Unlike the conventional expr factory, which requires a scala.reflect.api.TreeCreator, this one accepts a regular tree, but the resulting exprs are unable of being migrated to other universes/mirrors (the functionality normally not needed for macros, since there is only one compile-time universe and only one compile-time mirror).

2.  abstract def TypeTag[T](tpe: blackbox.Context.Type): blackbox.Context.TypeTag[T]

   A shorthand to create a type tag.

   A shorthand to create a type tag.

   Unlike the conventional type tag factory, which requires a scala.reflect.api.TypeCreator, this one accepts a regular type, but the resulting type tags are unable of being migrated to other universes/mirrors (the functionality normally not needed for macros, since there is only one compile-time universe and only one compile-time mirror).

3.  abstract def WeakTypeTag[T](tpe: blackbox.Context.Type): blackbox.Context.WeakTypeTag[T]

   A shorthand to create a weak type tag.

   A shorthand to create a weak type tag.

   Unlike the conventional type tag factory, which requires a scala.reflect.api.TypeCreator, this one accepts a regular type, but the resulting type tags are unable of being migrated to other universes/mirrors (the functionality normally not needed for macros, since there is only one compile-time universe and only one compile-time mirror).

### 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 Aliases toany2stringadd[Aliases] performed by method any2stringadd in scala.Predef.
   Definition Classes
     any2stringadd
4.  def ->[B](y: B): (Aliases, B)
   Implicit
     This member is added by an implicit conversion from Aliases toArrowAssoc[Aliases] performed by method ArrowAssoc in scala.Predef.
   Definition Classes
     ArrowAssoc
   Annotations
     @inline()
5.  final def ==(arg0: Any): Boolean
   Definition Classes
     AnyRef → Any
6.  val Expr: Universe.Expr.type

   Constructor/Extractor for `Expr`.

7.  val TypeTag: Universe.TypeTag.type

   Constructor/Extractor for `TypeTag`.

8.  val WeakTypeTag: Universe.WeakTypeTag.type

   Constructor/Extractor for `WeakTypeTag`.

9.  final def asInstanceOf[T0]: T0
   Definition Classes
     Any
10.  def clone(): AnyRef
    Attributes
      protected[lang]
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.CloneNotSupportedException]) @native()
11.  def ensuring(cond: (Aliases) => Boolean, msg: => Any): Aliases
    Implicit
      This member is added by an implicit conversion from Aliases toEnsuring[Aliases] performed by method Ensuring in scala.Predef.
    Definition Classes
      Ensuring
12.  def ensuring(cond: (Aliases) => Boolean): Aliases
    Implicit
      This member is added by an implicit conversion from Aliases toEnsuring[Aliases] performed by method Ensuring in scala.Predef.
    Definition Classes
      Ensuring
13.  def ensuring(cond: Boolean, msg: => Any): Aliases
    Implicit
      This member is added by an implicit conversion from Aliases toEnsuring[Aliases] performed by method Ensuring in scala.Predef.
    Definition Classes
      Ensuring
14.  def ensuring(cond: Boolean): Aliases
    Implicit
      This member is added by an implicit conversion from Aliases toEnsuring[Aliases] performed by method Ensuring in scala.Predef.
    Definition Classes
      Ensuring
15.  final def eq(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef
16.  def equals(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef → Any
17.  def finalize(): Unit
    Attributes
      protected[lang]
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.Throwable])
18.  final def getClass(): Class[_ <: AnyRef]
    Definition Classes
      AnyRef → Any
    Annotations
      @native()
19.  def hashCode(): Int
    Definition Classes
      AnyRef → Any
    Annotations
      @native()
20.  final def isInstanceOf[T0]: Boolean
    Definition Classes
      Any
21.  final def ne(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef
22.  final def notify(): Unit
    Definition Classes
      AnyRef
    Annotations
      @native()
23.  final def notifyAll(): Unit
    Definition Classes
      AnyRef
    Annotations
      @native()
24.  def symbolOf[T](implicit arg0: blackbox.Context.WeakTypeTag[T]): Universe.TypeSymbol

    Type symbol of `x` as derived from a type tag.

25.  final def synchronized[T0](arg0: => T0): T0
    Definition Classes
      AnyRef
26.  def toString(): String
    Definition Classes
      AnyRef → Any
27.  def typeOf[T](implicit ttag: blackbox.Context.TypeTag[T]): blackbox.Context.Type

    Shortcut for `implicitly[TypeTag[T]].tpe`

28.  def typeTag[T](implicit ttag: blackbox.Context.TypeTag[T]): blackbox.Context.TypeTag[T]

    Shortcut for `implicitly[TypeTag[T]]`

29.  final def wait(): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.InterruptedException])
30.  final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.InterruptedException])
31.  final def wait(arg0: Long): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.InterruptedException]) @native()
32.  def weakTypeOf[T](implicit attag: blackbox.Context.WeakTypeTag[T]): blackbox.Context.Type

    Shortcut for `implicitly[WeakTypeTag[T]].tpe`

33.  def weakTypeTag[T](implicit attag: blackbox.Context.WeakTypeTag[T]): blackbox.Context.WeakTypeTag[T]

    Shortcut for `implicitly[WeakTypeTag[T]]`

### Deprecated Value Members

1.  def formatted(fmtstr: String): String
   Implicit
     This member is added by an implicit conversion from Aliases toStringFormat[Aliases] 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.

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

### Inherited from Any

### Inherited by implicit conversion any2stringadd fromAliases to any2stringadd[Aliases]

### Inherited by implicit conversion StringFormat fromAliases to StringFormat[Aliases]

### Inherited by implicit conversion Ensuring fromAliases to Ensuring[Aliases]

### Inherited by implicit conversion ArrowAssoc fromAliases to ArrowAssoc[Aliases]

### Ungrouped