SelectionBuilder

caliban.client.SelectionBuilder
See theSelectionBuilder companion object
sealed trait SelectionBuilder[-Origin, +A]

Represents a selection from parent type Origin that returns a result of type A.

Attributes

Companion
object
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class Field[Origin, A]
class Mapping[Origin, A, B]
class Pure[A]
Self type
SelectionBuilder[Origin, A]

Members list

Value members

Abstract methods

def withAlias(alias: String): SelectionBuilder[Origin, A]

Use the given alias for this selection

Use the given alias for this selection

Attributes

def withDirective(directive: Directive): SelectionBuilder[Origin, A]

Add the given directive to the selection

Add the given directive to the selection

Attributes

Concrete methods

def decode(payload: String): Either[CalibanClientError, (A, List[GraphQLResponseError], Option[`__ObjectValue`])]

Parse the given response payload into the expected return type, with an potential list of partial errors and an optional extensions object

Parse the given response payload into the expected return type, with an potential list of partial errors and an optional extensions object

Attributes

def map[B](f: A => B): SelectionBuilder[Origin, B]

Maps the result of this selection to a new type B

Maps the result of this selection to a new type B

Attributes

def mapEither[B](f: A => Either[DecodingError, B]): SelectionBuilder[Origin, B]

Maps the result of this selection to a new type B or make the decoding fail with a DecodingError

Maps the result of this selection to a new type B or make the decoding fail with a DecodingError

Attributes

def mapN[B, C, Res](f: (B, C) => Res)(implicit ev: A <:< (B, C)): SelectionBuilder[Origin, Res]

Maps a tupled result to a type Res using a function f with 2 parameters

Maps a tupled result to a type Res using a function f with 2 parameters

Attributes

def mapN[B, C, D, Res](f: (B, C, D) => Res)(implicit ev: A <:< (B, C, D)): SelectionBuilder[Origin, Res]

Maps a tupled result to a type Res using a function f with 3 parameters

Maps a tupled result to a type Res using a function f with 3 parameters

Attributes

def mapN[B, C, D, E, Res](f: (B, C, D, E) => Res)(implicit ev: A <:< (B, C, D, E)): SelectionBuilder[Origin, Res]

Maps a tupled result to a type Res using a function f with 4 parameters

Maps a tupled result to a type Res using a function f with 4 parameters

Attributes

def mapN[B, C, D, E, F, Res](f: (B, C, D, E, F) => Res)(implicit ev: A <:< (B, C, D, E, F)): SelectionBuilder[Origin, Res]

Maps a tupled result to a type Res using a function f with 5 parameters

Maps a tupled result to a type Res using a function f with 5 parameters

Attributes

def mapN[B, C, D, E, F, G, Res](f: (B, C, D, E, F, G) => Res)(implicit ev: A <:< (B, C, D, E, F, G)): SelectionBuilder[Origin, Res]

Maps a tupled result to a type Res using a function f with 6 parameters

Maps a tupled result to a type Res using a function f with 6 parameters

Attributes

def mapN[B, C, D, E, F, G, H, Res](f: (B, C, D, E, F, G, H) => Res)(implicit ev: A <:< (B, C, D, E, F, G, H)): SelectionBuilder[Origin, Res]

Maps a tupled result to a type Res using a function f with 7 parameters

Maps a tupled result to a type Res using a function f with 7 parameters

Attributes

def mapN[B, C, D, E, F, G, H, I, Res](f: (B, C, D, E, F, G, H, I) => Res)(implicit ev: A <:< (B, C, D, E, F, G, H, I)): SelectionBuilder[Origin, Res]

Maps a tupled result to a type Res using a function f with 8 parameters

Maps a tupled result to a type Res using a function f with 8 parameters

Attributes

def mapN[B, C, D, E, F, G, H, I, J, Res](f: (B, C, D, E, F, G, H, I, J) => Res)(implicit ev: A <:< (B, C, D, E, F, G, H, I, J)): SelectionBuilder[Origin, Res]

Maps a tupled result to a type Res using a function f with 9 parameters

Maps a tupled result to a type Res using a function f with 9 parameters

Attributes

def mapN[B, C, D, E, F, G, H, I, J, K, Res](f: (B, C, D, E, F, G, H, I, J, K) => Res)(implicit ev: A <:< (B, C, D, E, F, G, H, I, J, K)): SelectionBuilder[Origin, Res]

Maps a tupled result to a type Res using a function f with 10 parameters

Maps a tupled result to a type Res using a function f with 10 parameters

Attributes

def mapN[B, C, D, E, F, G, H, I, J, K, L, Res](f: (B, C, D, E, F, G, H, I, J, K, L) => Res)(implicit ev: A <:< (B, C, D, E, F, G, H, I, J, K, L)): SelectionBuilder[Origin, Res]

Maps a tupled result to a type Res using a function f with 11 parameters

Maps a tupled result to a type Res using a function f with 11 parameters

Attributes

def mapN[B, C, D, E, F, G, H, I, J, K, L, M, Res](f: (B, C, D, E, F, G, H, I, J, K, L, M) => Res)(implicit ev: A <:< (B, C, D, E, F, G, H, I, J, K, L, M)): SelectionBuilder[Origin, Res]

Maps a tupled result to a type Res using a function f with 12 parameters

Maps a tupled result to a type Res using a function f with 12 parameters

Attributes

def mapN[B, C, D, E, F, G, H, I, J, K, L, M, N, Res](f: (B, C, D, E, F, G, H, I, J, K, L, M, N) => Res)(implicit ev: A <:< (B, C, D, E, F, G, H, I, J, K, L, M, N)): SelectionBuilder[Origin, Res]

