Class/Object

de.surfice.smacrotools

MacroAnnotationHandler

Related Docs: object MacroAnnotationHandler | package smacrotools

Permalink

abstract class MacroAnnotationHandler extends WhiteboxMacroTools

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. MacroAnnotationHandler
  2. WhiteboxMacroTools
  3. CommonMacroTools
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new MacroAnnotationHandler()

    Permalink

Type Members

  1. type Analysis = ((CommonParts, Data)) ⇒ (CommonParts, Data)

    Permalink
  2. case class ClassParts(name: scala.reflect.macros.Universe.TypeName, tparams: Seq[scala.reflect.macros.Universe.Tree], params: Seq[scala.reflect.macros.Universe.Tree], parents: Seq[scala.reflect.macros.Universe.Tree], self: scala.reflect.macros.Universe.Tree, body: Seq[scala.reflect.macros.Universe.Tree], fullName: String, modifiers: scala.reflect.macros.Universe.Modifiers, ctorMods: scala.reflect.macros.Universe.Modifiers, companion: Option[ObjectParts] = None) extends TypeParts with Product with Serializable

    Permalink
    Definition Classes
    WhiteboxMacroTools
  3. case class ClassTransformData(origParts: MacroAnnotationHandler.ClassParts, modParts: MacroAnnotationHandler.ClassParts, data: Data) extends TransformData[ClassParts] with TypeTransformData[ClassParts] with Product with Serializable

    Permalink
  4. type ClassTransformation = (TransformData[CommonParts]) ⇒ ClassTransformData

    Permalink
  5. sealed trait CommonParts extends AnyRef

    Permalink
    Definition Classes
    WhiteboxMacroTools
  6. type Data = Map[String, Any]

    Permalink
  7. case class ObjectParts(name: scala.reflect.macros.Universe.TermName, modifiers: scala.reflect.macros.Universe.Modifiers, parents: Seq[scala.reflect.macros.Universe.Tree], body: Seq[scala.reflect.macros.Universe.Tree], fullName: String, isCompanion: Boolean = false) extends CommonParts with Product with Serializable

    Permalink
    Definition Classes
    WhiteboxMacroTools
  8. case class ObjectTransformData(origParts: MacroAnnotationHandler.ObjectParts, modParts: MacroAnnotationHandler.ObjectParts, data: Data) extends TransformData[ObjectParts] with Product with Serializable

    Permalink
  9. type ObjectTransformation = (TransformData[CommonParts]) ⇒ ObjectTransformData

    Permalink
  10. case class TraitParts(name: scala.reflect.macros.Universe.TypeName, tparams: Seq[scala.reflect.macros.Universe.Tree], params: Seq[scala.reflect.macros.Universe.Tree], parents: Seq[scala.reflect.macros.Universe.Tree], self: scala.reflect.macros.Universe.Tree, body: Seq[scala.reflect.macros.Universe.Tree], fullName: String, modifiers: scala.reflect.macros.Universe.Modifiers, companion: Option[ObjectParts] = None) extends TypeParts with Product with Serializable

    Permalink
    Definition Classes
    WhiteboxMacroTools
  11. case class TraitTransformData(origParts: MacroAnnotationHandler.TraitParts, modParts: MacroAnnotationHandler.TraitParts, data: Data) extends TransformData[TraitParts] with TypeTransformData[TraitParts] with Product with Serializable

    Permalink
  12. sealed abstract class TransformData[+T <: CommonParts] extends AnyRef

    Permalink
  13. type Transformation = (TransformData[CommonParts]) ⇒ TransformData[CommonParts]

    Permalink
  14. sealed trait TypeParts extends CommonParts

    Permalink
    Definition Classes
    WhiteboxMacroTools
  15. sealed trait TypeTransformData[+T <: TypeParts] extends TransformData[T]

    Permalink
  16. type TypeTransformation = (TransformData[CommonParts]) ⇒ TypeTransformData[TypeParts]

    Permalink
  17. type UniverseProvider = AnyRef { val universe: scala.reflect.macros.Universe }

    Permalink
    Definition Classes
    CommonMacroTools

