sqlest

extractor

package extractor

Visibility
  1. Public
  2. All

Type Members

  1. case class CaseClassExtractorMacro(c: Context) extends Product with Serializable

  2. trait CellExtractor[Row, A] extends Extractor[Row, A] with SimpleExtractor[Row, A] with SingleRowExtractor[Row, A]

    Extractor that emits the values for a single cell.

  3. case class ConstantExtractor[Row, A](value: A) extends Extractor[Row, A] with SimpleExtractor[Row, A] with SingleRowExtractor[Row, A] with Product with Serializable

    Extractor that always returns the same value

  4. trait Extractable[Row, -A] extends AnyRef

    Type class witnessing that a default extractor for type A exists

  5. sealed trait Extractor[Row, A] extends AnyRef

  6. trait ExtractorSyntax[Row] extends AnyRef

  7. case class GroupedExtractor[Row, A, B](inner: Extractor[Row, A], groupBy: Extractor[Row, B]) extends Extractor[Row, List[A]] with Product with Serializable

    An extractor that accumulates results with the same groupBy value into the same value

  8. case class ListMultiRowExtractor[Row, A](inner: Extractor[Row, A]) extends Extractor[Row, List[A]] with SimpleExtractor[Row, List[A]] with Product with Serializable

    An extractor that accumulates results from rows into a list.

  9. case class MappedExtractor[Row, A, B](inner: Extractor[Row, A], func: (A) ⇒ B, unapplyMethod: Option[(B) ⇒ Option[Any]] = None) extends Extractor[Row, B] with SimpleExtractor[Row, B] with SingleRowExtractor[Row, B] with Product with Serializable

    An extractor that behaves as inner but pipes its emitted values through func.

  10. case class NonOptionExtractor[Row, A](inner: Extractor[Row, Option[A]]) extends Extractor[Row, A] with SimpleExtractor[Row, A] with SingleRowExtractor[Row, A] with Product with Serializable

    An extractor that unwraps an OptionExtractor

    An extractor that unwraps an OptionExtractor

    This means that null values can be returned from this extractor and so it later must be wrapped in an OptionExtractor

  11. case class OptionExtractor[Row, A](inner: Extractor[Row, A]) extends Extractor[Row, Option[A]] with SimpleExtractor[Row, Option[A]] with SingleRowExtractor[Row, Option[A]] with Product with Serializable

    An extractor that returns None if all of the cells in the inner extractor are null in the row.

    An extractor that returns None if all of the cells in the inner extractor are null in the row.

    If any underlying cell is non-null, this returns Some of inner's result.

  12. trait ProductExtractor[Row, A <: Product] extends Extractor[Row, A] with SimpleExtractor[Row, A] with SingleRowExtractor[Row, A]

    An extractor acts as a base type for extracting Product types

  13. trait ProductExtractorNames extends AnyRef

    Add ProductExtractorNames to a ProductExtractor to allow inner extractors to be found by name

  14. case class SeqExtractor[Row, A](extractors: Seq[Extractor[Row, A]]) extends Extractor[Row, Seq[A]] with SimpleExtractor[Row, Seq[A]] with SingleRowExtractor[Row, Seq[A]] with Product with Serializable

    An extractor that aggregates results from a seq of extractors into a seq.

  15. trait SimpleExtractor[Row, A] extends AnyRef

    A SimpleExtractor is an Extractor where the extracted type is the same as the emitted type.

    A SimpleExtractor is an Extractor where the extracted type is the same as the emitted type. This is the case for almost all extractors

  16. trait SingleRowExtractor[Row, A] extends AnyRef

  17. case class Tuple10Extractor[Row, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10](e1: Extractor[Row, A1], e2: Extractor[Row, A2], e3: Extractor[Row, A3], e4: Extractor[Row, A4], e5: Extractor[Row, A5], e6: Extractor[Row, A6], e7: Extractor[Row, A7], e8: Extractor[Row, A8], e9: Extractor[Row, A9], e10: Extractor[Row, A10]) extends ProductExtractor[Row, (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10)] with Product with Serializable

  18. case class Tuple11Extractor[Row, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11](e1: Extractor[Row, A1], e2: Extractor[Row, A2], e3: Extractor[Row, A3], e4: Extractor[Row, A4], e5: Extractor[Row, A5], e6: Extractor[Row, A6], e7: Extractor[Row, A7], e8: Extractor[Row, A8], e9: Extractor[Row, A9], e10: Extractor[Row, A10], e11: Extractor[Row, A11]) extends ProductExtractor[Row, (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11)] with Product with Serializable

  19. case class Tuple12Extractor[Row, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12](e1: Extractor[Row, A1], e2: Extractor[Row, A2], e3: Extractor[Row, A3], e4: Extractor[Row, A4], e5: Extractor[Row, A5], e6: Extractor[Row, A6], e7: Extractor[Row, A7], e8: Extractor[Row, A8], e9: Extractor[Row, A9], e10: Extractor[Row, A10], e11: Extractor[Row, A11], e12: Extractor[Row, A12]) extends ProductExtractor[Row, (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12)] with Product with Serializable

  20. case class Tuple13Extractor[Row, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13](e1: Extractor[Row, A1], e2: Extractor[Row, A2], e3: Extractor[Row, A3], e4: Extractor[Row, A4], e5: Extractor[Row, A5], e6: Extractor[Row, A6], e7: Extractor[Row, A7], e8: Extractor[Row, A8], e9: Extractor[Row, A9], e10: Extractor[Row, A10], e11: Extractor[Row, A11], e12: Extractor[Row, A12], e13: Extractor[Row, A13]) extends ProductExtractor[Row, (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13)] with Product with Serializable

  21. case class Tuple14Extractor[Row, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14](e1: Extractor[Row, A1], e2: Extractor[Row, A2], e3: Extractor[Row, A3], e4: Extractor[Row, A4], e5: Extractor[Row, A5], e6: Extractor[Row, A6], e7: Extractor[Row, A7], e8: Extractor[Row, A8], e9: Extractor[Row, A9], e10: Extractor[Row, A10], e11: Extractor[Row, A11], e12: Extractor[Row, A12], e13: Extractor[Row, A13], e14: Extractor[Row, A14]) extends ProductExtractor[Row, (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14)] with Product with Serializable

  22. case class Tuple15Extractor[Row, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15](e1: Extractor[Row, A1], e2: Extractor[Row, A2], e3: Extractor[Row, A3], e4: Extractor[Row, A4], e5: Extractor[Row, A5], e6: Extractor[Row, A6], e7: Extractor[Row, A7], e8: Extractor[Row, A8], e9: Extractor[Row, A9], e10: Extractor[Row, A10], e11: Extractor[Row, A11], e12: Extractor[Row, A12], e13: Extractor[Row, A13], e14: Extractor[Row, A14], e15: Extractor[Row, A15]) extends ProductExtractor[Row, (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15)] with Product with Serializable

  23. case class Tuple16Extractor[Row, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16](e1: Extractor[Row, A1], e2: Extractor[Row, A2], e3: Extractor[Row, A3], e4: Extractor[Row, A4], e5: Extractor[Row, A5], e6: Extractor[Row, A6], e7: Extractor[Row, A7], e8: Extractor[Row, A8], e9: Extractor[Row, A9], e10: Extractor[Row, A10], e11: Extractor[Row, A11], e12: Extractor[Row, A12], e13: Extractor[Row, A13], e14: Extractor[Row, A14], e15: Extractor[Row, A15], e16: Extractor[Row, A16]) extends ProductExtractor[Row, (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16)] with Product with Serializable

  24. case class Tuple17Extractor[Row, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17](e1: Extractor[Row, A1], e2: Extractor[Row, A2], e3: Extractor[Row, A3], e4: Extractor[Row, A4], e5: Extractor[Row, A5], e6: Extractor[Row, A6], e7: Extractor[Row, A7], e8: Extractor[Row, A8], e9: Extractor[Row, A9], e10: Extractor[Row, A10], e11: Extractor[Row, A11], e12: Extractor[Row, A12], e13: Extractor[Row, A13], e14: Extractor[Row, A14], e15: Extractor[Row, A15], e16: Extractor[Row, A16], e17: Extractor[Row, A17]) extends ProductExtractor[Row, (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17)] with Product with Serializable

  25. case class Tuple18Extractor[Row, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18](e1: Extractor[Row, A1], e2: Extractor[Row, A2], e3: Extractor[Row, A3], e4: Extractor[Row, A4], e5: Extractor[Row, A5], e6: Extractor[Row, A6], e7: Extractor[Row, A7], e8: Extractor[Row, A8], e9: Extractor[Row, A9], e10: Extractor[Row, A10], e11: Extractor[Row, A11], e12: Extractor[Row, A12], e13: Extractor[Row, A13], e14: Extractor[Row, A14], e15: Extractor[Row, A15], e16: Extractor[Row, A16], e17: Extractor[Row, A17], e18: Extractor[Row, A18]) extends ProductExtractor[Row, (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18)] with Product with Serializable

  26. case class Tuple19Extractor[Row, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19](e1: Extractor[Row, A1], e2: Extractor[Row, A2], e3: Extractor[Row, A3], e4: Extractor[Row, A4], e5: Extractor[Row, A5], e6: Extractor[Row, A6], e7: Extractor[Row, A7], e8: Extractor[Row, A8], e9: Extractor[Row, A9], e10: Extractor[Row, A10], e11: Extractor[Row, A11], e12: Extractor[Row, A12], e13: Extractor[Row, A13], e14: Extractor[Row, A14], e15: Extractor[Row, A15], e16: Extractor[Row, A16], e17: Extractor[Row, A17], e18: Extractor[Row, A18], e19: Extractor[Row, A19]) extends ProductExtractor[Row, (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19)] with Product with Serializable

  27. case class Tuple1Extractor[Row, A1](e1: Extractor[Row, A1]) extends ProductExtractor[Row, (A1)] with Product with Serializable

  28. case class Tuple20Extractor[Row, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20](e1: Extractor[Row, A1], e2: Extractor[Row, A2], e3: Extractor[Row, A3], e4: Extractor[Row, A4], e5: Extractor[Row, A5], e6: Extractor[Row, A6], e7: Extractor[Row, A7], e8: Extractor[Row, A8], e9: Extractor[Row, A9], e10: Extractor[Row, A10], e11: Extractor[Row, A11], e12: Extractor[Row, A12], e13: Extractor[Row, A13], e14: Extractor[Row, A14], e15: Extractor[Row, A15], e16: Extractor[Row, A16], e17: Extractor[Row, A17], e18: Extractor[Row, A18], e19: Extractor[Row, A19], e20: Extractor[Row, A20]) extends ProductExtractor[Row, (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20)] with Product with Serializable

  29. case class Tuple21Extractor[Row, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21](e1: Extractor[Row, A1], e2: Extractor[Row, A2], e3: Extractor[Row, A3], e4: Extractor[Row, A4], e5: Extractor[Row, A5], e6: Extractor[Row, A6], e7: Extractor[Row, A7], e8: Extractor[Row, A8], e9: Extractor[Row, A9], e10: Extractor[Row, A10], e11: Extractor[Row, A11], e12: Extractor[Row, A12], e13: Extractor[Row, A13], e14: Extractor[Row, A14], e15: Extractor[Row, A15], e16: Extractor[Row, A16], e17: Extractor[Row, A17], e18: Extractor[Row, A18], e19: Extractor[Row, A19], e20: Extractor[Row, A20], e21: Extractor[Row, A21]) extends ProductExtractor[Row, (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21)] with Product with Serializable

  30. case class Tuple22Extractor[Row, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22](e1: Extractor[Row, A1], e2: Extractor[Row, A2], e3: Extractor[Row, A3], e4: Extractor[Row, A4], e5: Extractor[Row, A5], e6: Extractor[Row, A6], e7: Extractor[Row, A7], e8: Extractor[Row, A8], e9: Extractor[Row, A9], e10: Extractor[Row, A10], e11: Extractor[Row, A11], e12: Extractor[Row, A12], e13: Extractor[Row, A13], e14: Extractor[Row, A14], e15: Extractor[Row, A15], e16: Extractor[Row, A16], e17: Extractor[Row, A17], e18: Extractor[Row, A18], e19: Extractor[Row, A19], e20: Extractor[Row, A20], e21: Extractor[Row, A21], e22: Extractor[Row, A22]) extends ProductExtractor[Row, (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22)] with Product with Serializable

  31. case class Tuple2Extractor[Row, A1, A2](e1: Extractor[Row, A1], e2: Extractor[Row, A2]) extends ProductExtractor[Row, (A1, A2)] with Product with Serializable

  32. case class Tuple3Extractor[Row, A1, A2, A3](e1: Extractor[Row, A1], e2: Extractor[Row, A2], e3: Extractor[Row, A3]) extends ProductExtractor[Row, (A1, A2, A3)] with Product with Serializable

  33. case class Tuple4Extractor[Row, A1, A2, A3, A4](e1: Extractor[Row, A1], e2: Extractor[Row, A2], e3: Extractor[Row, A3], e4: Extractor[Row, A4]) extends ProductExtractor[Row, (A1, A2, A3, A4)] with Product with Serializable

  34. case class Tuple5Extractor[Row, A1, A2, A3, A4, A5](e1: Extractor[Row, A1], e2: Extractor[Row, A2], e3: Extractor[Row, A3], e4: Extractor[Row, A4], e5: Extractor[Row, A5]) extends ProductExtractor[Row, (A1, A2, A3, A4, A5)] with Product with Serializable

  35. case class Tuple6Extractor[Row, A1, A2, A3, A4, A5, A6](e1: Extractor[Row, A1], e2: Extractor[Row, A2], e3: Extractor[Row, A3], e4: Extractor[Row, A4], e5: Extractor[Row, A5], e6: Extractor[Row, A6]) extends ProductExtractor[Row, (A1, A2, A3, A4, A5, A6)] with Product with Serializable

  36. case class Tuple7Extractor[Row, A1, A2, A3, A4, A5, A6, A7](e1: Extractor[Row, A1], e2: Extractor[Row, A2], e3: Extractor[Row, A3], e4: Extractor[Row, A4], e5: Extractor[Row, A5], e6: Extractor[Row, A6], e7: Extractor[Row, A7]) extends ProductExtractor[Row, (A1, A2, A3, A4, A5, A6, A7)] with Product with Serializable

  37. case class Tuple8Extractor[Row, A1, A2, A3, A4, A5, A6, A7, A8](e1: Extractor[Row, A1], e2: Extractor[Row, A2], e3: Extractor[Row, A3], e4: Extractor[Row, A4], e5: Extractor[Row, A5], e6: Extractor[Row, A6], e7: Extractor[Row, A7], e8: Extractor[Row, A8]) extends ProductExtractor[Row, (A1, A2, A3, A4, A5, A6, A7, A8)] with Product with Serializable

  38. case class Tuple9Extractor[Row, A1, A2, A3, A4, A5, A6, A7, A8, A9](e1: Extractor[Row, A1], e2: Extractor[Row, A2], e3: Extractor[Row, A3], e4: Extractor[Row, A4], e5: Extractor[Row, A5], e6: Extractor[Row, A6], e7: Extractor[Row, A7], e8: Extractor[Row, A8], e9: Extractor[Row, A9]) extends ProductExtractor[Row, (A1, A2, A3, A4, A5, A6, A7, A8, A9)] with Product with Serializable

Value Members

  1. object AbortMacro

  2. object Extractable

  3. object Extractor

  4. object ExtractorFinder

Ungrouped