graphql-client-1.1.0: A client for Haskell programs to query a GraphQL API

MaintainerBrandon Chinn <brandon@leapyear.io>
Stabilityexperimental
Portabilityportable
Safe HaskellNone
LanguageHaskell2010

Data.GraphQL.Monad.Class

Description

Defines the MonadGraphQLQuery type class, which defines how GraphQL queries should be run.

Synopsis

Documentation

class Monad m => MonadGraphQLQuery m where Source #

A type class for monads that can run GraphQL queries.

Methods

runQuerySafe :: (GraphQLQuery query, schema ~ ResultSchema query) => query -> m (GraphQLResult (Object schema)) Source #

Instances
MonadGraphQLQuery m => MonadGraphQLQuery (MaybeT m) Source # 
Instance details

Defined in Data.GraphQL.Monad.Class

Methods

runQuerySafe :: (GraphQLQuery query, schema ~ ResultSchema query) => query -> MaybeT m (GraphQLResult (Object schema)) Source #

Monad m => MonadGraphQLQuery (MockQueryT m) Source # 
Instance details

Defined in Data.GraphQL.TestUtils

Methods

runQuerySafe :: (GraphQLQuery query, schema ~ ResultSchema query) => query -> MockQueryT m (GraphQLResult (Object schema)) Source #

MonadGraphQLQuery m => MonadGraphQLQuery (IdentityT m) Source # 
Instance details

Defined in Data.GraphQL.Monad.Class

Methods

runQuerySafe :: (GraphQLQuery query, schema ~ ResultSchema query) => query -> IdentityT m (GraphQLResult (Object schema)) Source #

MonadGraphQLQuery m => MonadGraphQLQuery (ExceptT e m) Source # 
Instance details

Defined in Data.GraphQL.Monad.Class

Methods

runQuerySafe :: (GraphQLQuery query, schema ~ ResultSchema query) => query -> ExceptT e m (GraphQLResult (Object schema)) Source #

MonadGraphQLQuery m => MonadGraphQLQuery (StateT s m) Source # 
Instance details

Defined in Data.GraphQL.Monad.Class

Methods

runQuerySafe :: (GraphQLQuery query, schema ~ ResultSchema query) => query -> StateT s m (GraphQLResult (Object schema)) Source #

MonadGraphQLQuery m => MonadGraphQLQuery (StateT s m) Source # 
Instance details

Defined in Data.GraphQL.Monad.Class

Methods

runQuerySafe :: (GraphQLQuery query, schema ~ ResultSchema query) => query -> StateT s m (GraphQLResult (Object schema)) Source #

(Monoid w, MonadGraphQLQuery m) => MonadGraphQLQuery (WriterT w m) Source # 
Instance details

Defined in Data.GraphQL.Monad.Class

Methods

runQuerySafe :: (GraphQLQuery query, schema ~ ResultSchema query) => query -> WriterT w m (GraphQLResult (Object schema)) Source #

(Monoid w, MonadGraphQLQuery m) => MonadGraphQLQuery (WriterT w m) Source # 
Instance details

Defined in Data.GraphQL.Monad.Class

Methods

runQuerySafe :: (GraphQLQuery query, schema ~ ResultSchema query) => query -> WriterT w m (GraphQLResult (Object schema)) Source #

MonadIO m => MonadGraphQLQuery (GraphQLQueryT m) Source # 
Instance details

Defined in Data.GraphQL.Monad

Methods

runQuerySafe :: (GraphQLQuery query, schema ~ ResultSchema query) => query -> GraphQLQueryT m (GraphQLResult (Object schema)) Source #

MonadGraphQLQuery m => MonadGraphQLQuery (ReaderT r m) Source # 
Instance details

Defined in Data.GraphQL.Monad.Class

Methods

runQuerySafe :: (GraphQLQuery query, schema ~ ResultSchema query) => query -> ReaderT r m (GraphQLResult (Object schema)) Source #

(Monoid w, MonadGraphQLQuery m) => MonadGraphQLQuery (RWST r w s m) Source # 
Instance details

Defined in Data.GraphQL.Monad.Class

Methods

runQuerySafe :: (GraphQLQuery query, schema ~ ResultSchema query) => query -> RWST r w s m (GraphQLResult (Object schema)) Source #

(Monoid w, MonadGraphQLQuery m) => MonadGraphQLQuery (RWST r w s m) Source # 
Instance details

Defined in Data.GraphQL.Monad.Class

Methods

runQuerySafe :: (GraphQLQuery query, schema ~ ResultSchema query) => query -> RWST r w s m (GraphQLResult (Object schema)) Source #

runQuery :: (MonadIO m, MonadGraphQLQuery m, GraphQLQuery query, schema ~ ResultSchema query) => query -> m (Object schema) Source #

Runs the given query and returns the result, erroring if the query returned errors.