Abstract Value Members

  1. abstract def annotationName: String

    Permalink
  2. abstract val c: Context

    Permalink
    Definition Classes
    WhiteboxMacroToolsCommonMacroTools
  3. abstract def createCompanion: Boolean

    Permalink
  4. abstract def supportsClasses: Boolean

    Permalink
  5. abstract def supportsObjects: Boolean

    Permalink
  6. abstract def supportsTraits: Boolean

    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. object TransformData

    Permalink
  5. def analyze: Analysis

    Permalink
  6. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  7. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. final def eq(arg0: AnyRef): Boolean

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

    Permalink
    Definition Classes
    AnyRef → Any
  10. def error(msg: String): Unit

    Permalink
    Attributes
    protected[this]
    Definition Classes
    CommonMacroTools
  11. def extractAnnotationParameters(symbol: scala.reflect.macros.Universe.Symbol, annotation: String, paramNames: Seq[String]): Option[Map[String, Option[scala.reflect.macros.Universe.Tree]]]

    Permalink

    Checks if the provided symbol is annotated with the specified type and returns the trees for all arguments of this annotation.

    Checks if the provided symbol is annotated with the specified type and returns the trees for all arguments of this annotation.

    symbol

    Symbol to be checked for the annotation

    annotation

    fully qualified name of the annotation

    paramNames

    list with all allowed parameter names of the annotation (in the correct order)

    Attributes
    protected[this]
    Definition Classes
    CommonMacroTools
  12. def extractAnnotationParameters(annotation: scala.reflect.macros.Universe.Tree, lastArgListNames: Seq[String], firstArgListNames: Seq[String] = Nil): Map[String, Option[scala.reflect.macros.Universe.Tree]]

    Permalink

    Takes a tree representing an annotation value and a list with the names of all valid parameter names for this annotation (in the correct order), and returns a map containing the tree for each specified parameter, or None for unspecified parameters.

    Takes a tree representing an annotation value and a list with the names of all valid parameter names for this annotation (in the correct order), and returns a map containing the tree for each specified parameter, or None for unspecified parameters.

    annotation

    complete annotation tree

    lastArgListNames

    list with all allowed parameter names for the last argument list (in the correct order)

    firstArgListNames

    list with all allowed parameter names for the first argument list (if two arg lists are supported)

    Attributes
    protected[this]
    Definition Classes
    CommonMacroTools
  13. def extractObjectParts(moduleDef: scala.reflect.macros.Universe.ModuleDef): ObjectParts

    Permalink
    Definition Classes
    WhiteboxMacroTools
  14. def extractStringConstant(arg: scala.reflect.macros.Universe.Tree): Option[String]

    Permalink
    Attributes
    protected[this]
    Definition Classes
    CommonMacroTools
  15. def extractStringConstantSeq(arg: scala.reflect.macros.Universe.Tree): Seq[String]

    Permalink
    Attributes
    protected[this]
    Definition Classes
    CommonMacroTools
  16. def extractTypeParts(classDef: scala.reflect.macros.Universe.ClassDef): TypeParts

    Permalink

    Extracts the name, constructor parameters, parent types (extends), and the body of the specified class declaration.

    Extracts the name, constructor parameters, parent types (extends), and the body of the specified class declaration.

    Definition Classes
    WhiteboxMacroTools
  17. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  18. def findAnnotation(annotations: Seq[scala.reflect.macros.Universe.Tree], annotation: String): Option[scala.reflect.macros.Universe.Tree]

    Permalink
    Attributes
    protected[this]
    Definition Classes
    CommonMacroTools
  19. def findAnnotation(symbol: scala.reflect.macros.Universe.Symbol, annotation: String): Option[scala.reflect.macros.Universe.Tree]

    Permalink

    Returns the tree for the first annotation of the specified type found on the symbol, or None.

    Returns the tree for the first annotation of the specified type found on the symbol, or None.

    symbol

    Symbol to be searched for the specified annotation type

    annotation

    Fully qualified name of the annotation type

    Attributes
    protected[this]
    Definition Classes
    CommonMacroTools
  20. def findAnnotationTypes(annotations: Seq[scala.reflect.macros.Universe.Tree]): Seq[(scala.reflect.macros.Universe.Type, scala.reflect.macros.Universe.Tree)]

    Permalink
    Attributes
    protected[this]
    Definition Classes
    CommonMacroTools
  21. def findAnnotations(annotations: Seq[scala.reflect.macros.Universe.Tree]): Seq[(String, scala.reflect.macros.Universe.Tree)]

    Permalink
    Attributes
    protected[this]
    Definition Classes
    CommonMacroTools
  22. def findAnnotations(symbol: scala.reflect.macros.Universe.Symbol): Seq[(String, scala.reflect.macros.Universe.Tree)]

    Permalink

    Returns a list of tuples containing all annotations found on the specified symbol.

    Returns a list of tuples containing all annotations found on the specified symbol. The first element of each tuple is the fully qualified annotation name, the second element represents the annotation tree.

    symbol

    type symbol to be parsed for annotations

    Attributes
    protected[this]
    Definition Classes
    CommonMacroTools
  23. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  24. def getDebugConfig(modifiers: scala.reflect.macros.Universe.Modifiers): DebugConfig

    Permalink

    Returns the debug configuration from the provided modifiers

    Returns the debug configuration from the provided modifiers

    Definition Classes
    CommonMacroTools
  25. def getEnclosingNamespace(): Option[String]

    Permalink

    Returns the full path name of the enclosing package (at the current position), or None, if there is no enclosing package.

    Returns the full path name of the enclosing package (at the current position), or None, if there is no enclosing package.

    Attributes
    protected[this]
    Definition Classes
    CommonMacroTools
  26. def getQualifiedTypeName(tree: scala.reflect.macros.Universe.Tree, withMacrosDisabled: Boolean = false, dealias: Boolean = false): String

    Permalink

    Takes a tree and returns the fully qualified name of its type.

    Takes a tree and returns the fully qualified name of its type.

    tree

    Tree for which the type is to be evaluated

    withMacrosDisabled

    set to true to avoid infinite loops when checking macros

    dealias

    Set to true, to de-alias types

    returns

    the fully qualified name of the type

    Attributes
    protected[this]
    Definition Classes
    CommonMacroTools
  27. def getType(tree: scala.reflect.macros.Universe.Tree, withMacrosDisabled: Boolean = false): scala.reflect.macros.Universe.Type

    Permalink

    Returns the type of the specified tree.

    Returns the type of the specified tree.

    Definition Classes
    CommonMacroTools
  28. def handleClassDef(cls: scala.reflect.macros.Universe.ClassDef, data: Data = Map()): (scala.reflect.macros.Universe.Tree, Data)

    Permalink
  29. def handleModuleDef(obj: scala.reflect.macros.Universe.ModuleDef, data: Data = Map()): (scala.reflect.macros.Universe.Tree, Data)

    Permalink
  30. def hasAnnotation(annotations: Seq[scala.reflect.macros.Universe.Tree], tpe: scala.reflect.macros.Universe.Type): Boolean

    Permalink
    Attributes
    protected[this]
    Definition Classes
    CommonMacroTools
  31. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  32. def impl(annottees: scala.reflect.macros.whitebox.Context.Expr[Any]*): scala.reflect.macros.whitebox.Context.Expr[Any]

    Permalink
  33. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  34. def isSet(flag: String): Boolean

    Permalink

    Returns true if the specified macro-setting is defined as an option to scalac

    Returns true if the specified macro-setting is defined as an option to scalac

    Attributes
    protected[this]
    Definition Classes
    CommonMacroTools
  35. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  36. final def notify(): Unit

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

    Permalink
    Definition Classes
    AnyRef
  38. def paramNames(params: Iterable[scala.reflect.macros.Universe.Tree]): Iterable[scala.reflect.macros.Universe.TermName]

    Permalink

    Takes a sequence of parameter definition trees and returns the corresponding parameter names.

    Takes a sequence of parameter definition trees and returns the corresponding parameter names.

    Attributes
    protected[this]
    Definition Classes
    CommonMacroTools
  39. def printTree(tree: scala.reflect.macros.Universe.Tree): Unit

    Permalink
    Attributes
    protected[this]
    Definition Classes
    CommonMacroTools
  40. def setting(flag: String, default: String): String

    Permalink
    Attributes
    protected[this]
    Definition Classes
    CommonMacroTools
  41. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  42. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  43. def transform: Transformation

    Permalink
  44. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from WhiteboxMacroTools

Inherited from CommonMacroTools

Inherited from AnyRef

Inherited from Any

Ungrouped