Maps a tupled result to a type Res using a function f with 13 parameters

Maps a tupled result to a type Res using a function f with 13 parameters

Attributes

def mapN[B, C, D, E, F, G, H, I, J, K, L, M, N, O, Res](f: (B, C, D, E, F, G, H, I, J, K, L, M, N, O) => Res)(implicit ev: A <:< (B, C, D, E, F, G, H, I, J, K, L, M, N, O)): SelectionBuilder[Origin, Res]

Maps a tupled result to a type Res using a function f with 14 parameters

Maps a tupled result to a type Res using a function f with 14 parameters

Attributes

def mapN[B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Res](f: (B, C, D, E, F, G, H, I, J, K, L, M, N, O, P) => Res)(implicit ev: A <:< (B, C, D, E, F, G, H, I, J, K, L, M, N, O, P)): SelectionBuilder[Origin, Res]

Maps a tupled result to a type Res using a function f with 15 parameters

Maps a tupled result to a type Res using a function f with 15 parameters

Attributes

def mapN[B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, Res](f: (B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q) => Res)(implicit ev: A <:< (B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q)): SelectionBuilder[Origin, Res]

Maps a tupled result to a type Res using a function f with 16 parameters

Maps a tupled result to a type Res using a function f with 16 parameters

Attributes

def mapN[B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, Res](f: (B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R) => Res)(implicit ev: A <:< (B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R)): SelectionBuilder[Origin, Res]

Maps a tupled result to a type Res using a function f with 17 parameters

Maps a tupled result to a type Res using a function f with 17 parameters

Attributes

def mapN[B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, Res](f: (B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S) => Res)(implicit ev: A <:< (B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S)): SelectionBuilder[Origin, Res]

Maps a tupled result to a type Res using a function f with 18 parameters

Maps a tupled result to a type Res using a function f with 18 parameters

Attributes

def mapN[B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, Res](f: (B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T) => Res)(implicit ev: A <:< (B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T)): SelectionBuilder[Origin, Res]

Maps a tupled result to a type Res using a function f with 19 parameters

Maps a tupled result to a type Res using a function f with 19 parameters

Attributes

def mapN[B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, Res](f: (B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U) => Res)(implicit ev: A <:< (B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U)): SelectionBuilder[Origin, Res]

Maps a tupled result to a type Res using a function f with 20 parameters

Maps a tupled result to a type Res using a function f with 20 parameters

Attributes

def mapN[B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, Res](f: (B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V) => Res)(implicit ev: A <:< (B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V)): SelectionBuilder[Origin, Res]

Maps a tupled result to a type Res using a function f with 21 parameters

Maps a tupled result to a type Res using a function f with 21 parameters

Attributes

def mapN[B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, Res](f: (B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W) => Res)(implicit ev: A <:< (B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W)): SelectionBuilder[Origin, Res]

Maps a tupled result to a type Res using a function f with 22 parameters

Maps a tupled result to a type Res using a function f with 22 parameters

Attributes

def toGraphQL[A1 >: A, Origin1 <: Origin](useVariables: Boolean, queryName: Option[String], dropNullInputValues: Boolean)(implicit ev: IsOperation[Origin1]): GraphQLRequest

Transforms a root selection into a GraphQL request.

Transforms a root selection into a GraphQL request.

Value parameters

dropNullInputValues

if true, drop all null values from input object arguments (default: false)

queryName

if specified, use the given query name

useVariables

if true, all arguments will be passed as variables (default: false)

Attributes

def toRequest[A1 >: A, Origin1 <: Origin](uri: Uri, useVariables: Boolean, queryName: Option[String], dropNullInputValues: Boolean)(implicit ev: IsOperation[Origin1]): Request[Either[CalibanClientError, A1], Any]

Transforms a root selection into an STTP request ready to be run. To access partial errors and extensions, use toRequestWith.

Transforms a root selection into an STTP request ready to be run. To access partial errors and extensions, use toRequestWith.

Value parameters

dropNullInputValues

if true, drop all null values from input object arguments (default: false)

queryName

if specified, use the given query name

uri

the URL of the GraphQL server

useVariables

if true, all arguments will be passed as variables (default: false)

Attributes

Returns

an STTP request

def toRequestWith[B, Origin1 <: Origin](uri: Uri, useVariables: Boolean, queryName: Option[String], dropNullInputValues: Boolean)(mapResponse: (A, List[GraphQLResponseError], Option[`__ObjectValue`]) => B)(implicit ev: IsOperation[Origin1]): Request[Either[CalibanClientError, B], Any]

Transforms a root selection into an STTP request ready to be run. More powerful than toRequest, it gives you access to partial errors and extensions.

Transforms a root selection into an STTP request ready to be run. More powerful than toRequest, it gives you access to partial errors and extensions.

Value parameters

dropNullInputValues

if true, drop all null values from input object arguments (default: false)

queryName

if specified, use the given query name

uri

the URL of the GraphQL server

useVariables

if true, all arguments will be passed as variables (default: false)

Attributes

Returns

an STTP request

def ~[Origin1 <: Origin, B](that: SelectionBuilder[Origin1, B])(implicit zippable: Zippable[A, B]): SelectionBuilder[Origin1, zippable.Out]

Combines this selection with another selection, returning a tuple of both results. To be combines, selections needs to have the same origin.

Combines this selection with another selection, returning a tuple of both results. To be combines, selections needs to have the same origin.

Attributes