mu-rpc-0.5.0.0: Protocol-independent declaration of services and servers.
Safe HaskellNone
LanguageHaskell2010

Mu.Rpc.Examples

Description

Look at the source code of this module.

Documentation

type QuickstartSchema = '['DRecord "HelloRequest" '['FieldDef "name" ('TPrimitive Text)], 'DRecord "HelloResponse" '['FieldDef "message" ('TPrimitive Text)], 'DRecord "HiRequest" '['FieldDef "number" ('TPrimitive Int)]] Source #

type QuickStartService = 'Package ('Just "helloworld") '['Service "Greeter" '['Method "SayHello" '['ArgSingle ('Nothing :: Maybe Symbol) ('SchemaRef QuickstartSchema "HelloRequest")] ('RetSingle ('SchemaRef QuickstartSchema "HelloResponse")), 'Method "SayHi" '['ArgSingle ('Nothing :: Maybe Symbol) ('SchemaRef QuickstartSchema "HiRequest")] ('RetStream ('SchemaRef QuickstartSchema "HelloResponse")), 'Method "SayManyHellos" '['ArgStream ('Nothing :: Maybe Symbol) ('SchemaRef QuickstartSchema "HelloRequest")] ('RetStream ('SchemaRef QuickstartSchema "HelloResponse"))]] :: Package' Source #

newtype HelloRequest Source #

Constructors

HelloRequest 

Fields

Instances

Instances details
Eq HelloRequest Source # 
Instance details

Defined in Mu.Rpc.Examples

Show HelloRequest Source # 
Instance details

Defined in Mu.Rpc.Examples

Generic HelloRequest Source # 
Instance details

Defined in Mu.Rpc.Examples

Associated Types

type Rep HelloRequest :: Type -> Type #

ToJSON HelloRequest Source # 
Instance details

Defined in Mu.Rpc.Examples

FromJSON HelloRequest Source # 
Instance details

Defined in Mu.Rpc.Examples

FromSchema QuickstartSchema "HelloRequest" HelloRequest Source # 
Instance details

Defined in Mu.Rpc.Examples

Methods

fromSchema :: Term QuickstartSchema (QuickstartSchema :/: "HelloRequest") -> HelloRequest

ToSchema QuickstartSchema "HelloRequest" HelloRequest Source # 
Instance details

Defined in Mu.Rpc.Examples

Methods

toSchema :: HelloRequest -> Term QuickstartSchema (QuickstartSchema :/: "HelloRequest")

type Rep HelloRequest Source # 
Instance details

Defined in Mu.Rpc.Examples

type Rep HelloRequest = D1 ('MetaData "HelloRequest" "Mu.Rpc.Examples" "mu-rpc-0.5.0.0-inplace" 'True) (C1 ('MetaCons "HelloRequest" 'PrefixI 'True) (S1 ('MetaSel ('Just "name") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text)))

newtype HelloResponse Source #

Constructors

HelloResponse 

Fields

Instances

Instances details
Eq HelloResponse Source # 
Instance details

Defined in Mu.Rpc.Examples

Show HelloResponse Source # 
Instance details

Defined in Mu.Rpc.Examples

Generic HelloResponse Source # 
Instance details

Defined in Mu.Rpc.Examples

Associated Types

type Rep HelloResponse :: Type -> Type #

ToJSON HelloResponse Source # 
Instance details

Defined in Mu.Rpc.Examples

FromJSON HelloResponse Source # 
Instance details

Defined in Mu.Rpc.Examples

FromSchema QuickstartSchema "HelloResponse" HelloResponse Source # 
Instance details

Defined in Mu.Rpc.Examples

Methods

fromSchema :: Term QuickstartSchema (QuickstartSchema :/: "HelloResponse") -> HelloResponse

ToSchema QuickstartSchema "HelloResponse" HelloResponse Source # 
Instance details

Defined in Mu.Rpc.Examples

Methods

toSchema :: HelloResponse -> Term QuickstartSchema (QuickstartSchema :/: "HelloResponse")

type Rep HelloResponse Source # 
Instance details

Defined in Mu.Rpc.Examples

type Rep HelloResponse = D1 ('MetaData "HelloResponse" "Mu.Rpc.Examples" "mu-rpc-0.5.0.0-inplace" 'True) (C1 ('MetaCons "HelloResponse" 'PrefixI 'True) (S1 ('MetaSel ('Just "message") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text)))

newtype HiRequest Source #

Constructors

HiRequest 

Fields

Instances

Instances details
Eq HiRequest Source # 
Instance details

Defined in Mu.Rpc.Examples

Show HiRequest Source # 
Instance details

Defined in Mu.Rpc.Examples

Generic HiRequest Source # 
Instance details

Defined in Mu.Rpc.Examples

Associated Types

type Rep HiRequest :: Type -> Type #

ToJSON HiRequest Source # 
Instance details

Defined in Mu.Rpc.Examples

FromJSON HiRequest Source # 
Instance details

Defined in Mu.Rpc.Examples

FromSchema QuickstartSchema "HiRequest" HiRequest Source # 
Instance details

Defined in Mu.Rpc.Examples

Methods

fromSchema :: Term QuickstartSchema (QuickstartSchema :/: "HiRequest") -> HiRequest

ToSchema QuickstartSchema "HiRequest" HiRequest Source # 
Instance details

Defined in Mu.Rpc.Examples

Methods

toSchema :: HiRequest -> Term QuickstartSchema (QuickstartSchema :/: "HiRequest")

type Rep HiRequest Source # 
Instance details

Defined in Mu.Rpc.Examples

type Rep HiRequest = D1 ('MetaData "HiRequest" "Mu.Rpc.Examples" "mu-rpc-0.5.0.0-inplace" 'True) (C1 ('MetaCons "HiRequest" 'PrefixI 'True) (S1 ('MetaSel ('Just "number") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)))

type ApolloService = 'Package ('Just "apollo") '[Object "Book" '[ObjectField "title" '[] ('RetSingle ('PrimitiveRef String)), ObjectField "author" '[] ('RetSingle ('ObjectRef "Author"))], Object "Paper" '[ObjectField "title" '[] ('RetSingle ('PrimitiveRef String)), ObjectField "author" '[] ('RetSingle ('ObjectRef "Author"))], Union "Writing" ["Book", "Paper"], Object "Author" '[ObjectField "name" '[] ('RetSingle ('PrimitiveRef String)), ObjectField "writings" '[] ('RetSingle ('ListRef ('ObjectRef "Writing")))]] Source #

type ApolloBookAuthor = '["Book" :-> (String, Integer), "Paper" :-> (String, Integer), "Writing" :-> Either (String, Integer) (String, Integer), "Author" :-> Integer] Source #