morpheus-graphql-client-0.15.0: Morpheus GraphQL Client

Safe HaskellNone
LanguageHaskell2010

Data.Morpheus.Client

Synopsis

Documentation

class Fetch a where Source #

Minimal complete definition

fetch

Associated Types

type Args a :: * Source #

Methods

__fetch :: (Monad m, Show a, ToJSON (Args a), FromJSON a) => String -> FieldName -> (ByteString -> m ByteString) -> Args a -> m (Either String a) Source #

fetch :: (Monad m, FromJSON a) => (ByteString -> m ByteString) -> Args a -> m (Either String a) Source #

data ScalarValue #

Primitive Values for GQLScalar: ScalarValue, ScalarValue, String, Boolean. for performance reason type Text represents GraphQl String value

Instances
Eq ScalarValue 
Instance details

Defined in Data.Morpheus.Types.Internal.AST.Value

Show ScalarValue 
Instance details

Defined in Data.Morpheus.Types.Internal.AST.Value

Generic ScalarValue 
Instance details

Defined in Data.Morpheus.Types.Internal.AST.Value

Associated Types

type Rep ScalarValue :: Type -> Type #

Lift ScalarValue 
Instance details

Defined in Data.Morpheus.Types.Internal.AST.Value

Methods

lift :: ScalarValue -> Q Exp #

ToJSON ScalarValue 
Instance details

Defined in Data.Morpheus.Types.Internal.AST.Value

FromJSON ScalarValue 
Instance details

Defined in Data.Morpheus.Types.Internal.AST.Value

RenderGQL ScalarValue 
Instance details

Defined in Data.Morpheus.Types.Internal.AST.Value

Methods

render :: ScalarValue -> Rendering #

type Rep ScalarValue 
Instance details

Defined in Data.Morpheus.Types.Internal.AST.Value

class GQLScalar a where #

GraphQL Scalar

parseValue and serialize should be provided for every instances manually

Minimal complete definition

parseValue, serialize

Methods

parseValue :: ScalarValue -> Either Text a #

value parsing and validating

for exhaustive pattern matching should be handled all scalar types : ScalarValue, ScalarValue, String, Boolean

invalid values can be reported with Left constructor :

  parseValue String _ = Left "" -- without error message
  -- or
  parseValue String _ = Left "Error Message"

serialize :: a -> ScalarValue #

serialization of haskell type into scalar value

scalarValidator :: f a -> ScalarDefinition #

newtype ID #

default GraphQL type, parses only String and Int values, serialized always as String

Constructors

ID 

Fields

Instances
Eq ID 
Instance details

Defined in Data.Morpheus.Types.ID

Methods

(==) :: ID -> ID -> Bool #

(/=) :: ID -> ID -> Bool #

Show ID 
Instance details

Defined in Data.Morpheus.Types.ID

Methods

showsPrec :: Int -> ID -> ShowS #

show :: ID -> String #

showList :: [ID] -> ShowS #

Generic ID 
Instance details

Defined in Data.Morpheus.Types.ID

Associated Types

type Rep ID :: Type -> Type #

Methods

from :: ID -> Rep ID x #

to :: Rep ID x -> ID #

ToJSON ID 
Instance details

Defined in Data.Morpheus.Types.ID

FromJSON ID 
Instance details

Defined in Data.Morpheus.Types.ID

GQLScalar ID 
Instance details

Defined in Data.Morpheus.Types.ID

type Rep ID 
Instance details

Defined in Data.Morpheus.Types.ID

type Rep ID = D1 (MetaData "ID" "Data.Morpheus.Types.ID" "morpheus-graphql-core-0.15.0-9uuN3vzHNGI7VnbqwliPKu" True) (C1 (MetaCons "ID" PrefixI True) (S1 (MetaSel (Just "unpackID") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))