p

gql

package gql

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. Protected

Package Members

  1. package dsl
  2. package preparation
  3. package resolver
  4. package std
  5. package util

Type Members

  1. final case class Arg[+A](impl: FreeApply[Impl, ValidatedNec[String, A]]) extends Product with Serializable

    A small free algebra for combining arguments and decoding them.

    A small free algebra for combining arguments and decoding them. ArgDecoder can trivially be lifted into Arg with loss of field-level information.

    Note that Arg must be non-empty, and therefore it does not form an cats.Applicative, but instead it forms cats.Apply.

  2. final case class ArgDecoder[A, B](av: ArgValue[A], decode: (ArgParam[A]) => Either[String, B]) extends Product with Serializable

    A combination of an argument declaration ArgParam and a decoder function for ArgParam.

    A combination of an argument declaration ArgParam and a decoder function for ArgParam. This structure is more specialized than just decoding with Arg, since you will have access to field specific information such as if the argument was provided explicitly or the default was used.

    The trivial implementation of an ArgDecoder given an ArgValue:

    val av: ArgValue[A] = ???
    ArgDecoder[A, A](av, _.value.asRight)
  3. final case class ArgParam[A](defaulted: Boolean, value: A) extends Product with Serializable

    A GraphQL argument value suppled in respect to a declared ArgValue, usually provided by a calling client.

  4. final case class ArgValue[A](name: String, input: Eval[In[A]], defaultValue: Option[Value[Const, Unit]], description: Option[String]) extends Product with Serializable

    A GraphQL argument declaration with an optional default value.

    A GraphQL argument declaration with an optional default value. The argument references an input type, which is suspended in Eval for recursion.

  5. final case class Cursor(path: Chain[GraphArc]) extends Product with Serializable

    A collection of GraphQL arcs wraped up with an associated algebra.

    A collection of GraphQL arcs wraped up with an associated algebra. Usually used for reporting where an error occured.

  6. final case class Directive[A](name: String, arg: EmptyableArg[A] = EmptyableArg.Empty) extends Product with Serializable

    A Directive takes an argument A and performs some context specific ast transformation.

  7. sealed trait EmptyableArg[A] extends AnyRef
  8. sealed trait GraphArc extends AnyRef

    One arc in a GraphQL path.

  9. sealed trait InverseModifier extends AnyRef
  10. final case class InverseModifierStack[+T](modifiers: List[InverseModifier], inner: T) extends Product with Serializable

    The Scala counterpart to ModifierStack.

    The Scala counterpart to ModifierStack.

    Note that they are not equivalent, since ModifierStack explicitly declares Modifier.NonNull, while InverseModifierStack explicitly declares the opposite; InverseModifier.Optional.

  11. sealed trait Modifier extends AnyRef
  12. final case class ModifierStack[+T](modifiers: List[Modifier], inner: T) extends Product with Serializable

    A very convinient algebra for transforming GraphQL types with modifiers.

    A very convinient algebra for transforming GraphQL types with modifiers. It can take a GraphQL type to a Scala type and back.

  13. sealed trait Position[+F[_], A] extends AnyRef
  14. final case class QueryParameters(query: String, variables: Option[Map[String, Json]], operationName: Option[String]) extends Product with Serializable

    The neccessary parameters to execute a GraphQL query.

    The neccessary parameters to execute a GraphQL query. QueryParameters is usually provided by a calling client.

  15. final case class QueryResult(data: JsonObject, errors: Chain[Error]) extends Product with Serializable

    The result of executing a GraphQL query.

    The result of executing a GraphQL query. Errors thrown during evaluation can be handled with a partial function.

  16. final case class SchemaShape[F[_], Q, M, S](query: Type[F, Q], mutation: Option[Type[F, M]] = Option.empty[Type[F, Unit]], subscription: Option[Type[F, S]] = Option.empty[Type[F, Unit]], outputTypes: List[OutToplevel[F, _]] = Nil, inputTypes: List[InToplevel[_]] = Nil, positions: List[Position[F, _]] = Directive.skipPositions[F] ++ Directive.includePositions[F]) extends Product with Serializable

    The underlying graph that compiles into a GraphQL schema.

    The underlying graph that compiles into a GraphQL schema. Provides a plethora of methods to derive information, perform validation, render, introspect and generate stub implementations.

  17. final case class SchemaState[F[_]](nextId: Int, batchFunctions: Map[BatchKey[_, _], BatchFunction[F, _, _]], positions: List[Position[F, _]]) extends Product with Serializable

    A structure to accumulate information for building stateful schemas.

    A structure to accumulate information for building stateful schemas. Needed to build batch functions and directives.

Value Members

  1. object Arg extends Serializable
  2. object AstImplicits
  3. object Cursor extends Serializable
  4. object Directive extends Serializable

    Consider taking a look at the skip and include directives as an example.

  5. object EmptyableArg
  6. object GraphArc
  7. object InverseModifier
  8. object InverseModifierStack extends Serializable
  9. object Modifier
  10. object ModifierStack extends Serializable
  11. object Position
  12. object QueryResult extends Serializable
  13. object SchemaShape extends Serializable
  14. object SchemaState extends Serializable
  15. object Validation
  16. object ast extends Implicits

    A tree-like structure representing a GraphQL schema, akin to most schema builders.

Ungrouped