DoobieIntegraion
gql.relational.doobie.DoobieIntegraion$
object DoobieIntegraion extends QueryAlgebra
Attributes
- Source
- DoobieIntegraion.scala
- Graph
-
- Supertypes
- Self type
-
DoobieIntegraion.type
Members list
Type members
Inherited classlikes
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
- Supertypes
- Known subtypes
-
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
- Supertypes
object FieldVariant
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
- Supertypes
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
- Supertypes
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
- Supertypes
- Known subtypes
-
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait PDFField[F]class Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
- Supertypes
object Query
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
- Supertypes
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
- Supertypes
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
- Supertypes
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
- Supertypes
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
- Supertypes
object QueryTask
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
- Supertypes
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
- Supertypes
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
- Supertypes
trait Table
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
- Supertypes
- Known subtypes
-
trait DoobieTable
trait TableFieldAttribute[G[_], A, B, ArgType, Q] extends FieldAttribute[Pure], AnyQueryAttribute[G, B]
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
- Supertypes
trait UnificationQueryAttribute[A, Q, B] extends ImplementationAttribute[Pure], VariantAttribute[Pure], AnyQueryAttribute[Option, B]
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
- Supertypes
-
trait VariantAttribute[Pure]trait ImplementationAttribute[Pure]class Objecttrait Matchableclass AnyShow all
Types
Attributes
- Source
- DoobieIntegraion.scala
Attributes
- Source
- DoobieIntegraion.scala
Attributes
- Source
- DoobieIntegraion.scala
Attributes
- Source
- DoobieIntegraion.scala
Inherited types
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
Value members
Inherited methods
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
def compileNextUnification[F[_], A, Q, B](attr: UnificationQueryAttribute[A, Q, B], a: A, fields: List[PreparedDataField[F, B, _]]): Effect[Done[Option, _, B]]
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
Attributes
- Inherited from:
- qs.fk.apply[B](_$56))) }))) case_:QueryAlgebra.this.FieldVariant.SubSelection[a]=> valpassthrough:Q=qs.value valtasks:List[QueryTask[F,_>:Nothing<:Any]]=nextTasks.value traitTaskResult()extendsObject{ typeG[A]=_>:Nothing<:Any defattr:AnyQueryAttribute[G,_>:Nothing<:Any] defd:Done[G,_>:Nothing<:Any,_>:Nothing<:Any] } caseclassTaskResultImpl[G0[_$57]](attr:AnyQueryAttribute[G0,_>:Nothing<:Any],d:Done[G0,_>:Nothing<:Any,_>:Nothing<:Any])extendsTaskResult{ overridedefhashCode():Int=_hashCode(TaskResultImpl.this) overridedefequals(x$0:Any):Boolean=TaskResultImpl.this.eq(x$0.$asInstanceOf$[Object]).||(x$0match{ casex$0:TaskResultImpl[G0]@unchecked=> TaskResultImpl.this.attr.==(`x$0₂`.attr).&&(TaskResultImpl.this.d.==(`x$0₂`.d)).&&(`x$0₂`.canEqual(TaskResultImpl.this)) case_=> false }) overridedeftoString():String=_toString(TaskResultImpl.this) overridedefcanEqual(that:Any):Boolean=that.isInstanceOf[TaskResultImpl[G0]@unchecked] overridedefproductArity:Int=2 overridedefproductPrefix:String="TaskResultImpl" overridedefproductElement(n:Int):Any=nmatch{ case0=> TaskResultImpl.this._1 case1=> TaskResultImpl.this._2 case_=> thrownewIndexOutOfBoundsException(n.toString()) } typeG[A]=G0[A] } lazyvalTaskResultImpl:TaskResultImpl=newTaskResultImpl() objectTaskResultImplextendsAnyRefwithProduct{ overridedeftoString:String="TaskResultImpl" typeMirroredMonoType deffromProduct(`x$0₃`:Product):MirroredMonoType=newTaskResultImpl[[_$57>:Nothing<:Any]=>Any](`x$0₃`.productElement(0).$asInstanceOf$[AnyQueryAttribute[[_$57>:Nothing<:Any]=>Any,_>:Nothing<:Any]],`x$0₃`.productElement(1).$asInstanceOf$[Done[[_$57>:Nothing<:Any]=>Any,_>:Nothing<:Any,_>:Nothing<:Any]]) } valtaskResults:Effect[List[TaskResult]]=toTraverseOps[List,QueryTask[F,_>:Nothing<:Any]](tasks)(catsStdInstancesForList).traverse[[B>:Nothing<:Any]=>EitherT[[_$42>:Nothing<:Any]=>StateT[[_$41>:Nothing<:Any]=>Writer[QueryContent,_$41],Int,_$42],String,B],TaskResult](((`x$1₃`:QueryTask[F,_>:Nothing<:Any])=>`x$1₃`match{ casef:QueryAlgebra.this.QueryTask.Field[f,g,a]=> QueryAlgebra.this.compileNextField[F,g,a,B,ArgType,Q](f.v,passthrough.asInstanceOf[a],f.attr).map[TaskResult](((done:Done[g,_>:Nothing<:Any,B])=>TaskResultImpl.apply[g](f.attr,done)))(catsDataMonadForIndexedStateT[[_$41>:Nothing<:Any]=>Writer[QueryContent,_$41],Int](catsDataMonadForWriterTId[QueryContent](QueryAlgebra.this.monoidForQueryContent))) casef:QueryAlgebra.this.QueryTask.Unification[F,a,b]=> QueryAlgebra.this.compileNextUnification[F,a,Q,b](`f₂`.attr,passthrough.asInstanceOf[a],`f₂`.fields).map[TaskResult](((`done₂`:Done[[A>:Nothing<:Any]=>Option[A],_>:Nothing<:Any,b])=>TaskResultImpl.apply[[A>:Nothing<:Any]=>Option[A]](`f₂`.attr,`done₂`)))(catsDataMonadForIndexedStateT[[_$41>:Nothing<:Any]=>Writer[QueryContent,_$41],Int](catsDataMonadForWriterTId[QueryContent](QueryAlgebra.this.monoidForQueryContent))) }))(catsDataMonadErrorForEitherT[[_$42>:Nothing<:Any]=>StateT[[_$41>:Nothing<:Any]=>Writer[QueryContent,_$41],Int,_$42],String](catsDataMonadForIndexedStateT[[_$41>:Nothing<:Any]=>Writer[QueryContent,_$41],Int](catsDataMonadForWriterTId[QueryContent](QueryAlgebra.this.monoidForQueryContent)))) traitK()extendsObject{ typeG[A]=_>:Nothing<:Any defattr:AnyQueryAttribute[G,_>:Nothing<:Any] } caseclassKImpl[G0[_$58]](`attr₂`:AnyQueryAttribute[G0,_>:Nothing<:Any])extendsK{ overridedefhashCode():Int=_hashCode(KImpl.this) overridedefequals(`x$0₄`:Any):Boolean=KImpl.this.eq(`x$0₄`.$asInstanceOf$[Object]).||(`x$0₄`match{ casex$0:KImpl[G0]@unchecked=> KImpl.this.attr.==(`x$0₅`.attr).&&(`x$0₅`.canEqual(KImpl.this)) case_=> false }) overridedeftoString():String=_toString(KImpl.this) overridedefcanEqual(`that₂`:Any):Boolean=`that₂`.isInstanceOf[KImpl[G0]@unchecked] overridedefproductArity:Int=1 overridedefproductPrefix:String="KImpl" overridedefproductElement(`n₂`:Int):Any=`n₂`match{ case0=> KImpl.this._1 case_=> thrownewIndexOutOfBoundsException(`n₂`.toString()) } typeG[A]=G0[A] } lazyvalKImpl:KImpl=newKImpl() objectKImplextendsAnyRefwithProduct{ overridedeftoString:String="KImpl" typeMirroredMonoType deffromProduct(`x$0₆`:Product):MirroredMonoType=newKImpl[[_$58>:Nothing<:Any]=>Any](`x$0₆`.productElement(0).$asInstanceOf$[AnyQueryAttribute[[_$58>:Nothing<:Any]=>Any,_>:Nothing<:Any]]) } taskResults.map[Done[G,_>:Nothing<:Any,B]](((dones:List[TaskResult])=>{ valdecs:Decoder[Map[K,Any]]=toFunctorOps[Decoder,List[Tuple2[K,Any]]](toTraverseOps[List,TaskResult](dones)(catsStdInstancesForList).flatTraverse[Decoder,Tuple2[K,Any]](((tr:TaskResult)=>toFunctorOps[Decoder,A](tr.d.dec)(QueryAlgebra.this.applicativeForDecoder).map[List[Tuple2[K,Any]]](((`x₂`:A)=>List.apply[Tuple2[K,Any]](ArrowAssoc[KImpl[G]](KImpl.apply[G](tr.attr)).->[A](`x₂`))))))(QueryAlgebra.this.applicativeForDecoder,catsStdInstancesForList))(QueryAlgebra.this.applicativeForDecoder).map[Map[K,Any]](((_$59:List[Tuple2[K,Any]])=>_$59.toMap[K,Any](refl[Tuple2[K,Any]]))) valdoneMap:Map[K,Done[_>:Nothing<:[A>:Nothing<:Any]=>Any,_>:Nothing<:Any,_>:Nothing<:Any]]=dones.map[Tuple2[K,Done[_>:Nothing<:[A>:Nothing<:Any]=>Any,_>:Nothing<:Any,_>:Nothing<:Any]]](((t:TaskResult)=>ArrowAssoc[K]((KImpl.apply[G](t.attr):K)).->[Done[G,_>:Nothing<:Any,_>:Nothing<:Any]](t.d))).toMap[K,Done[_>:Nothing<:[A>:Nothing<:Any]=>Any,_>:Nothing<:Any,_>:Nothing<:Any]](refl[Tuple2[K,Done[_>:Nothing<:[A>:Nothing<:Any]=>Any,_>:Nothing<:Any,_>:Nothing<:Any]]]) valreassocNext:Function1[List[Map[K,Any]],QueryResult[Q]]=((`xs₃`:List[Map[K,Any]])=>{ valkeys:Set[K]=`xs₃`.flatMap[K](((_$60:Map[K,Any])=>_$60.keySet)).toSet[K] valgrouped:Map[K,List[Any]]=keys.toList.map[Tuple2[K,List[Any]]](((`k₂`:K)=>ArrowAssoc[K](`k₂`).->[List[Any]](`xs₃`.flatMap[Any](((_$61:Map[K,Any])=>_$61.get(`k₂`)))))).toMap[K,List[Any]](refl[Tuple2[K,List[Any]]]) finalclass$anon()extendsQueryResult[Q]{ defread[H[_$62],X](tfa:AnyQueryAttribute[H,X]):Option[Either[String,H[X]]]={ val`k₃`:K=KImpl.apply[H](tfa) doneMap.get(`k₃`).flatMap[Either[String,H[X]]](((`x$1₄`:Done[_>:Nothing<:[A>:Nothing<:Any]=>Any,_>:Nothing<:Any,_>:Nothing<:Any])=>`x$1₄`match{ casedone:Done[H,a,_$111]@unchecked=> grouped.get(`k₃`).map[Either[String,H[X]]](((`ys₂`:List[Any])=>`done₃`.reassoc.apply(`ys₂`.asInstanceOf[List[a]]).map[H[X]](((_$63:H[_$111])=>_$63.asInstanceOf[H[X]])))) })) } } (new$anon():QueryResult[Q]) }) QueryAlgebra.this.Done.apply[G,Tuple2[qs.Key,Map[K,Any]],QueryResult[Q]](catsSyntaxTuple2Semigroupal[Decoder,Key,Map[K,Any]](Tuple2.apply[Decoder[Key],Decoder[Map[K,Any]]](qs.decoder,decs)).tupled(QueryAlgebra.this.applicativeForDecoder,QueryAlgebra.this.applicativeForDecoder),((`xs₄`:List[Tuple2[qs.Key,Map[K,Any]]])=>qs.reassoc.apply[Map[K,Any]](`xs₄`).map[G[QueryResult[Q]]](((`gs₂`:T[List[Map[K,Any]]])=>qs.fk.apply[QueryResult[Q]](qs.reassoc.traverse.map[List[Map[K,Any]],QueryResult[Q]](`gs₂`)(((`xs₅`:List[Map[K,Any]])=>reassocNext.apply(`xs₅`)))))))).$asInstanceOf$[Done[G,_>:Nothing<:Any,B]] }))(catsDataMonadForIndexedStateT[[_$41>:Nothing<:Any]=>Writer[QueryContent,_$41],Int](catsDataMonadForWriterTId[QueryContent](QueryAlgebra.this.monoidForQueryContent))) }">QueryAlgebra
- Source
- QueryAlgebra.scala
def compileToResolver[F[_], G[_], H[_] : Traverse, I, ArgType, O](toplevelArg: EmptyableArg[ArgType])(compiler: (NonEmptyList[I], ArgType, FieldMeta[F]) => F[Map[I, O]])(implicit evidence$5: Traverse[H], F: Applicative[F]): Resolver[F, H[I], H[O]]
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
def getArg[F[_], ArgType](pdf: PreparedDataField[F, _, _], a: EmptyableArg[ArgType]): Effect[ArgType]
Attributes
- Inherited from:
- QueryAlgebra.this.Effect.pure[ArgType](x) } }">QueryAlgebra
- Source
- QueryAlgebra.scala
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
Attributes
- Inherited from:
- { val$3$:Tuple2[QueryJoin,Chain[QueryJoin]]=(catsNonEmptyChainOps[QueryJoin](nec).uncons:Tuple2[QueryJoin,Chain[QueryJoin]]@unchecked)match{ caseTuple2(hd,tl)=> Tuple2.apply[QueryJoin,Chain[QueryJoin]](hd,tl) } val`hd₂`:QueryJoin=$3$._1 val`tl₂`:Chain[QueryJoin]=$3$._2 valys:Frag=toFoldableOps[Chain,QueryJoin](`tl₂`)(catsDataInstancesForChain).foldMap[Frag](((x:QueryJoin)=>{ valp:Frag=x.pred valt:Frag=x.tbl catsSyntaxSemigroup[Frag](catsSyntaxSemigroup[Frag](catsSyntaxSemigroup[Frag](catsSyntaxSemigroup[Frag](nl)(QueryAlgebra.this.appliedFragmentMonoid).|+|(QueryAlgebra.this.stringToFrag("leftjoin")))(QueryAlgebra.this.appliedFragmentMonoid).|+|(t))(QueryAlgebra.this.appliedFragmentMonoid).|+|(QueryAlgebra.this.stringToFrag("on")))(QueryAlgebra.this.appliedFragmentMonoid).|+|(p) }))(QueryAlgebra.this.appliedFragmentMonoid) catsSyntaxSemigroup[Frag](catsSyntaxSemigroup[Frag](catsSyntaxSemigroup[Frag](catsSyntaxSemigroup[Frag](catsSyntaxSemigroup[Frag](catsSyntaxSemigroup[Frag](nl)(QueryAlgebra.this.appliedFragmentMonoid).|+|(QueryAlgebra.this.stringToFrag("from")))(QueryAlgebra.this.appliedFragmentMonoid).|+|(`hd₂`.tbl))(QueryAlgebra.this.appliedFragmentMonoid).|+|(ys))(QueryAlgebra.this.appliedFragmentMonoid).|+|(nl))(QueryAlgebra.this.appliedFragmentMonoid).|+|(QueryAlgebra.this.stringToFrag("where")))(QueryAlgebra.this.appliedFragmentMonoid).|+|(`hd₂`.pred) }))(QueryAlgebra.this.appliedFragmentMonoid) catsSyntaxSemigroup[Frag](catsSyntaxSemigroup[Frag](QueryAlgebra.this.stringToFrag("select"))(QueryAlgebra.this.appliedFragmentMonoid).|+|(selections))(QueryAlgebra.this.appliedFragmentMonoid).|+|(suffix) }">QueryAlgebra
- Source
- QueryAlgebra.scala
def resolveQuery[F[_] : Applicative, G[_], I, B, ArgType](toplevelArg: EmptyableArg[ArgType], q: (NonEmptyList[I], ArgType) => Query[G, (Select[I], B)], connection: Transactor[F]): Resolver[F, I, G[QueryResult[B]]]
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
def resolveQueryFull[F[_] : Queryable, G[_], H[_], I, B, ArgType](toplevelArg: EmptyableArg[ArgType], q: (NonEmptyList[I], ArgType) => Query[G, (Select[I], B)], connection: Transactor[F])(implicit evidence$1: Queryable[F], F: Applicative[F], H: Reassociateable[H]): Resolver[F, H[I], H[G[QueryResult[B]]]]
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
def resolveQuerySingle[F[_] : Queryable, G[_], I, B, ArgType](toplevelArg: EmptyableArg[ArgType], q: (I, ArgType) => Query[G, B], connection: Transactor[F])(implicit evidence$4: Queryable[F], F: Applicative[F]): Resolver[F, I, G[QueryResult[B]]]
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
Inherited fields
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
Attributes
- Inherited from:
- :Nothing<:Any]=>Writer[QueryContent,_$41],Int](catsDataMonadForWriterTId[QueryContent](QueryAlgebra.this.monoidForQueryContent))))(catsDataMonadErrorForEitherT[[_$42>:Nothing<:Any]=>StateT[[_$41>:Nothing<:Any]=>Writer[QueryContent,_$41],Int,_$42],String](catsDataMonadForIndexedStateT[[_$41>:Nothing<:Any]=>Writer[QueryContent,_$41],Int](catsDataMonadForWriterTId[QueryContent](QueryAlgebra.this.monoidForQueryContent)))).<*[Unit](QueryAlgebra.this.S.modify(((_$43:Int)=>_$43.+(1))))">QueryAlgebra
- Source
- QueryAlgebra.scala
Implicits
Implicits
Attributes
- Source
- DoobieIntegraion.scala
Attributes
- Source
- DoobieIntegraion.scala
Attributes
- Source
- DoobieIntegraion.scala
Inherited implicits
Attributes
- Inherited from:
- QueryAlgebra
- Source
- QueryAlgebra.scala
In this article