morpheus-graphql-server-0.27.3: Morpheus GraphQL
Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.Morpheus.Server.Resolvers

Synopsis

Documentation

class ToJSON (Dependency a) => ResolveNamed (m :: Type -> Type) (a :: Type) where Source #

Minimal complete definition

resolveBatched

Associated Types

type Dep a :: Type Source #

Methods

resolveBatched :: MonadError GQLError m => [Dependency a] -> m [Maybe a] Source #

resolveNamed :: MonadError GQLError m => Dependency a -> m a Source #

Deprecated: use: resolveBatched

Instances

Instances details
ResolveNamed m ID Source # 
Instance details

Defined in Data.Morpheus.Server.Types.NamedResolvers

Associated Types

type Dep ID Source #

Methods

resolveBatched :: [Dependency ID] -> m [Maybe ID] Source #

resolveNamed :: Dependency ID -> m ID Source #

ResolveNamed m Text Source # 
Instance details

Defined in Data.Morpheus.Server.Types.NamedResolvers

Associated Types

type Dep Text Source #

Methods

resolveBatched :: [Dependency Text] -> m [Maybe Text] Source #

resolveNamed :: Dependency Text -> m Text Source #

ResolveNamed m Bool Source # 
Instance details

Defined in Data.Morpheus.Server.Types.NamedResolvers

Associated Types

type Dep Bool Source #

Methods

resolveBatched :: [Dependency Bool] -> m [Maybe Bool] Source #

resolveNamed :: Dependency Bool -> m Bool Source #

ResolveNamed m Double Source # 
Instance details

Defined in Data.Morpheus.Server.Types.NamedResolvers

Associated Types

type Dep Double Source #

Methods

resolveBatched :: [Dependency Double] -> m [Maybe Double] Source #

resolveNamed :: Dependency Double -> m Double Source #

ResolveNamed m Float Source # 
Instance details

Defined in Data.Morpheus.Server.Types.NamedResolvers

Associated Types

type Dep Float Source #

Methods

resolveBatched :: [Dependency Float] -> m [Maybe Float] Source #

resolveNamed :: Dependency Float -> m Float Source #

ResolveNamed m Int Source # 
Instance details

Defined in Data.Morpheus.Server.Types.NamedResolvers

Associated Types

type Dep Int Source #

Methods

resolveBatched :: [Dependency Int] -> m [Maybe Int] Source #

resolveNamed :: Dependency Int -> m Int Source #

data NamedResolverT (m :: Type -> Type) a where Source #

Constructors

NamedResolverT :: ResolveNamed m (Target a) => m (NamedRef a) -> NamedResolverT m a 

Instances

Instances details
GQLType a => GQLType (NamedResolverT m a) Source # 
Instance details

Defined in Data.Morpheus.Server.Types.GQLType

Associated Types

type KIND (NamedResolverT m a) :: DerivingKind Source #

Methods

directives :: f (NamedResolverT m a) -> DirectiveUsages Source #

__type :: forall (cat :: TypeCategory). CatType cat (NamedResolverT m a) -> TypeData

__deriveType :: forall (c :: TypeCategory). CatType c (NamedResolverT m a) -> SchemaT c (TypeDefinition c CONST)

__deriveFieldArguments :: forall (c :: TypeCategory). CatType c (NamedResolverT m a) -> SchemaT c (Maybe (ArgumentsDefinition CONST))

type KIND (NamedResolverT m a) Source # 
Instance details

Defined in Data.Morpheus.Server.Types.GQLType

resolve :: ResolveNamed m (Target a) => m (NamedRef a) -> NamedResolverT m a Source #

data NamedResolvers (m :: Type -> Type) event (qu :: (Type -> Type) -> Type) (mu :: (Type -> Type) -> Type) (su :: (Type -> Type) -> Type) Source #

Constructors

ResolveNamed (Resolver QUERY event m) (qu (NamedResolverT (Resolver QUERY event m))) => NamedResolvers 

data RootResolver (m :: Type -> Type) event (query :: (Type -> Type) -> Type) (mutation :: (Type -> Type) -> Type) (subscription :: (Type -> Type) -> Type) Source #

GraphQL Root resolver, also the interpreter generates a GQL schema from it. queryResolver is required, mutationResolver and subscriptionResolver are optional, if your schema does not supports mutation or subscription , you can use () for it.

Constructors

RootResolver 

Fields

type ResolverO o e m a = Flexible (Resolver o e m) a Source #

type ComposedResolver o e m f a = Composed (Resolver o e m) f a Source #

constRes :: MonadResolver m => b -> a -> m b Source #

type ResolverQ e m a = ResolverO QUERY e m a Source #

type ResolverM e m a = ResolverO MUTATION e m a Source #

useBatched :: (ResolveNamed m a, MonadError GQLError m) => Dependency a -> m a Source #

Deprecated: this function is obsolete

ignoreBatching :: Monad m => (a -> m b) -> [a] -> m [Maybe b] Source #

type family Flexible (m :: Type -> Type) a :: Type Source #

Instances

Instances details
type Flexible m (a :: Type) Source # 
Instance details

Defined in Data.Morpheus.Server.Resolvers

type Flexible m (a :: Type) = m a
type Flexible m (a :: (Type -> Type) -> Type) Source # 
Instance details

Defined in Data.Morpheus.Server.Resolvers

type Flexible m (a :: (Type -> Type) -> Type) = m (a m)

type family Composed (m :: Type -> Type) f a :: Type Source #

Instances

Instances details
type Composed m f (a :: Type) Source # 
Instance details

Defined in Data.Morpheus.Server.Resolvers

type Composed m f (a :: Type) = m (f a)
type Composed m f (a :: (Type -> Type) -> Type) Source # 
Instance details

Defined in Data.Morpheus.Server.Resolvers

type Composed m f (a :: (Type -> Type) -> Type) = m (f (a m))