Class/Object

japgolly.univeq.macros

MacroUtils

Related Docs: object MacroUtils | package macros

Permalink

abstract class MacroUtils extends AnyRef

Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. MacroUtils
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new MacroUtils()

    Permalink

Type Members

  1. case class GotTree(t: scala.reflect.macros.Universe.Tree) extends TypeOrTree with Product with Serializable

    Permalink
  2. case class GotType(t: scala.reflect.macros.Universe.Type) extends TypeOrTree with Product with Serializable

    Permalink
  3. class Init extends AnyRef

    Permalink
  4. final type NameAndType = (scala.reflect.macros.Universe.TermName, scala.reflect.macros.Universe.Type)

    Permalink
  5. sealed trait TypeOrTree extends AnyRef

    Permalink

Abstract Value Members

  1. abstract val c: Context

    Permalink

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def DirectOnly: MacroUtils.DirectOnly.type

    Permalink
    Annotations
    @inline()
  5. final def Everything: MacroUtils.Everything.type

    Permalink
    Annotations
    @inline()
  6. final def LeavesOnly: MacroUtils.LeavesOnly.type

    Permalink
    Annotations
    @inline()
  7. def LitNil: scala.reflect.macros.Universe.Ident

    Permalink
  8. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  9. implicit def autoTypeOrTree1(t: scala.reflect.macros.Universe.Type): TypeOrTree

    Permalink
  10. implicit def autoTypeOrTree2(t: scala.reflect.macros.Universe.Tree): TypeOrTree

    Permalink
  11. final def caseClassType[T](implicit arg0: scala.reflect.macros.blackbox.Context.WeakTypeTag[T]): scala.reflect.macros.Universe.Type

    Permalink
  12. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  13. final def concreteWeakTypeOf[T](implicit arg0: scala.reflect.macros.blackbox.Context.WeakTypeTag[T]): scala.reflect.macros.Universe.Type

    Permalink
  14. final def crawlADT[A](tpe: scala.reflect.macros.Universe.Type, attempt: (scala.reflect.macros.Universe.ClassSymbol) ⇒ Option[A], giveUp: (scala.reflect.macros.Universe.ClassSymbol) ⇒ TraversableOnce[A]): Vector[A]

    Permalink
  15. final def determineAdtType(T: scala.reflect.macros.Universe.Type, t: scala.reflect.macros.Universe.ClassSymbol): scala.reflect.macros.Universe.Type

    Permalink

    findConcreteTypes will spit out type constructors.

    findConcreteTypes will spit out type constructors. This will turn them into types.

    T

    The ADT base trait.

    t

    The subclass.

  16. def deterministicOrderC(ts: TraversableOnce[scala.reflect.macros.Universe.ClassSymbol]): Vector[scala.reflect.macros.Universe.ClassSymbol]

    Permalink
  17. def deterministicOrderT(ts: TraversableOnce[scala.reflect.macros.Universe.Type]): Vector[scala.reflect.macros.Universe.Type]

    Permalink
  18. final def ensureCaseClass(t: scala.reflect.macros.Universe.Type): Unit

    Permalink
  19. final def ensureConcrete(t: scala.reflect.macros.Universe.Type): Unit

    Permalink
  20. final def ensureValidAdtBase(tpe: scala.reflect.macros.Universe.Type): scala.reflect.macros.Universe.ClassSymbol

    Permalink
  21. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  22. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  23. final def excludeNamedParams(exclusions: Seq[String], data: List[(scala.reflect.macros.Universe.TermName, scala.reflect.macros.Universe.Type)]): List[(scala.reflect.macros.Universe.TermName, scala.reflect.macros.Universe.Type)]

    Permalink
  24. final def fail(msg: String): Nothing

    Permalink
  25. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  26. final def findConcreteAdtTypes(tpe: scala.reflect.macros.Universe.Type, f: FindSubClasses): Vector[scala.reflect.macros.Universe.Type]

    Permalink
  27. final def findConcreteAdtTypesNE(tpe: scala.reflect.macros.Universe.Type, f: FindSubClasses): Vector[scala.reflect.macros.Universe.Type]

    Permalink
  28. final def findConcreteTypes(tpe: scala.reflect.macros.Universe.Type, f: FindSubClasses): Vector[scala.reflect.macros.Universe.ClassSymbol]

    Permalink

    Constraints: - Type must be sealed.

    Constraints: - Type must be sealed. - Type must be abstract or a trait.

  29. final def findConcreteTypesNE(tpe: scala.reflect.macros.Universe.Type, f: FindSubClasses): Vector[scala.reflect.macros.Universe.ClassSymbol]

    Permalink
  30. final def fixAdtTypeForCaseDef(t: scala.reflect.macros.Universe.Type): scala.reflect.macros.Universe.Tree

    Permalink

    Sometimes using a type directly in a clause like "case _: $t => ...", causes spurious exhaustiveness warnings.

    Sometimes using a type directly in a clause like "case _: $t => ...", causes spurious exhaustiveness warnings. I definitively know why, problably something about compiler-phase order. This fixes it consistently so far.

  31. final def flattenBlocks(trees: List[scala.reflect.macros.Universe.Tree]): Vector[scala.reflect.macros.Universe.Tree]

    Permalink
  32. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  33. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  34. def identityExpr[T](implicit arg0: scala.reflect.macros.blackbox.Context.WeakTypeTag[T]): scala.reflect.macros.blackbox.Context.Expr[(T) ⇒ T]

    Permalink
  35. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  36. implicit val liftInit: scala.reflect.macros.Universe.Liftable[Init]

    Permalink
  37. final def lowerCaseHead(s: String): String

    Permalink
  38. final def modStringHead(s: String, f: (Char) ⇒ Char): String

    Permalink
  39. final def nameAndType(T: scala.reflect.macros.Universe.Type, s: scala.reflect.macros.Universe.Symbol): NameAndType

    Permalink
  40. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  41. final def needInferImplicit(t: scala.reflect.macros.Universe.Type): scala.reflect.macros.Universe.Tree

    Permalink
  42. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  43. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  44. final def primaryConstructorParams(t: scala.reflect.macros.Universe.Type): List[scala.reflect.macros.Universe.Symbol]

    Permalink
  45. final def primaryConstructorParamsExcluding(t: scala.reflect.macros.Universe.Type, exclusions: Seq[scala.reflect.macros.blackbox.Context.Expr[Symbol]]): List[(scala.reflect.macros.Universe.TermName, scala.reflect.macros.Universe.Type)]

    Permalink
  46. final def primaryConstructorParams_require1(t: scala.reflect.macros.Universe.Type): scala.reflect.macros.Universe.Symbol

    Permalink
  47. final def primaryConstructorParams_require2(t: scala.reflect.macros.Universe.Type): (scala.reflect.macros.Universe.Symbol, scala.reflect.macros.Universe.Symbol)

    Permalink
  48. def propagateTypeParams(root: scala.reflect.macros.Universe.Type, child: scala.reflect.macros.Universe.ClassSymbol): scala.reflect.macros.Universe.Type

    Permalink

    propagateTypeParams(Either[Int, Long], Right) -> Right[Long]

  49. final def readMacroArg_boolean(e: scala.reflect.macros.blackbox.Context.Expr[Boolean]): Boolean

    Permalink
  50. final def readMacroArg_string(e: scala.reflect.macros.blackbox.Context.Expr[String]): String

    Permalink
  51. final def readMacroArg_stringString(e: scala.reflect.macros.blackbox.Context.Expr[(String, String)]): (String, scala.reflect.macros.Universe.Literal)

    Permalink
  52. final def readMacroArg_symbol(e: scala.reflect.macros.blackbox.Context.Expr[Symbol]): String

    Permalink
  53. final def readMacroArg_symbolBoolean(e: scala.reflect.macros.blackbox.Context.Expr[(Symbol, Boolean)]): (String, Boolean)

    Permalink
  54. final def readMacroArg_symbolString(e: scala.reflect.macros.blackbox.Context.Expr[(Symbol, String)]): (String, scala.reflect.macros.Universe.Literal)

    Permalink
  55. final def readMacroArg_tToLitFn[T, V](e: scala.reflect.macros.blackbox.Context.Expr[(T) ⇒ V])(implicit arg0: Manifest[V]): List[(Either[scala.reflect.macros.Universe.Select, scala.reflect.macros.Universe.Type], scala.reflect.macros.Universe.Literal)]

    Permalink
  56. final def readMacroArg_tToTree[T, V](e: scala.reflect.macros.blackbox.Context.Expr[(T) ⇒ V]): List[(Either[scala.reflect.macros.Universe.Select, scala.reflect.macros.Universe.Type], scala.reflect.macros.Universe.Tree)]

    Permalink
  57. final def replaceMacroMethod(newMethod: String): scala.reflect.macros.Universe.Select

    Permalink
  58. final def selectFQN(s: String, lastIsType: Boolean): scala.reflect.macros.Universe.RefTree

    Permalink
  59. final def sep: String

    Permalink
  60. def showUnorderedTypes(ts: Set[scala.reflect.macros.Universe.Type]): String

    Permalink
  61. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  62. final def tcApplyFn(t: scala.reflect.macros.Universe.Type): scala.reflect.macros.Universe.Select

    Permalink

    Create code for a function that will call .apply() on a given type's type companion object.

  63. final def toSelectFQN(t: scala.reflect.macros.Universe.TypeSymbol): scala.reflect.macros.Universe.RefTree

    Permalink
  64. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  65. final def tryInferImplicit(t: scala.reflect.macros.Universe.Type): Option[scala.reflect.macros.Universe.Tree]

    Permalink
  66. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  67. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  68. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  69. final def warn(msg: String): Unit

    Permalink

Inherited from AnyRef

Inherited from Any

Ungrouped