SubqueryInterpreter

gql.server.interpreter.SubqueryInterpreter
class SubqueryInterpreter[F[_]](ss: SignalScopes[F, StreamData[F, _]], sup: Supervisor[F], stats: Statistics[F], throttle: FunctionK[F, F], errors: Ref[F, Chain[EvalFailure]], subgraphBatches: SubgraphBatches[F])(implicit F: Async[F])

The SubqueryInterpreter recursively runs through the AST and performs a multitude of tasks:

  • Runs the gql.resolver.Resolver/gql.resolver.Steps defined in the query.

  • Accumulates errors that occur during the evaluation of the query.

  • Logs streams that have been subscribed to.

  • Batches computations that have been marked as batchable.

Attributes

Source
SubqueryInterpreter.scala
Graph
Supertypes
class Object
trait Matchable
class Any

Members list

Value members

Concrete methods

def goCont[I](c: Continuation[F, I], en: EvalNode[F, I]): F[Json]

Attributes

Source
SubqueryInterpreter.scala
def goStep[I, O](ps: PreparedStep[F, I, O], cont: Continuation[F, O], en: EvalNode[F, I]): F[Json]

Attributes

Source
SubqueryInterpreter.scala
def interpretEffect[I0, O0](ps: PreparedStep[F, I0, O0], cont: Prepared[F, O0], en: EvalNode[F, I0]): F[Json]

Attributes

Source
SubqueryInterpreter.scala
def interpretPrepared[I](s: Prepared[F, I], en: EvalNode[F, I]): F[Json]

Attributes

Source
SubqueryInterpreter.scala
def interpretSelection[I](fields: List[PreparedField[F, I]], en: EvalNode[F, I]): F[Chain[(String, Json)]]

Attributes

Source
SubqueryInterpreter.scala
def runEffect[A](fa: F[A], id: UniqueEdgeCursor, n: Int, makeError: Throwable => EvalFailure): F[Option[A]]

Attributes

Source
SubqueryInterpreter.scala
def submit(name: String, duration: FiniteDuration, size: Int): F[Unit]

Attributes

Source
SubqueryInterpreter.scala