summaryrefslogtreecommitdiff
path: root/src/reflect/scala/reflect/macros/ExprUtils.scala
blob: 3e2655b722c90fa0fb48898f6ed3dfee74a6e009 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
package scala
package reflect
package macros

/**
 * <span class="badge badge-red" style="float: right;">EXPERIMENTAL</span>
 *
 * A slice of [[scala.reflect.macros.blackbox.Context the Scala macros context]] that defines shorthands for the
 *  most common `Expr`-creating functions.
 */
trait ExprUtils {
  self: blackbox.Context =>

  /** Shorthand for `Literal(Constant(null))` in the underlying `universe`. */
  @deprecated("use quasiquotes instead", "2.11.0")
  def literalNull: Expr[Null]

  /** Shorthand for `Literal(Constant(()))` in the underlying `universe`. */
  @deprecated("use quasiquotes instead", "2.11.0")
  def literalUnit: Expr[Unit]

  /** Shorthand for `Literal(Constant(true))` in the underlying `universe`. */
  @deprecated("use quasiquotes instead", "2.11.0")
  def literalTrue: Expr[Boolean]

  /** Shorthand for `Literal(Constant(false))` in the underlying `universe`. */
  @deprecated("use quasiquotes instead", "2.11.0")
  def literalFalse: Expr[Boolean]

  /** Shorthand for `Literal(Constant(x: Boolean))` in the underlying `universe`. */
  @deprecated("use quasiquotes instead", "2.11.0")
  def literal(x: Boolean): Expr[Boolean]

  /** Shorthand for `Literal(Constant(x: Byte))` in the underlying `universe`. */
  @deprecated("use quasiquotes instead", "2.11.0")
  def literal(x: Byte): Expr[Byte]

  /** Shorthand for `Literal(Constant(x: Short))` in the underlying `universe`. */
  @deprecated("use quasiquotes instead", "2.11.0")
  def literal(x: Short): Expr[Short]

  /** Shorthand for `Literal(Constant(x: Int))` in the underlying `universe`. */
  @deprecated("use quasiquotes instead", "2.11.0")
  def literal(x: Int): Expr[Int]

  /** Shorthand for `Literal(Constant(x: Long))` in the underlying `universe`. */
  @deprecated("use quasiquotes instead", "2.11.0")
  def literal(x: Long): Expr[Long]

  /** Shorthand for `Literal(Constant(x: Float))` in the underlying `universe`. */
  @deprecated("use quasiquotes instead", "2.11.0")
  def literal(x: Float): Expr[Float]

  /** Shorthand for `Literal(Constant(x: Double))` in the underlying `universe`. */
  @deprecated("use quasiquotes instead", "2.11.0")
  def literal(x: Double): Expr[Double]

  /** Shorthand for `Literal(Constant(x: String))` in the underlying `universe`. */
  @deprecated("use quasiquotes instead", "2.11.0")
  def literal(x: String): Expr[String]

  /** Shorthand for `Literal(Constant(x: Char))` in the underlying `universe`. */
  @deprecated("use quasiquotes instead", "2.11.0")
  def literal(x: Char): Expr[Char]
}