Class

japgolly.microlibs.macro_utils

WhiteboxMacroUtils

Related Doc: package macro_utils

Permalink

abstract class WhiteboxMacroUtils extends MacroUtils

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

Instance Constructors

  1. new WhiteboxMacroUtils()

    Permalink

Type Members

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

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

    Permalink
    Definition Classes
    MacroUtils
  3. class Init extends AnyRef

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

    Permalink
    Definition Classes
    MacroUtils
  5. sealed trait TypeOrTree extends AnyRef

    Permalink
    Definition Classes
    MacroUtils

Abstract Value Members

  1. abstract val c: Context

    Permalink
    Definition Classes
    WhiteboxMacroUtilsMacroUtils

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
    Definition Classes
    MacroUtils
    Annotations
    @inline()
  5. final def Everything: MacroUtils.Everything.type

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

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

    Permalink
    Definition Classes
    MacroUtils
  8. final def asInstanceOf[T0]: T0

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

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

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

    Permalink
    Definition Classes
    MacroUtils
  12. def clone(): AnyRef

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

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

    Permalink
    Definition Classes
    MacroUtils
  15. def determineAdtType(root: 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.

    root

    The ADT base trait.

    t

    The subclass.

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

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

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

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

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

    Permalink
    Definition Classes
    MacroUtils
  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
    Definition Classes
    MacroUtils
  24. def extractStaticAnnotationArgs: List[scala.reflect.macros.Universe.Tree]

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

    Permalink
    Definition Classes
    MacroUtils
  26. def finalize(): Unit

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

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

    Permalink
    Definition Classes
    MacroUtils
  29. 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.

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

    Permalink
    Definition Classes
    MacroUtils
  31. 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.

    Definition Classes
    MacroUtils
  32. final def flattenBlocks(trees: List[scala.reflect.macros.Universe.Tree]): Vector[scala.reflect.macros.Universe.Tree]

    Permalink
    Definition Classes
    MacroUtils
  33. final def getClass(): Class[_]

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

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

    Permalink
    Definition Classes
    MacroUtils
  36. final def isInstanceOf[T0]: Boolean

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

    Permalink
    Definition Classes
    MacroUtils
  38. final def lowerCaseHead(s: String): String

    Permalink
    Definition Classes
    MacroUtils
  39. final def modStringHead(s: String, f: (Char) ⇒ Char): String

    Permalink
    Definition Classes
    MacroUtils
  40. final def nameAndType(T: scala.reflect.macros.Universe.Type, s: scala.reflect.macros.Universe.Symbol): NameAndType

    Permalink
    Definition Classes
    MacroUtils
  41. final def ne(arg0: AnyRef): Boolean

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

    Permalink
    Definition Classes
    MacroUtils
  43. final def notify(): Unit

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

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

    Permalink
    Definition Classes
    MacroUtils
  46. final def primaryConstructorParamsExcluding(t: scala.reflect.macros.Universe.Type, exclusions: Seq[scala.reflect.macros.whitebox.Context.Expr[Symbol]]): List[(scala.reflect.macros.Universe.TermName, scala.reflect.macros.Universe.Type)]

    Permalink
    Definition Classes
    MacroUtils
  47. final def primaryConstructorParams_require1(t: scala.reflect.macros.Universe.Type): scala.reflect.macros.Universe.Symbol

    Permalink
    Definition Classes
    MacroUtils
  48. final def primaryConstructorParams_require2(t: scala.reflect.macros.Universe.Type): (scala.reflect.macros.Universe.Symbol, scala.reflect.macros.Universe.Symbol)

    Permalink
    Definition Classes
    MacroUtils
  49. def propagateTypeParams(root0: scala.reflect.macros.Universe.Type, child: scala.reflect.macros.Universe.ClassSymbol): scala.reflect.macros.Universe.Type

    Permalink

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

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

    Definition Classes
    MacroUtils
  50. final def readMacroArg_boolean(e: scala.reflect.macros.whitebox.Context.Expr[Boolean]): Boolean

    Permalink
    Definition Classes
    MacroUtils
  51. final def readMacroArg_string(e: scala.reflect.macros.whitebox.Context.Expr[String]): String

    Permalink
    Definition Classes
    MacroUtils
  52. final def readMacroArg_stringString(e: scala.reflect.macros.whitebox.Context.Expr[(String, String)]): (String, scala.reflect.macros.Universe.Literal)

    Permalink
    Definition Classes
    MacroUtils
  53. final def readMacroArg_symbol(e: scala.reflect.macros.whitebox.Context.Expr[Symbol]): String

    Permalink
    Definition Classes
    MacroUtils
  54. final def readMacroArg_symbolBoolean(e: scala.reflect.macros.whitebox.Context.Expr[(Symbol, Boolean)]): (String, Boolean)

    Permalink
    Definition Classes
    MacroUtils
  55. final def readMacroArg_symbolString(e: scala.reflect.macros.whitebox.Context.Expr[(Symbol, String)]): (String, scala.reflect.macros.Universe.Literal)

    Permalink
    Definition Classes
    MacroUtils
  56. final def readMacroArg_tToLitFn[T, V](e: scala.reflect.macros.whitebox.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
    Definition Classes
    MacroUtils
  57. final def readMacroArg_tToTree[T, V](e: scala.reflect.macros.whitebox.Context.Expr[(T) ⇒ V]): List[(Either[scala.reflect.macros.Universe.Select, scala.reflect.macros.Universe.Type], scala.reflect.macros.Universe.Tree)]

    Permalink
    Definition Classes
    MacroUtils
  58. def replaceEmptyBodyInAnnotatedObject(annottees: Seq[scala.reflect.macros.whitebox.Context.Expr[Any]])(newBody: List[scala.reflect.macros.Universe.Tree]): scala.reflect.macros.Universe.Tree

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

    Permalink
    Definition Classes
    MacroUtils
  60. final def selectFQN(s: String, lastIsType: Boolean): scala.reflect.macros.Universe.RefTree

    Permalink
    Definition Classes
    MacroUtils
  61. final def sep: String

    Permalink
    Definition Classes
    MacroUtils
  62. def showUnorderedTypes(ts: Set[scala.reflect.macros.Universe.Type]): String

    Permalink
    Definition Classes
    MacroUtils
  63. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  64. 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.

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

    Definition Classes
    MacroUtils
  65. final def toSelectFQN(t: scala.reflect.macros.Universe.TypeSymbol): scala.reflect.macros.Universe.RefTree

    Permalink
    Definition Classes
    MacroUtils
  66. def toString(): String

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

    Permalink
    Definition Classes
    MacroUtils
  68. final def wait(): Unit

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

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

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

    Permalink
    Definition Classes
    MacroUtils

Inherited from MacroUtils

Inherited from AnyRef

Inherited from Any

Ungrouped