Trait/Object

doobie.util.meta

Meta

Related Docs: object Meta | package meta

Permalink

sealed trait Meta[A] extends AnyRef

Metadata defining the column-level mapping to and from Scala type A. A given Scala type might be read from or written to columns with a variety of JDBC and/or vendor-specific types, depending on supported coercions and luck.

Annotations
@implicitNotFound( ... )
Source
meta.scala
Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Meta
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def fold[B](f: (BasicMeta[A]) ⇒ B, g: (AdvancedMeta[A]) ⇒ B): B

    Permalink

    Switch on the flavor of this Meta.

  2. abstract def jdbcSource: NonEmptyList[JdbcType]

    Permalink

    Source JDBC types from which values of type A can be read.

  3. abstract def jdbcTarget: NonEmptyList[JdbcType]

    Permalink

    Destination JDBC types to which values of type A can be written.

  4. abstract def scalaType: String

    Permalink

    Name of the Scala type, for diagnostic purposes.

    Name of the Scala type, for diagnostic purposes. Smart constructors require a TypeTag to guarantee this value is correct.

  5. abstract val set: (Int, A) ⇒ PreparedStatementIO[Unit]

    Permalink

    Constructor for a setXXX operation for a given A at a given index.

  6. abstract val setNull: (Int) ⇒ PreparedStatementIO[Unit]

    Permalink

    Constructor for a setNull operation for the primary JDBC type, at a given index.

  7. abstract val unsafeGet: (ResultSet, Int) ⇒ A

    Permalink

    Unsafe direct JDBC get operation for optimized reads.

  8. abstract val update: (Int, A) ⇒ ResultSetIO[Unit]

    Permalink

    Constructor for an updateXXX operation for a given A at a given index.

  9. abstract def xmap[B](f: (A) ⇒ B, g: (B) ⇒ A)(implicit arg0: scala.reflect.api.JavaUniverse.TypeTag[B]): Meta[B]

    Permalink

    Invariant map (note that you must handle null; see nxmap).

    Invariant map (note that you must handle null; see nxmap). Meta is not quite an invariant functor because of the tag constraint, but I think it's worth the sacrifice because we get much better diagnostic information as a result.

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 asInstanceOf[T0]: T0

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

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. val get: (Int) ⇒ ResultSetIO[A]

    Permalink

    Constructor for a getXXX operation for type A at a given index.

  10. final def getClass(): Class[_]

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

    Permalink
    Definition Classes
    AnyRef → Any
  12. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  13. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  16. def nxmap[B >: Null](f: (A) ⇒ B, g: (B) ⇒ A)(implicit arg0: scala.reflect.api.JavaUniverse.TypeTag[B], ev: <:<[Null, A]): Meta[B]

    Permalink

    Invariant map with null handling, for A, B >: Null; the functions f and g will never be passed a null value.

  17. final def synchronized[T0](arg0: ⇒ T0): T0

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

    Permalink
    Definition Classes
    AnyRef → Any
  19. final def wait(): Unit

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

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

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

Inherited from AnyRef

Inherited from Any

Ungrouped