Object

doobie.free

nclob

Related Doc: package free

Permalink

object nclob

Algebra and free monad for primitive operations over a java.sql.NClob. This is a low-level API that exposes lifecycle-managed JDBC objects directly and is intended mainly for library developers. End users will prefer a safer, higher-level API such as that provided in the doobie.hi package.

NClobIO is a free monad that must be run via an interpreter, most commonly via natural transformation of its underlying algebra NClobOp to another monad via Free.runFC.

The library provides a natural transformation to Kleisli[M, NClob, A] for any exception-trapping (Catchable) and effect-capturing (Capture) monad M. Such evidence is provided for Task, IO, and stdlib Future; and transK[M] is provided as syntax.

// An action to run
val a: NClobIO[Foo] = ...

// A JDBC object
val s: NClob = ...

// Unfolding into a Task
val ta: Task[A] = a.transK[Task].run(s)
Source
nclob.scala
Linear Supertypes
AnyRef, Any
Ordering
  1. Grouped
  2. Alphabetic
  3. By inheritance
Inherited
  1. nclob
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Visibility
  1. Public
  2. All

Type Members

  1. type NClobIO[A] = Free[[x]Coyoneda[NClobOp, x], A]

    Permalink

    Free monad over a free functor of NClobOp; abstractly, a computation that consumes a java.sql.NClob and produces a value of type A.

  2. implicit class NClobIOOps[A] extends AnyRef

    Permalink

    Syntax for NClobIO.

  3. sealed trait NClobOp[A] extends AnyRef

    Permalink

    Sum type of primitive operations over a java.sql.NClob.

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 CaptureNClobIO: Capture[NClobIO]

    Permalink

    Capture instance for NClobIO.

  5. implicit val CatchableNClobIO: Catchable[NClobIO]

    Permalink

    Catchable instance for NClobIO.

  6. implicit val MonadNClobIO: Monad[NClobIO]

    Permalink

    Monad instance for NClobIO (can't be inferred).

  7. object NClobOp

    Permalink

    Module of constructors for NClobOp.

    Module of constructors for NClobOp. These are rarely useful outside of the implementation; prefer the smart constructors provided by the nclob module.

  8. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  9. def attempt[A](a: NClobIO[A]): NClobIO[\/[Throwable, A]]

    Permalink

    Lift a NClobIO[A] into an exception-capturing NClobIO[Throwable \/ A].

  10. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  11. def delay[A](a: ⇒ A): NClobIO[A]

    Permalink

    Non-strict unit for capturing effects.

  12. final def eq(arg0: AnyRef): Boolean

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

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  15. val free: NClobIO[Unit]

    Permalink

  16. val getAsciiStream: NClobIO[InputStream]

    Permalink

  17. def getCharacterStream(a: Long, b: Long): NClobIO[Reader]

    Permalink

  18. val getCharacterStream: NClobIO[Reader]

    Permalink

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

    Permalink
    Definition Classes
    AnyRef → Any
  20. def getSubString(a: Long, b: Int): NClobIO[String]

    Permalink

  21. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  22. def interpK[M[_]](implicit arg0: Monad[M], arg1: Catchable[M], arg2: Capture[M]): ~>[NClobOp, [γ]Kleisli[M, NClob, γ]]

    Permalink

    Natural transformation from NClobOp to Kleisli for the given M, consuming a java.sql.NClob.

  23. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  24. val length: NClobIO[Long]

    Permalink

  25. def liftBlob[A](s: Blob, k: BlobIO[A]): NClobIO[A]

    Permalink

  26. def liftCallableStatement[A](s: CallableStatement, k: CallableStatementIO[A]): NClobIO[A]

    Permalink

  27. def liftClob[A](s: Clob, k: ClobIO[A]): NClobIO[A]

    Permalink

  28. def liftConnection[A](s: Connection, k: ConnectionIO[A]): NClobIO[A]

    Permalink

  29. def liftDatabaseMetaData[A](s: DatabaseMetaData, k: DatabaseMetaDataIO[A]): NClobIO[A]

    Permalink

  30. def liftDriver[A](s: Driver, k: DriverIO[A]): NClobIO[A]

    Permalink

  31. def liftPreparedStatement[A](s: PreparedStatement, k: PreparedStatementIO[A]): NClobIO[A]

    Permalink

  32. def liftRef[A](s: Ref, k: RefIO[A]): NClobIO[A]

    Permalink

  33. def liftResultSet[A](s: ResultSet, k: ResultSetIO[A]): NClobIO[A]

    Permalink

  34. def liftSQLData[A](s: SQLData, k: SQLDataIO[A]): NClobIO[A]

    Permalink

  35. def liftSQLInput[A](s: SQLInput, k: SQLInputIO[A]): NClobIO[A]

    Permalink

  36. def liftSQLOutput[A](s: SQLOutput, k: SQLOutputIO[A]): NClobIO[A]

    Permalink

  37. def liftStatement[A](s: Statement, k: StatementIO[A]): NClobIO[A]

    Permalink

  38. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  41. def position(a: String, b: Long): NClobIO[Long]

    Permalink

  42. def position(a: Clob, b: Long): NClobIO[Long]

    Permalink

  43. def raw[A](f: (NClob) ⇒ A): NClobIO[A]

    Permalink

    Backdoor for arbitrary computations on the underlying NClob.

  44. def setAsciiStream(a: Long): NClobIO[OutputStream]

    Permalink

  45. def setCharacterStream(a: Long): NClobIO[Writer]

    Permalink

  46. def setString(a: Long, b: String, c: Int, d: Int): NClobIO[Int]

    Permalink

  47. def setString(a: Long, b: String): NClobIO[Int]

    Permalink

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  50. def trans[M[_]](c: NClob)(implicit arg0: Monad[M], arg1: Catchable[M], arg2: Capture[M]): ~>[NClobIO, M]

    Permalink

    Natural transformation from NClobIO to M, given a java.sql.NClob.

  51. def transK[M[_]](implicit arg0: Monad[M], arg1: Catchable[M], arg2: Capture[M]): ~>[NClobIO, [γ]Kleisli[M, NClob, γ]]

    Permalink

    Natural transformation from NClobIO to Kleisli for the given M, consuming a java.sql.NClob.

  52. def truncate(a: Long): NClobIO[Unit]

    Permalink

  53. final def wait(): Unit

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

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

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

Inherited from AnyRef

Inherited from Any

Algebra

Constructors (Lifting)

Constructors (Primitives)

Typeclass Instances

Ungrouped