morpheus-graphql-server-0.28.1: Morpheus GraphQL
Safe HaskellNone
LanguageHaskell2010

Data.Morpheus.Server

Description

GraphQL Wai Server Applications

Synopsis

Documentation

compileTimeSchemaValidation :: forall {k1} {k2} {k3} (qu :: (Type -> Type) -> Type) (mu :: (Type -> Type) -> Type) (su :: (Type -> Type) -> Type) proxy (root :: k2 -> k3 -> ((Type -> Type) -> Type) -> ((Type -> Type) -> Type) -> ((Type -> Type) -> Type) -> k1) (m :: k2) (event :: k3). SCHEMA qu mu su => proxy (root m event qu mu su) -> Q Exp Source #

normal morpheus server validates schema at runtime (after the schema derivation). this method allows you to validate it at compile time.

printSchema :: forall (m :: Type -> Type) event (query :: (Type -> Type) -> Type) (mut :: (Type -> Type) -> Type) (sub :: (Type -> Type) -> Type) proxy. RootResolverConstraint m event query mut sub => proxy (RootResolver m event query mut sub) -> ByteString Source #

Generates schema.gql file from RootResolver

type RootResolverConstraint (m :: Type -> Type) e (query :: (Type -> Type) -> Type) (mutation :: (Type -> Type) -> Type) (subscription :: (Type -> Type) -> Type) = (DERIVE_RESOLVERS (Resolver QUERY e m) query mutation subscription, SCHEMA query mutation subscription, Monad m) Source #

interpreter :: forall a b m e (query :: (Type -> Type) -> Type) (mut :: (Type -> Type) -> Type) (sub :: (Type -> Type) -> Type). (MapAPI a b, RootResolverConstraint m e query mut sub) => RootResolver m e query mut sub -> a -> m b Source #

main query processor and resolver

debugInterpreter :: forall a b m e (query :: (Type -> Type) -> Type) (mut :: (Type -> Type) -> Type) (sub :: (Type -> Type) -> Type). (MapAPI a b, RootResolverConstraint m e query mut sub) => RootResolver m e query mut sub -> a -> m b Source #

data App event (m :: Type -> Type) #

Instances

Instances details
Monad m => Semigroup (App e m) 
Instance details

Defined in Data.Morpheus.App

Methods

(<>) :: App e m -> App e m -> App e m #

sconcat :: NonEmpty (App e m) -> App e m #

stimes :: Integral b => b -> App e m -> App e m #

RenderGQL (App e m) 
Instance details

Defined in Data.Morpheus.App

Methods

renderGQL :: App e m -> Rendering #

deriveApp :: DeriveApp f m event qu mu su => f m event qu mu su -> App event m Source #

runApp :: (MapAPI a b, Monad m) => App e m -> a -> m b #

withDebugger :: forall e (m :: Type -> Type). App e m -> App e m #

disableIntrospection :: forall e (m :: Type -> Type). App e m -> App e m #