sqlest

extractor

package extractor

Visibility
  1. Public
  2. All

Type Members

  1. case class ColumnExtractor[A](column: AliasedColumn[A]) extends SingleExtractor[A] with Product with Serializable

    Extractor that emits the values for a single column.

  2. case class ConstantExtractor[A](value: A) extends SingleExtractor[A] with Product with Serializable

    Extractor that always returns the same value

  3. trait Extractable[A] extends AnyRef

    Type class witnessing that a default extractor for type A exists

  4. sealed trait Extractor[A] extends AnyRef

  5. trait ExtractorBuilder[-A] extends AnyRef

    Function capable of building an extractor of type Result from a value of type A.

    Function capable of building an extractor of type Result from a value of type A. A is typically a column or another extractor.

    We use this in Extractors to allow us to build large extractors from mixed tuples of columns and extractors.

  6. trait ExtractorSyntax extends Extractors

  7. trait Extractors extends LowPriorityExtractors

  8. case class GroupedMultiExtractor[A, B](inner: Extractor[A], groupBy: Extractor[B]) extends MultiExtractor[A] with Product with Serializable

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

  9. case class ListMultiExtractor[A](inner: Extractor[A]) extends MultiExtractor[A] with Product with Serializable

    An extractor that accumulates results into a list.

  10. trait LowPriorityExtractors extends AnyRef

  11. case class MappedExtractor[A, B](inner: Extractor[A], func: (A) ⇒ B) extends SingleExtractor[B] with Product with Serializable

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

  12. trait MultiExtractor[A] extends Extractor[List[A]]

  13. case class OptionExtractor[A](inner: Extractor[A]) extends SingleExtractor[Option[A]] with Product with Serializable

    An extractor that returns None if all of the columns in the inner extractor are null in the ResultSet.

    An extractor that returns None if all of the columns in the inner extractor are null in the ResultSet.

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

  14. trait ProductExtractor[A <: Product] extends SingleExtractor[A]

  15. case class SeqExtractor[A](extractors: Seq[Extractor[A]]) extends SingleExtractor[Seq[A]] with Product with Serializable

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

  16. trait SingleExtractor[A] extends Extractor[A]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Value Members

  1. object Extractable

Ungrouped