diff options
author | Stewart Stewart <stewart@driver.xyz> | 2017-05-09 18:17:18 -0400 |
---|---|---|
committer | Stewart Stewart <stewart@driver.xyz> | 2017-05-09 18:17:18 -0400 |
commit | cbd5b4c6cdc26ed181a1c6bd5a5b6107e8e50671 (patch) | |
tree | b8b3ec78053dd53a9e6652b632d7f4bfc9c8e627 /src/main/scala/xyz/driver/core/database | |
parent | d6695390a60aaaa907f0b8744ce5757fde30a9eb (diff) | |
download | driver-core-cbd5b4c6cdc26ed181a1c6bd5a5b6107e8e50671.tar.gz driver-core-cbd5b4c6cdc26ed181a1c6bd5a5b6107e8e50671.tar.bz2 driver-core-cbd5b4c6cdc26ed181a1c6bd5a5b6107e8e50671.zip |
add resultT to compiled query ops
Diffstat (limited to 'src/main/scala/xyz/driver/core/database')
-rw-r--r-- | src/main/scala/xyz/driver/core/database/Dal.scala | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/main/scala/xyz/driver/core/database/Dal.scala b/src/main/scala/xyz/driver/core/database/Dal.scala index 55766db..ed72d3b 100644 --- a/src/main/scala/xyz/driver/core/database/Dal.scala +++ b/src/main/scala/xyz/driver/core/database/Dal.scala @@ -31,12 +31,17 @@ class FutureDal(executionContext: ExecutionContext) extends Dal { class SlickDal(database: Database, executionContext: ExecutionContext) extends Dal { import database.profile.api._ implicit val exec = executionContext + override type T[D] = slick.dbio.DBIO[D] - implicit protected class QueryOps[+E, U](query: Query[E, U, Seq]) { + implicit protected class QueryOps[U](query: Query[_, U, Seq]) { def resultT: ListT[T, U] = ListT[T, U](query.result.map(_.toList)) } + implicit protected class CompiledQueryOps[U](compiledQuery: slick.lifted.RunnableCompiled[_, Seq[U]]) { + def resultT: ListT[T, U] = ListT.listT[T](compiledQuery.result.map(_.toList)) + } + override implicit val monadT: Monad[T] = new Monad[T] { override def point[A](a: => A): T[A] = DBIO.successful(a) override def bind[A, B](fa: T[A])(f: A => T[B]): T[B] = fa.flatMap(f) |