Class

io.getquill.context

ActionMacro

Related Doc: package context

Permalink

class ActionMacro extends ContextMacro with ReifyLiftings

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ActionMacro
  2. ContextMacro
  3. Quotation
  4. ReifyLiftings
  5. Parsing
  6. Unliftables
  7. Liftables
  8. AnyRef
  9. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ActionMacro(c: scala.reflect.macros.whitebox.Context)

    Permalink

Type Members

  1. case class Parser[T](p: PartialFunction[scala.reflect.macros.Universe.Tree, T])(implicit ct: ClassTag[T]) extends Product with Serializable

    Permalink
    Definition Classes
    Parsing

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. implicit val actionLiftable: scala.reflect.macros.Universe.Liftable[Action]

    Permalink
    Definition Classes
    Liftables
  5. val actionParser: Parser[Ast]

    Permalink
    Definition Classes
    Parsing
  6. implicit val actionUnliftable: scala.reflect.macros.Universe.Unliftable[Action]

    Permalink
    Definition Classes
    Unliftables
  7. implicit val aggregationOperatorLiftable: scala.reflect.macros.Universe.Liftable[AggregationOperator]

    Permalink
    Definition Classes
    Liftables
  8. implicit val aggregationOperatorUnliftable: scala.reflect.macros.Universe.Unliftable[AggregationOperator]

    Permalink
    Definition Classes
    Unliftables
  9. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  10. implicit val assignmentLiftable: scala.reflect.macros.Universe.Liftable[Assignment]

    Permalink
    Definition Classes
    Liftables
  11. implicit val assignmentUnliftable: scala.reflect.macros.Universe.Unliftable[Assignment]

    Permalink
    Definition Classes
    Unliftables
  12. implicit val astLiftable: scala.reflect.macros.Universe.Liftable[Ast]

    Permalink
    Definition Classes
    Liftables
  13. val astParser: Parser[Ast]

    Permalink
    Definition Classes
    Parsing
  14. implicit val astUnliftable: scala.reflect.macros.Universe.Unliftable[Ast]

    Permalink
    Definition Classes
    Unliftables
  15. implicit val binaryOperatorLiftable: scala.reflect.macros.Universe.Liftable[BinaryOperator]

    Permalink
    Definition Classes
    Liftables
  16. implicit val binaryOperatorUnliftable: scala.reflect.macros.Universe.Unliftable[BinaryOperator]

    Permalink
    Definition Classes
    Unliftables
  17. val blockParser: Parser[Block]

    Permalink
    Definition Classes
    Parsing
  18. val booleanOperationParser: Parser[Operation]

    Permalink
    Definition Classes
    Parsing
  19. val boxingParser: Parser[Ast]

    Permalink
    Definition Classes
    Parsing
  20. val c: scala.reflect.macros.whitebox.Context

    Permalink
    Definition Classes
    ActionMacroContextMacroQuotationReifyLiftingsUnliftablesLiftables
  21. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  22. implicit val conflictActionLiftable: scala.reflect.macros.Universe.Liftable[Action]

    Permalink
    Definition Classes
    Liftables
  23. implicit val conflictActionUnliftable: scala.reflect.macros.Universe.Unliftable[Action]

    Permalink
    Definition Classes
    Unliftables
  24. val conflictParser: Parser[Ast]

    Permalink
    Definition Classes
    Parsing
  25. implicit val conflictTargetLiftable: scala.reflect.macros.Universe.Liftable[Target]

    Permalink
    Definition Classes
    Liftables
  26. implicit val conflictTargetUnliftable: scala.reflect.macros.Universe.Unliftable[Target]

    Permalink
    Definition Classes
    Unliftables
  27. def doubleQuote[T](body: scala.reflect.macros.Universe.Expr[Any])(implicit arg0: scala.reflect.macros.Universe.WeakTypeTag[T]): scala.reflect.macros.Universe.Tree

    Permalink
    Definition Classes
    Quotation
  28. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  29. val equalityOperationParser: Parser[Operation]

    Permalink
    Definition Classes
    Parsing
  30. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  31. def expand(ast: Ast): scala.reflect.macros.Universe.Tree

    Permalink
    Attributes
    protected
    Definition Classes
    ContextMacro
  32. def expandBatchAction(quoted: scala.reflect.macros.Universe.Tree)(call: (scala.reflect.macros.Universe.Tree, scala.reflect.macros.Universe.Tree, scala.reflect.macros.Universe.Tree) ⇒ scala.reflect.macros.Universe.Tree): scala.reflect.macros.Universe.Tree

    Permalink
  33. def extractAst[T](quoted: scala.reflect.macros.Universe.Tree): Ast

    Permalink
    Attributes
    protected
    Definition Classes
    ContextMacro
  34. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  35. val functionApplyParser: Parser[Operation]

    Permalink
    Definition Classes
    Parsing
  36. val functionParser: Parser[Function]

    Permalink
    Definition Classes
    Parsing
  37. final def getClass(): Class[_]

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

    Permalink
    Definition Classes
    AnyRef → Any
  39. implicit val identLiftable: scala.reflect.macros.Universe.Liftable[Ident]

    Permalink
    Definition Classes
    Liftables
  40. val identParser: Parser[Ident]

    Permalink
    Definition Classes
    Parsing
  41. implicit val identUnliftable: scala.reflect.macros.Universe.Unliftable[Ident]

    Permalink
    Definition Classes
    Unliftables
  42. val ifParser: Parser[If]

    Permalink
    Definition Classes
    Parsing
  43. val infixParser: Parser[Ast]

    Permalink
    Definition Classes
    Parsing
  44. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  45. val joinCallParser: Parser[(JoinType, Ast, Option[Ast])]

    Permalink
    Definition Classes
    Parsing
  46. implicit val joinTypeLiftable: scala.reflect.macros.Universe.Liftable[JoinType]

    Permalink
    Definition Classes
    Liftables
  47. implicit val joinTypeUnliftable: scala.reflect.macros.Universe.Unliftable[JoinType]

    Permalink
    Definition Classes
    Unliftables
  48. implicit val liftLiftable: scala.reflect.macros.Universe.Liftable[Lift]

    Permalink
    Definition Classes
    Liftables
  49. val liftParser: Parser[Lift]

    Permalink
    Definition Classes
    Parsing
  50. implicit val liftUnliftable: scala.reflect.macros.Universe.Unliftable[Lift]

    Permalink
    Definition Classes
    Unliftables
  51. implicit def listUnliftable[T](implicit u: scala.reflect.macros.Universe.Unliftable[T]): scala.reflect.macros.Universe.Unliftable[List[T]]

    Permalink
    Definition Classes
    Unliftables
  52. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  55. val numericOperationParser: Parser[Operation]

    Permalink
    Definition Classes
    Parsing
  56. val operationParser: Parser[Operation]

    Permalink
    Definition Classes
    Parsing
  57. implicit val optionOperationLiftable: scala.reflect.macros.Universe.Liftable[OptionOperation]

    Permalink
    Definition Classes
    Liftables
  58. val optionOperationParser: Parser[OptionOperation]

    Permalink

    Process scala Option-related DSL into AST constructs.

    Process scala Option-related DSL into AST constructs. In Option[T] if T is a row type (typically a product or instance of Embedded) the it is impossible to physically null check in SQL (e.g. you cannot do select p.* from People p where p is not null). However, when a column (or "leaf-type") is encountered, doing a null check during operations such as map or flatMap is necessary in order for constructs like case statements to work correctly.
    For example, the statement:

    query[Person].map(_.name + " S.r.").getOrElse("unknown")
    
    needs to become:

    select case when p.name is not null then p.name + 'S.r' else 'unknown' end from ...
    
    Otherwise it will not function correctly. This latter kind of operation is involves null checking versus the former (i.e. the table-select example) which cannot, and is therefore called "Unchecked."

    The isOptionRowType method checks if the type-parameter of an option is a Product. The isOptionEmbedded checks if it an embedded object.

    select case when p.name is not null then p.name + 'S.r' else 'unknown' end from ... Otherwise it will not function correctly. This latter kind of operation is involves null checking versus the former (i.e. the table-select example) which cannot, and is therefore called "Unchecked." The `isOptionRowType` method checks if the type-parameter of an option is a Product. The isOptionEmbedded checks if it an embedded object. query[Person].map(_.name + " S.r.").getOrElse("unknown") needs to become:

    select case when p.name is not null then p.name + 'S.r' else 'unknown' end from ...
    
    Otherwise it will not function correctly. This latter kind of operation is involves null checking versus the former (i.e. the table-select example) which cannot, and is therefore called "Unchecked."

    The isOptionRowType method checks if the type-parameter of an option is a Product. The isOptionEmbedded checks if it an embedded object.

    select case when p.name is not null then p.name + 'S.r' else 'unknown' end from ... Otherwise it will not function correctly. This latter kind of operation is involves null checking versus the former (i.e. the table-select example) which cannot, and is therefore called "Unchecked." The `isOptionRowType` method checks if the type-parameter of an option is a Product. The isOptionEmbedded checks if it an embedded object.

    Definition Classes
    Parsing
  59. implicit val optionOperationUnliftable: scala.reflect.macros.Universe.Unliftable[OptionOperation]

    Permalink
    Definition Classes
    Unliftables
  60. implicit def optionUnliftable[T](implicit u: scala.reflect.macros.Universe.Unliftable[T]): scala.reflect.macros.Universe.Unliftable[Option[T]]

    Permalink
    Definition Classes
    Unliftables
  61. implicit val orderingLiftable: scala.reflect.macros.Universe.Liftable[Ordering]

    Permalink
    Definition Classes
    Liftables
  62. implicit val orderingParser: Parser[Ordering]

    Permalink
    Definition Classes
    Parsing
  63. implicit val orderingUnliftable: scala.reflect.macros.Universe.Unliftable[Ordering]

    Permalink
    Definition Classes
    Unliftables
  64. val patMatchParser: Parser[Ast]

    Permalink
    Definition Classes
    Parsing
  65. val patMatchValParser: Parser[Val]

    Permalink
    Definition Classes
    Parsing
  66. implicit val propertyAliasLiftable: scala.reflect.macros.Universe.Liftable[PropertyAlias]

    Permalink
    Definition Classes
    Liftables
  67. implicit val propertyAliasParser: Parser[PropertyAlias]

    Permalink
    Definition Classes
    Parsing
  68. implicit val propertyAliasUnliftable: scala.reflect.macros.Universe.Unliftable[PropertyAlias]

    Permalink
    Definition Classes
    Unliftables
  69. implicit val propertyLiftable: scala.reflect.macros.Universe.Liftable[Property]

    Permalink
    Definition Classes
    Liftables
  70. val propertyParser: Parser[Property]

    Permalink
    Definition Classes
    Parsing
  71. implicit val propertyUnliftable: scala.reflect.macros.Universe.Unliftable[Property]

    Permalink
    Definition Classes
    Unliftables
  72. implicit val queryLiftable: scala.reflect.macros.Universe.Liftable[Query]

    Permalink
    Definition Classes
    Liftables
  73. val queryParser: Parser[Ast]

    Permalink
    Definition Classes
    Parsing
  74. implicit val queryUnliftable: scala.reflect.macros.Universe.Unliftable[Query]

    Permalink
    Definition Classes
    Unliftables
  75. def quote[T](body: scala.reflect.macros.Universe.Tree)(implicit t: scala.reflect.macros.Universe.WeakTypeTag[T]): scala.reflect.macros.whitebox.Context.Tree

    Permalink
    Definition Classes
    Quotation
  76. val quotedAstParser: Parser[Ast]

    Permalink
    Definition Classes
    Parsing
  77. def quotedFunctionBody(func: scala.reflect.macros.Universe.Expr[Any]): scala.reflect.macros.Universe.Tree

    Permalink
    Definition Classes
    Quotation
  78. def reifyLiftings(ast: Ast): (Ast, scala.reflect.macros.Universe.Tree)

    Permalink
    Attributes
    protected
    Definition Classes
    ReifyLiftings
  79. def runAction(quoted: scala.reflect.macros.Universe.Tree): scala.reflect.macros.Universe.Tree

    Permalink
  80. def runActionReturning[T](quoted: scala.reflect.macros.Universe.Tree)(implicit t: scala.reflect.macros.Universe.WeakTypeTag[T]): scala.reflect.macros.Universe.Tree

    Permalink
  81. def runBatchAction(quoted: scala.reflect.macros.Universe.Tree): scala.reflect.macros.Universe.Tree

    Permalink
  82. def runBatchActionReturning[T](quoted: scala.reflect.macros.Universe.Tree)(implicit t: scala.reflect.macros.Universe.WeakTypeTag[T]): scala.reflect.macros.Universe.Tree

    Permalink
  83. val setOperationParser: Parser[Operation]

    Permalink
    Definition Classes
    Parsing
  84. val stringInterpolationParser: Parser[Ast]

    Permalink
    Definition Classes
    Parsing
  85. val stringOperationParser: Parser[Operation]

    Permalink
    Definition Classes
    Parsing
  86. final def synchronized[T0](arg0: ⇒ T0): T0

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

    Permalink
    Definition Classes
    AnyRef → Any
  88. def translateBatchQuery(quoted: scala.reflect.macros.Universe.Tree): scala.reflect.macros.Universe.Tree

    Permalink
  89. def translateQuery(quoted: scala.reflect.macros.Universe.Tree): scala.reflect.macros.Universe.Tree

    Permalink
  90. implicit val traversableOperationLiftable: scala.reflect.macros.Universe.Liftable[TraversableOperation]

    Permalink
    Definition Classes
    Liftables
  91. val traversableOperationParser: Parser[TraversableOperation]

    Permalink
    Definition Classes
    Parsing
  92. implicit val traversableOperationUnliftable: scala.reflect.macros.Universe.Unliftable[TraversableOperation]

    Permalink
    Definition Classes
    Unliftables
  93. implicit val unaryOperatorLiftable: scala.reflect.macros.Universe.Liftable[UnaryOperator]

    Permalink
    Definition Classes
    Liftables
  94. implicit val unaryOperatorUnliftable: scala.reflect.macros.Universe.Unliftable[UnaryOperator]

    Permalink
    Definition Classes
    Unliftables
  95. def unquote[T](tree: scala.reflect.macros.Universe.Tree)(implicit ct: ClassTag[T]): Option[T]

    Permalink
    Attributes
    protected
    Definition Classes
    Quotation
  96. val valParser: Parser[Val]

    Permalink
    Definition Classes
    Parsing
  97. implicit val valueLiftable: scala.reflect.macros.Universe.Liftable[Value]

    Permalink
    Definition Classes
    Liftables
  98. val valueParser: Parser[Ast]

    Permalink
    Definition Classes
    Parsing
  99. implicit val valueUnliftable: scala.reflect.macros.Universe.Unliftable[Value]

    Permalink
    Definition Classes
    Unliftables
  100. final def wait(): Unit

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

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

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

Inherited from ContextMacro

Inherited from Quotation

Inherited from ReifyLiftings

Inherited from Parsing

Inherited from Unliftables

Inherited from Liftables

Inherited from AnyRef

Inherited from Any

Ungrouped