capnp-0.18.0.0: Cap'n Proto for Haskell
Safe HaskellSafe-Inferred
LanguageHaskell2010

Capnp

Description

 
Synopsis

Documentation

data LimitT m a Source #

Monad transformer implementing MonadLimit. The underlying monad must implement MonadThrow. invoice calls throwM TraversalLimitError when the limit is exhausted.

Instances

Instances details
MonadTrans LimitT Source # 
Instance details

Defined in Capnp.TraversalLimit

Methods

lift :: Monad m => m a -> LimitT m a #

MonadState s m => MonadState s (LimitT m) Source # 
Instance details

Defined in Capnp.TraversalLimit

Methods

get :: LimitT m s #

put :: s -> LimitT m () #

state :: (s -> (a, s)) -> LimitT m a #

MonadFail m => MonadFail (LimitT m) Source # 
Instance details

Defined in Capnp.TraversalLimit

Methods

fail :: String -> LimitT m a #

MonadIO m => MonadIO (LimitT m) Source # 
Instance details

Defined in Capnp.TraversalLimit

Methods

liftIO :: IO a -> LimitT m a #

Monad m => Applicative (LimitT m) Source # 
Instance details

Defined in Capnp.TraversalLimit

Methods

pure :: a -> LimitT m a #

(<*>) :: LimitT m (a -> b) -> LimitT m a -> LimitT m b #

liftA2 :: (a -> b -> c) -> LimitT m a -> LimitT m b -> LimitT m c #

(*>) :: LimitT m a -> LimitT m b -> LimitT m b #

(<*) :: LimitT m a -> LimitT m b -> LimitT m a #

Functor m => Functor (LimitT m) Source # 
Instance details

Defined in Capnp.TraversalLimit

Methods

fmap :: (a -> b) -> LimitT m a -> LimitT m b #

(<$) :: a -> LimitT m b -> LimitT m a #

Monad m => Monad (LimitT m) Source # 
Instance details

Defined in Capnp.TraversalLimit

Methods

(>>=) :: LimitT m a -> (a -> LimitT m b) -> LimitT m b #

(>>) :: LimitT m a -> LimitT m b -> LimitT m b #

return :: a -> LimitT m a #

MonadThrow m => MonadLimit (LimitT m) Source # 
Instance details

Defined in Capnp.TraversalLimit

Methods

invoice :: WordCount -> LimitT m () Source #

MonadCatch m => MonadCatch (LimitT m) Source # 
Instance details

Defined in Capnp.TraversalLimit

Methods

catch :: Exception e => LimitT m a -> (e -> LimitT m a) -> LimitT m a #

MonadThrow m => MonadThrow (LimitT m) Source # 
Instance details

Defined in Capnp.TraversalLimit

Methods

throwM :: Exception e => e -> LimitT m a #

(PrimMonad m, s ~ PrimState m) => PrimMonad (LimitT m) Source # 
Instance details

Defined in Capnp.TraversalLimit

Associated Types

type PrimState (LimitT m) #

Methods

primitive :: (State# (PrimState (LimitT m)) -> (# State# (PrimState (LimitT m)), a #)) -> LimitT m a #

type PrimState (LimitT m) Source # 
Instance details

Defined in Capnp.TraversalLimit

class Monad m => MonadLimit m where Source #

mtl-style type class to track the traversal limit. This is used by other parts of the library which actually do the reading.

Methods

invoice :: WordCount -> m () Source #

invoice n deducts n from the traversal limit, signaling an error if the limit is exhausted.

Instances

Instances details
MonadThrow m => MonadLimit (LimitT m) Source # 
Instance details

Defined in Capnp.TraversalLimit

Methods

invoice :: WordCount -> LimitT m () Source #

MonadLimit (PureBuilder s) Source # 
Instance details

Defined in Internal.BuildPure

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

Defined in Capnp.TraversalLimit

Methods

invoice :: WordCount -> ReaderT r m () Source #

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

Defined in Capnp.TraversalLimit

Methods

invoice :: WordCount -> StateT s m () Source #

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

Defined in Capnp.TraversalLimit

Methods

invoice :: WordCount -> StateT s m () Source #

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

Defined in Capnp.TraversalLimit

Methods

invoice :: WordCount -> WriterT w m () Source #

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

Defined in Capnp.TraversalLimit

Methods

invoice :: WordCount -> RWST r w s m () Source #

runLimitT :: MonadThrow m => WordCount -> LimitT m a -> m (a, WordCount) Source #

Run a LimitT, returning the value from the computation and the remaining traversal limit.

evalLimitT :: MonadThrow m => WordCount -> LimitT m a -> m a Source #

Run a LimitT, returning the value from the computation.

execLimitT :: MonadThrow m => WordCount -> LimitT m a -> m WordCount Source #

Run a LimitT, returning the remaining traversal limit.

defaultLimit :: WordCount Source #

A sensible default traversal limit. Currently 64 MiB.

newtype Client a Source #

Constructors

Client Client 

Instances

Instances details
AsClient Client Source # 
Instance details

Defined in Capnp.Repr.Methods

Methods

asClient :: (MonadSTM m, IsCap c) => Client c -> m (Client c) Source #

Show (Client a) Source # 
Instance details

Defined in Capnp.Rpc.Common

Methods

showsPrec :: Int -> Client a -> ShowS #

show :: Client a -> String #

showList :: [Client a] -> ShowS #

ReprFor a ~ 'Ptr ('Just 'Cap) => IsClient (Client a) Source # 
Instance details

Defined in Capnp.Repr.Methods

Eq (Client a) Source # 
Instance details

Defined in Capnp.Rpc.Common

Methods

(==) :: Client a -> Client a -> Bool #

(/=) :: Client a -> Client a -> Bool #

(TypeParam sturdyRef, TypeParam owner) => Parse (Persistent sturdyRef owner) (Client (Persistent sturdyRef owner)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

parse :: ReadCtx m 'Const => Raw (Persistent sturdyRef owner) 'Const -> m (Client (Persistent sturdyRef owner)) Source #

encode :: RWCtx m s => Message ('Mut s) -> Client (Persistent sturdyRef owner) -> m (Raw (Persistent sturdyRef owner) ('Mut s)) Source #

(TypeParam internalRef, TypeParam externalRef, TypeParam internalOwner, TypeParam externalOwner) => Parse (RealmGateway internalRef externalRef internalOwner externalOwner) (Client (RealmGateway internalRef externalRef internalOwner externalOwner)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

parse :: ReadCtx m 'Const => Raw (RealmGateway internalRef externalRef internalOwner externalOwner) 'Const -> m (Client (RealmGateway internalRef externalRef internalOwner externalOwner)) Source #

encode :: RWCtx m s => Message ('Mut s) -> Client (RealmGateway internalRef externalRef internalOwner externalOwner) -> m (Raw (RealmGateway internalRef externalRef internalOwner externalOwner) ('Mut s)) Source #

newtype Pipeline a Source #

A Pipeline a is a reference to possibly-not-resolved result from a method call.

Constructors

Pipeline Pipeline 

Instances

Instances details
AsClient Pipeline Source # 
Instance details

Defined in Capnp.Repr.Methods

Methods

asClient :: (MonadSTM m, IsCap c) => Pipeline c -> m (Client c) Source #

hPutMsg :: Handle -> Message 'Const -> IO () Source #

hPutMsg handle msg writes msg to handle. If there is an exception, it will be an IOError raised by the underlying IO libraries.

putMsg :: Message 'Const -> IO () Source #

Equivalent to hPutMsg stdout

hGetMsg :: Handle -> WordCount -> IO (Message 'Const) Source #

hGetMsg handle limit reads a message from handle that is at most limit 64-bit words in length.

List0 :: [()] %1 -> Parsed AnyList Source #

class (Parse a ap, Allocate (List a)) => EstimateListAlloc a ap where Source #

Minimal complete definition

Nothing

Methods

estimateListAlloc :: [ap] -> AllocHint (List a) Source #

default estimateListAlloc :: AllocHint (List a) ~ Int => [ap] -> AllocHint (List a) Source #

Instances

Instances details
EstimateListAlloc Int16 Int16 Source # 
Instance details

Defined in Capnp.Classes

EstimateListAlloc Int32 Int32 Source # 
Instance details

Defined in Capnp.Classes

EstimateListAlloc Int64 Int64 Source # 
Instance details

Defined in Capnp.Classes

EstimateListAlloc Int8 Int8 Source # 
Instance details

Defined in Capnp.Classes

EstimateListAlloc Word16 Word16 Source # 
Instance details

Defined in Capnp.Classes

EstimateListAlloc Word32 Word32 Source # 
Instance details

Defined in Capnp.Classes

EstimateListAlloc Word64 Word64 Source # 
Instance details

Defined in Capnp.Classes

EstimateListAlloc Word8 Word8 Source # 
Instance details

Defined in Capnp.Classes

EstimateListAlloc Data ByteString Source # 
Instance details

Defined in Capnp.Basics

EstimateListAlloc Text Text Source # 
Instance details

Defined in Capnp.Basics

EstimateListAlloc Exception'Type Exception'Type Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateListAlloc Side Side Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

EstimateListAlloc ElementSize ElementSize Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc () () Source # 
Instance details

Defined in Capnp.Classes

Methods

estimateListAlloc :: [()] -> AllocHint (List ()) Source #

EstimateListAlloc Bool Bool Source # 
Instance details

Defined in Capnp.Classes

EstimateListAlloc Double Double Source # 
Instance details

Defined in Capnp.Classes

EstimateListAlloc Float Float Source # 
Instance details

Defined in Capnp.Classes

EstimateListAlloc AnyPointer (Parsed AnyPointer) Source # 
Instance details

Defined in Capnp.Basics

EstimateListAlloc AnyStruct (Parsed AnyStruct) Source # 
Instance details

Defined in Capnp.Basics

EstimateListAlloc DiscriminatorOptions (Parsed DiscriminatorOptions) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

EstimateListAlloc FlattenOptions (Parsed FlattenOptions) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

EstimateListAlloc Value (Parsed Value) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

EstimateListAlloc Value'Call (Parsed Value'Call) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

EstimateListAlloc Value'Field (Parsed Value'Field) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

EstimateListAlloc Accept (Parsed Accept) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateListAlloc Bootstrap (Parsed Bootstrap) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateListAlloc Call (Parsed Call) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateListAlloc Call'sendResultsTo (Parsed Call'sendResultsTo) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateListAlloc CapDescriptor (Parsed CapDescriptor) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateListAlloc Disembargo (Parsed Disembargo) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateListAlloc Disembargo'context (Parsed Disembargo'context) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateListAlloc Exception (Parsed Exception) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateListAlloc Finish (Parsed Finish) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateListAlloc Join (Parsed Join) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateListAlloc Message (Parsed Message) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateListAlloc MessageTarget (Parsed MessageTarget) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateListAlloc Payload (Parsed Payload) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateListAlloc PromisedAnswer (Parsed PromisedAnswer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateListAlloc PromisedAnswer'Op (Parsed PromisedAnswer'Op) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateListAlloc Provide (Parsed Provide) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateListAlloc Release (Parsed Release) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateListAlloc Resolve (Parsed Resolve) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateListAlloc Return (Parsed Return) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateListAlloc ThirdPartyCapDescriptor (Parsed ThirdPartyCapDescriptor) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateListAlloc JoinKeyPart (Parsed JoinKeyPart) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

EstimateListAlloc JoinResult (Parsed JoinResult) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

EstimateListAlloc ProvisionId (Parsed ProvisionId) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

EstimateListAlloc RecipientId (Parsed RecipientId) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

EstimateListAlloc ThirdPartyCapId (Parsed ThirdPartyCapId) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

EstimateListAlloc VatId (Parsed VatId) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

EstimateListAlloc Annotation (Parsed Annotation) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Brand (Parsed Brand) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Brand'Binding (Parsed Brand'Binding) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Brand'Scope (Parsed Brand'Scope) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc CapnpVersion (Parsed CapnpVersion) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc CodeGeneratorRequest (Parsed CodeGeneratorRequest) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc CodeGeneratorRequest'RequestedFile (Parsed CodeGeneratorRequest'RequestedFile) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc CodeGeneratorRequest'RequestedFile'Import (Parsed CodeGeneratorRequest'RequestedFile'Import) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Enumerant (Parsed Enumerant) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Field (Parsed Field) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Field'group (Parsed Field'group) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Field'ordinal (Parsed Field'ordinal) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Field'slot (Parsed Field'slot) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Method (Parsed Method) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Node (Parsed Node) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Node'NestedNode (Parsed Node'NestedNode) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Node'Parameter (Parsed Node'Parameter) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Node'SourceInfo (Parsed Node'SourceInfo) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Node'SourceInfo'Member (Parsed Node'SourceInfo'Member) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Node'annotation (Parsed Node'annotation) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Node'const (Parsed Node'const) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Node'enum (Parsed Node'enum) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Node'interface (Parsed Node'interface) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Node'struct (Parsed Node'struct) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Superclass (Parsed Superclass) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Type (Parsed Type) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Type'anyPointer (Parsed Type'anyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Type'anyPointer'implicitMethodParameter (Parsed Type'anyPointer'implicitMethodParameter) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Type'anyPointer'parameter (Parsed Type'anyPointer'parameter) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Type'anyPointer'unconstrained (Parsed Type'anyPointer'unconstrained) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Type'enum (Parsed Type'enum) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Type'interface (Parsed Type'interface) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Type'list (Parsed Type'list) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Type'struct (Parsed Type'struct) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc Value (Parsed Value) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateListAlloc StreamResult (Parsed StreamResult) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Stream

(Parse (List a) [ap], Allocate (List a)) => EstimateListAlloc (List a) [ap] Source # 
Instance details

Defined in Capnp.Classes

Methods

estimateListAlloc :: [[ap]] -> AllocHint (List (List a)) Source #

EstimateListAlloc (Maybe AnyPointer) (Maybe (Parsed AnyPointer)) Source # 
Instance details

Defined in Capnp.Basics

(TypeParam sturdyRef, TypeParam owner) => EstimateListAlloc (Persistent'SaveParams sturdyRef owner) (Parsed (Persistent'SaveParams sturdyRef owner)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

estimateListAlloc :: [Parsed (Persistent'SaveParams sturdyRef owner)] -> AllocHint (List (Persistent'SaveParams sturdyRef owner)) Source #

(TypeParam sturdyRef, TypeParam owner) => EstimateListAlloc (Persistent'SaveResults sturdyRef owner) (Parsed (Persistent'SaveResults sturdyRef owner)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

estimateListAlloc :: [Parsed (Persistent'SaveResults sturdyRef owner)] -> AllocHint (List (Persistent'SaveResults sturdyRef owner)) Source #

(TypeParam internalRef, TypeParam externalRef, TypeParam internalOwner, TypeParam externalOwner) => EstimateListAlloc (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) (Parsed (RealmGateway'export'params internalRef externalRef internalOwner externalOwner)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

estimateListAlloc :: [Parsed (RealmGateway'export'params internalRef externalRef internalOwner externalOwner)] -> AllocHint (List (RealmGateway'export'params internalRef externalRef internalOwner externalOwner)) Source #

(TypeParam internalRef, TypeParam externalRef, TypeParam internalOwner, TypeParam externalOwner) => EstimateListAlloc (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) (Parsed (RealmGateway'import'params internalRef externalRef internalOwner externalOwner)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

estimateListAlloc :: [Parsed (RealmGateway'import'params internalRef externalRef internalOwner externalOwner)] -> AllocHint (List (RealmGateway'import'params internalRef externalRef internalOwner externalOwner)) Source #

class (IsCap p, IsCap c) => Super p c Source #

An instance Super p c indicates that the interface c extends the interface p.

type MarshalElement a ap = (Parse a ap, EstimateListAlloc a ap, Element (ReprFor a), ListItem (ElemRepr (ListReprFor (ReprFor a))), HasMessage (ListOf (ElemRepr (ListReprFor (ReprFor a)))), MarshalElementByRepr (ListReprFor (ReprFor a)), MarshalElementReprConstraints (ListReprFor (ReprFor a)) a ap) Source #

Type alias capturing the constraints on a type needed by marshalElement

class (IsStruct a, Allocate a, HasTypeId a, AllocHint a ~ ()) => TypedStruct a where Source #

Operations on typed structs.

Instances

Instances details
TypedStruct DiscriminatorOptions Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

TypedStruct FlattenOptions Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

TypedStruct Value Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

TypedStruct Value'Call Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

TypedStruct Value'Field Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

TypedStruct Accept Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

TypedStruct Bootstrap Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

TypedStruct Call Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

TypedStruct Call'sendResultsTo Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

TypedStruct CapDescriptor Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

TypedStruct Disembargo Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

TypedStruct Disembargo'context Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

TypedStruct Exception Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

TypedStruct Finish Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

TypedStruct Join Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

TypedStruct Message Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

TypedStruct MessageTarget Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

TypedStruct Payload Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

TypedStruct PromisedAnswer Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

TypedStruct PromisedAnswer'Op Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

TypedStruct Provide Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

TypedStruct Release Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

TypedStruct Resolve Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

TypedStruct Return Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

TypedStruct ThirdPartyCapDescriptor Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

TypedStruct JoinKeyPart Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

TypedStruct JoinResult Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

TypedStruct ProvisionId Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

TypedStruct RecipientId Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

TypedStruct ThirdPartyCapId Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

TypedStruct VatId Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

TypedStruct Annotation Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Brand Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Brand'Binding Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Brand'Scope Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct CapnpVersion Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct CodeGeneratorRequest Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct CodeGeneratorRequest'RequestedFile Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct CodeGeneratorRequest'RequestedFile'Import Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Enumerant Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Field Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Field'group Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Field'ordinal Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Field'slot Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Method Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Node Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Node'NestedNode Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Node'Parameter Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Node'SourceInfo Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Node'SourceInfo'Member Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Node'annotation Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Node'const Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Node'enum Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Node'interface Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Node'struct Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Superclass Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Type Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Type'anyPointer Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Type'anyPointer'implicitMethodParameter Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Type'anyPointer'parameter Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Type'anyPointer'unconstrained Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Type'enum Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Type'interface Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Type'list Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Type'struct Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct Value Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

TypedStruct StreamResult Source # 
Instance details

Defined in Capnp.Gen.Capnp.Stream

(TypeParam sturdyRef, TypeParam owner) => TypedStruct (Persistent'SaveParams sturdyRef owner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

(TypeParam sturdyRef, TypeParam owner) => TypedStruct (Persistent'SaveResults sturdyRef owner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

(TypeParam internalRef, TypeParam externalRef, TypeParam internalOwner, TypeParam externalOwner) => TypedStruct (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

(TypeParam internalRef, TypeParam externalRef, TypeParam internalOwner, TypeParam externalOwner) => TypedStruct (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

class HasTypeId a where Source #

Types which have a numeric type-id defined in a capnp schema.

Methods

typeId :: Word64 Source #

The node id for this type. You will generally want to use the TypeApplications extension to specify the type.

Instances

Instances details
HasTypeId DiscriminatorOptions Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Methods

typeId :: Word64 Source #

HasTypeId FlattenOptions Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Methods

typeId :: Word64 Source #

HasTypeId Value Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Methods

typeId :: Word64 Source #

HasTypeId Value'Call Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Methods

typeId :: Word64 Source #

HasTypeId Value'Field Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Methods

typeId :: Word64 Source #

HasTypeId Accept Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

typeId :: Word64 Source #

HasTypeId Bootstrap Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

typeId :: Word64 Source #

HasTypeId Call Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

typeId :: Word64 Source #

HasTypeId Call'sendResultsTo Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

typeId :: Word64 Source #

HasTypeId CapDescriptor Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

typeId :: Word64 Source #

HasTypeId Disembargo Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

typeId :: Word64 Source #

HasTypeId Disembargo'context Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

typeId :: Word64 Source #

HasTypeId Exception Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

typeId :: Word64 Source #

HasTypeId Exception'Type Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

typeId :: Word64 Source #

HasTypeId Finish Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

typeId :: Word64 Source #

HasTypeId Join Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

typeId :: Word64 Source #

HasTypeId Message Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

typeId :: Word64 Source #

HasTypeId MessageTarget Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

typeId :: Word64 Source #

HasTypeId Payload Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

typeId :: Word64 Source #

HasTypeId PromisedAnswer Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

typeId :: Word64 Source #

HasTypeId PromisedAnswer'Op Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

typeId :: Word64 Source #

HasTypeId Provide Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

typeId :: Word64 Source #

HasTypeId Release Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

typeId :: Word64 Source #

HasTypeId Resolve Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

typeId :: Word64 Source #

HasTypeId Return Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

typeId :: Word64 Source #

HasTypeId ThirdPartyCapDescriptor Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

typeId :: Word64 Source #

HasTypeId JoinKeyPart Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Methods

typeId :: Word64 Source #

HasTypeId JoinResult Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Methods

typeId :: Word64 Source #

HasTypeId ProvisionId Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Methods

typeId :: Word64 Source #

HasTypeId RecipientId Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Methods

typeId :: Word64 Source #

HasTypeId Side Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Methods

typeId :: Word64 Source #

HasTypeId ThirdPartyCapId Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Methods

typeId :: Word64 Source #

HasTypeId VatId Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Methods

typeId :: Word64 Source #

HasTypeId Annotation Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Brand Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Brand'Binding Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Brand'Scope Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId CapnpVersion Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId CodeGeneratorRequest Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId CodeGeneratorRequest'RequestedFile Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId CodeGeneratorRequest'RequestedFile'Import Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId ElementSize Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Enumerant Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Field Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Field'group Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Field'ordinal Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Field'slot Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Method Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Node Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Node'NestedNode Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Node'Parameter Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Node'SourceInfo Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Node'SourceInfo'Member Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Node'annotation Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Node'const Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Node'enum Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Node'interface Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Node'struct Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Superclass Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Type Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Type'anyPointer Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Type'anyPointer'implicitMethodParameter Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Type'anyPointer'parameter Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Type'anyPointer'unconstrained Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Type'enum Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Type'interface Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Type'list Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Type'struct Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId Value Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

typeId :: Word64 Source #

HasTypeId StreamResult Source # 
Instance details

Defined in Capnp.Gen.Capnp.Stream

Methods

typeId :: Word64 Source #

HasTypeId (Persistent sturdyRef owner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

typeId :: Word64 Source #

HasTypeId (Persistent'SaveParams sturdyRef owner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

typeId :: Word64 Source #

HasTypeId (Persistent'SaveResults sturdyRef owner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

typeId :: Word64 Source #

HasTypeId (RealmGateway internalRef externalRef internalOwner externalOwner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

typeId :: Word64 Source #

HasTypeId (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

typeId :: Word64 Source #

HasTypeId (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

typeId :: Word64 Source #

class Parse t p => Marshal t p where Source #

An instance of marshal allows a parsed value to be inserted into pre-allocated space in a message.

Methods

marshalInto :: RWCtx m s => Raw t ('Mut s) -> p -> m () Source #

Marshal a value into the pre-allocated object inside the message.

Note that caller must arrange for the object to be of the correct size. This is is not necessarily guaranteed; for example, list types must coordinate the length of the list.

Instances

Instances details
Marshal Data ByteString Source # 
Instance details

Defined in Capnp.Basics

Methods

marshalInto :: RWCtx m s => Raw Data ('Mut s) -> ByteString -> m () Source #

Marshal AnyStruct (Parsed AnyStruct) Source # 
Instance details

Defined in Capnp.Basics

Methods

marshalInto :: RWCtx m s => Raw AnyStruct ('Mut s) -> Parsed AnyStruct -> m () Source #

Marshal DiscriminatorOptions (Parsed DiscriminatorOptions) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Marshal FlattenOptions (Parsed FlattenOptions) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Marshal Value (Parsed Value) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Methods

marshalInto :: RWCtx m s => Raw Value ('Mut s) -> Parsed Value -> m () Source #

Marshal Value'Call (Parsed Value'Call) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Methods

marshalInto :: RWCtx m s => Raw Value'Call ('Mut s) -> Parsed Value'Call -> m () Source #

Marshal Value'Field (Parsed Value'Field) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Methods

marshalInto :: RWCtx m s => Raw Value'Field ('Mut s) -> Parsed Value'Field -> m () Source #

Marshal Accept (Parsed Accept) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

marshalInto :: RWCtx m s => Raw Accept ('Mut s) -> Parsed Accept -> m () Source #

Marshal Bootstrap (Parsed Bootstrap) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

marshalInto :: RWCtx m s => Raw Bootstrap ('Mut s) -> Parsed Bootstrap -> m () Source #

Marshal Call (Parsed Call) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

marshalInto :: RWCtx m s => Raw Call ('Mut s) -> Parsed Call -> m () Source #

Marshal Call'sendResultsTo (Parsed Call'sendResultsTo) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Marshal CapDescriptor (Parsed CapDescriptor) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

marshalInto :: RWCtx m s => Raw CapDescriptor ('Mut s) -> Parsed CapDescriptor -> m () Source #

Marshal Disembargo (Parsed Disembargo) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

marshalInto :: RWCtx m s => Raw Disembargo ('Mut s) -> Parsed Disembargo -> m () Source #

Marshal Disembargo'context (Parsed Disembargo'context) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Marshal Exception (Parsed Exception) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

marshalInto :: RWCtx m s => Raw Exception ('Mut s) -> Parsed Exception -> m () Source #

Marshal Finish (Parsed Finish) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

marshalInto :: RWCtx m s => Raw Finish ('Mut s) -> Parsed Finish -> m () Source #

Marshal Join (Parsed Join) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

marshalInto :: RWCtx m s => Raw Join ('Mut s) -> Parsed Join -> m () Source #

Marshal Message (Parsed Message) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

marshalInto :: RWCtx m s => Raw Message ('Mut s) -> Parsed Message -> m () Source #

Marshal MessageTarget (Parsed MessageTarget) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

marshalInto :: RWCtx m s => Raw MessageTarget ('Mut s) -> Parsed MessageTarget -> m () Source #

Marshal Payload (Parsed Payload) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

marshalInto :: RWCtx m s => Raw Payload ('Mut s) -> Parsed Payload -> m () Source #

Marshal PromisedAnswer (Parsed PromisedAnswer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Marshal PromisedAnswer'Op (Parsed PromisedAnswer'Op) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Marshal Provide (Parsed Provide) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

marshalInto :: RWCtx m s => Raw Provide ('Mut s) -> Parsed Provide -> m () Source #

Marshal Release (Parsed Release) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

marshalInto :: RWCtx m s => Raw Release ('Mut s) -> Parsed Release -> m () Source #

Marshal Resolve (Parsed Resolve) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

marshalInto :: RWCtx m s => Raw Resolve ('Mut s) -> Parsed Resolve -> m () Source #

Marshal Return (Parsed Return) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

marshalInto :: RWCtx m s => Raw Return ('Mut s) -> Parsed Return -> m () Source #

Marshal ThirdPartyCapDescriptor (Parsed ThirdPartyCapDescriptor) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Marshal JoinKeyPart (Parsed JoinKeyPart) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Methods

marshalInto :: RWCtx m s => Raw JoinKeyPart ('Mut s) -> Parsed JoinKeyPart -> m () Source #

Marshal JoinResult (Parsed JoinResult) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Methods

marshalInto :: RWCtx m s => Raw JoinResult ('Mut s) -> Parsed JoinResult -> m () Source #

Marshal ProvisionId (Parsed ProvisionId) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Methods

marshalInto :: RWCtx m s => Raw ProvisionId ('Mut s) -> Parsed ProvisionId -> m () Source #

Marshal RecipientId (Parsed RecipientId) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Methods

marshalInto :: RWCtx m s => Raw RecipientId ('Mut s) -> Parsed RecipientId -> m () Source #

Marshal ThirdPartyCapId (Parsed ThirdPartyCapId) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Marshal VatId (Parsed VatId) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Methods

marshalInto :: RWCtx m s => Raw VatId ('Mut s) -> Parsed VatId -> m () Source #

Marshal Annotation (Parsed Annotation) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw Annotation ('Mut s) -> Parsed Annotation -> m () Source #

Marshal Brand (Parsed Brand) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw Brand ('Mut s) -> Parsed Brand -> m () Source #

Marshal Brand'Binding (Parsed Brand'Binding) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw Brand'Binding ('Mut s) -> Parsed Brand'Binding -> m () Source #

Marshal Brand'Scope (Parsed Brand'Scope) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw Brand'Scope ('Mut s) -> Parsed Brand'Scope -> m () Source #

Marshal CapnpVersion (Parsed CapnpVersion) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw CapnpVersion ('Mut s) -> Parsed CapnpVersion -> m () Source #

Marshal CodeGeneratorRequest (Parsed CodeGeneratorRequest) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Marshal CodeGeneratorRequest'RequestedFile (Parsed CodeGeneratorRequest'RequestedFile) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Marshal CodeGeneratorRequest'RequestedFile'Import (Parsed CodeGeneratorRequest'RequestedFile'Import) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Marshal Enumerant (Parsed Enumerant) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw Enumerant ('Mut s) -> Parsed Enumerant -> m () Source #

Marshal Field (Parsed Field) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw Field ('Mut s) -> Parsed Field -> m () Source #

Marshal Field'group (Parsed Field'group) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw Field'group ('Mut s) -> Parsed Field'group -> m () Source #

Marshal Field'ordinal (Parsed Field'ordinal) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw Field'ordinal ('Mut s) -> Parsed Field'ordinal -> m () Source #

Marshal Field'slot (Parsed Field'slot) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw Field'slot ('Mut s) -> Parsed Field'slot -> m () Source #

Marshal Method (Parsed Method) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw Method ('Mut s) -> Parsed Method -> m () Source #

Marshal Node (Parsed Node) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw Node ('Mut s) -> Parsed Node -> m () Source #

Marshal Node'NestedNode (Parsed Node'NestedNode) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Marshal Node'Parameter (Parsed Node'Parameter) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Marshal Node'SourceInfo (Parsed Node'SourceInfo) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Marshal Node'SourceInfo'Member (Parsed Node'SourceInfo'Member) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Marshal Node'annotation (Parsed Node'annotation) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Marshal Node'const (Parsed Node'const) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw Node'const ('Mut s) -> Parsed Node'const -> m () Source #

Marshal Node'enum (Parsed Node'enum) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw Node'enum ('Mut s) -> Parsed Node'enum -> m () Source #

Marshal Node'interface (Parsed Node'interface) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Marshal Node'struct (Parsed Node'struct) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw Node'struct ('Mut s) -> Parsed Node'struct -> m () Source #

Marshal Superclass (Parsed Superclass) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw Superclass ('Mut s) -> Parsed Superclass -> m () Source #

Marshal Type (Parsed Type) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw Type ('Mut s) -> Parsed Type -> m () Source #

Marshal Type'anyPointer (Parsed Type'anyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Marshal Type'anyPointer'implicitMethodParameter (Parsed Type'anyPointer'implicitMethodParameter) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Marshal Type'anyPointer'parameter (Parsed Type'anyPointer'parameter) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Marshal Type'anyPointer'unconstrained (Parsed Type'anyPointer'unconstrained) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Marshal Type'enum (Parsed Type'enum) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw Type'enum ('Mut s) -> Parsed Type'enum -> m () Source #

Marshal Type'interface (Parsed Type'interface) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Marshal Type'list (Parsed Type'list) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw Type'list ('Mut s) -> Parsed Type'list -> m () Source #

Marshal Type'struct (Parsed Type'struct) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw Type'struct ('Mut s) -> Parsed Type'struct -> m () Source #

Marshal Value (Parsed Value) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw Value ('Mut s) -> Parsed Value -> m () Source #

Marshal StreamResult (Parsed StreamResult) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Stream

Methods

marshalInto :: RWCtx m s => Raw StreamResult ('Mut s) -> Parsed StreamResult -> m () Source #

Marshal (Which Value) (Parsed (Which Value)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Methods

marshalInto :: RWCtx m s => Raw (Which Value) ('Mut s) -> Parsed (Which Value) -> m () Source #

Marshal (Which Call'sendResultsTo) (Parsed (Which Call'sendResultsTo)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Marshal (Which CapDescriptor) (Parsed (Which CapDescriptor)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Marshal (Which Disembargo'context) (Parsed (Which Disembargo'context)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Marshal (Which Message) (Parsed (Which Message)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

marshalInto :: RWCtx m s => Raw (Which Message) ('Mut s) -> Parsed (Which Message) -> m () Source #

Marshal (Which MessageTarget) (Parsed (Which MessageTarget)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Marshal (Which PromisedAnswer'Op) (Parsed (Which PromisedAnswer'Op)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Marshal (Which Resolve) (Parsed (Which Resolve)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

marshalInto :: RWCtx m s => Raw (Which Resolve) ('Mut s) -> Parsed (Which Resolve) -> m () Source #

Marshal (Which Return) (Parsed (Which Return)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

marshalInto :: RWCtx m s => Raw (Which Return) ('Mut s) -> Parsed (Which Return) -> m () Source #

Marshal (Which Brand'Binding) (Parsed (Which Brand'Binding)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Marshal (Which Brand'Scope) (Parsed (Which Brand'Scope)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw (Which Brand'Scope) ('Mut s) -> Parsed (Which Brand'Scope) -> m () Source #

Marshal (Which Field) (Parsed (Which Field)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw (Which Field) ('Mut s) -> Parsed (Which Field) -> m () Source #

Marshal (Which Field'ordinal) (Parsed (Which Field'ordinal)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Marshal (Which Node) (Parsed (Which Node)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw (Which Node) ('Mut s) -> Parsed (Which Node) -> m () Source #

Marshal (Which Type) (Parsed (Which Type)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw (Which Type) ('Mut s) -> Parsed (Which Type) -> m () Source #

Marshal (Which Type'anyPointer) (Parsed (Which Type'anyPointer)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Marshal (Which Type'anyPointer'unconstrained) (Parsed (Which Type'anyPointer'unconstrained)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Marshal (Which Value) (Parsed (Which Value)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

marshalInto :: RWCtx m s => Raw (Which Value) ('Mut s) -> Parsed (Which Value) -> m () Source #

MarshalElement a ap => Marshal (List a) [ap] Source # 
Instance details

Defined in Capnp.Classes

Methods

marshalInto :: RWCtx m s => Raw (List a) ('Mut s) -> [ap] -> m () Source #

(TypeParam sturdyRef, TypeParam owner) => Marshal (Persistent'SaveParams sturdyRef owner) (Parsed (Persistent'SaveParams sturdyRef owner)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

marshalInto :: RWCtx m s => Raw (Persistent'SaveParams sturdyRef owner) ('Mut s) -> Parsed (Persistent'SaveParams sturdyRef owner) -> m () Source #

(TypeParam sturdyRef, TypeParam owner) => Marshal (Persistent'SaveResults sturdyRef owner) (Parsed (Persistent'SaveResults sturdyRef owner)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

marshalInto :: RWCtx m s => Raw (Persistent'SaveResults sturdyRef owner) ('Mut s) -> Parsed (Persistent'SaveResults sturdyRef owner) -> m () Source #

(TypeParam internalRef, TypeParam externalRef, TypeParam internalOwner, TypeParam externalOwner) => Marshal (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) (Parsed (RealmGateway'export'params internalRef externalRef internalOwner externalOwner)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

marshalInto :: RWCtx m s => Raw (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) ('Mut s) -> Parsed (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) -> m () Source #

(TypeParam internalRef, TypeParam externalRef, TypeParam internalOwner, TypeParam externalOwner) => Marshal (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) (Parsed (RealmGateway'import'params internalRef externalRef internalOwner externalOwner)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

marshalInto :: RWCtx m s => Raw (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) ('Mut s) -> Parsed (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) -> m () Source #

class AllocateList a where Source #

Like Allocate, but for allocating *lists* of a.

Minimal complete definition

Nothing

Associated Types

type ListAllocHint a Source #

Extra information needed to allocate a list of as.

Methods

newList :: RWCtx m s => ListAllocHint a -> Message ('Mut s) -> m (Raw (List a) ('Mut s)) Source #

default newList :: forall m s lr r. (RWCtx m s, lr ~ ListReprFor (ReprFor a), r ~ 'List ('Just lr), Allocate r, AllocHint r ~ ListAllocHint a) => ListAllocHint a -> Message ('Mut s) -> m (Raw (List a) ('Mut s)) Source #

Instances

Instances details
AllocateList Int16 Source # 
Instance details

Defined in Capnp.Classes

Associated Types

type ListAllocHint Int16 Source #

Methods

newList :: RWCtx m s => ListAllocHint Int16 -> Message ('Mut s) -> m (Raw (List Int16) ('Mut s)) Source #

AllocateList Int32 Source # 
Instance details

Defined in Capnp.Classes

Associated Types

type ListAllocHint Int32 Source #

Methods

newList :: RWCtx m s => ListAllocHint Int32 -> Message ('Mut s) -> m (Raw (List Int32) ('Mut s)) Source #

AllocateList Int64 Source # 
Instance details

Defined in Capnp.Classes

Associated Types

type ListAllocHint Int64 Source #

Methods

newList :: RWCtx m s => ListAllocHint Int64 -> Message ('Mut s) -> m (Raw (List Int64) ('Mut s)) Source #

AllocateList Int8 Source # 
Instance details

Defined in Capnp.Classes

Associated Types

type ListAllocHint Int8 Source #

Methods

newList :: RWCtx m s => ListAllocHint Int8 -> Message ('Mut s) -> m (Raw (List Int8) ('Mut s)) Source #

AllocateList Word16 Source # 
Instance details

Defined in Capnp.Classes

Associated Types

type ListAllocHint Word16 Source #

Methods

newList :: RWCtx m s => ListAllocHint Word16 -> Message ('Mut s) -> m (Raw (List Word16) ('Mut s)) Source #

AllocateList Word32 Source # 
Instance details

Defined in Capnp.Classes

Associated Types

type ListAllocHint Word32 Source #

Methods

newList :: RWCtx m s => ListAllocHint Word32 -> Message ('Mut s) -> m (Raw (List Word32) ('Mut s)) Source #

AllocateList Word64 Source # 
Instance details

Defined in Capnp.Classes

Associated Types

type ListAllocHint Word64 Source #

Methods

newList :: RWCtx m s => ListAllocHint Word64 -> Message ('Mut s) -> m (Raw (List Word64) ('Mut s)) Source #

AllocateList Word8 Source # 
Instance details

Defined in Capnp.Classes

Associated Types

type ListAllocHint Word8 Source #

Methods

newList :: RWCtx m s => ListAllocHint Word8 -> Message ('Mut s) -> m (Raw (List Word8) ('Mut s)) Source #

AllocateList AnyPointer Source # 
Instance details

Defined in Capnp.Basics

Associated Types

type ListAllocHint AnyPointer Source #

Methods

newList :: RWCtx m s => ListAllocHint AnyPointer -> Message ('Mut s) -> m (Raw (List AnyPointer) ('Mut s)) Source #

AllocateList AnyStruct Source # 
Instance details

Defined in Capnp.Basics

Associated Types

type ListAllocHint AnyStruct Source #

Methods

newList :: RWCtx m s => ListAllocHint AnyStruct -> Message ('Mut s) -> m (Raw (List AnyStruct) ('Mut s)) Source #

AllocateList Data Source # 
Instance details

Defined in Capnp.Basics

Associated Types

type ListAllocHint Data Source #

Methods

newList :: RWCtx m s => ListAllocHint Data -> Message ('Mut s) -> m (Raw (List Data) ('Mut s)) Source #

AllocateList Text Source # 
Instance details

Defined in Capnp.Basics

Associated Types

type ListAllocHint Text Source #

Methods

newList :: RWCtx m s => ListAllocHint Text -> Message ('Mut s) -> m (Raw (List Text) ('Mut s)) Source #

AllocateList DiscriminatorOptions Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

AllocateList FlattenOptions Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Associated Types

type ListAllocHint FlattenOptions Source #

AllocateList Value Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Associated Types

type ListAllocHint Value Source #

Methods

newList :: RWCtx m s => ListAllocHint Value -> Message ('Mut s) -> m (Raw (List Value) ('Mut s)) Source #

AllocateList Value'Call Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Associated Types

type ListAllocHint Value'Call Source #

Methods

newList :: RWCtx m s => ListAllocHint Value'Call -> Message ('Mut s) -> m (Raw (List Value'Call) ('Mut s)) Source #

AllocateList Value'Field Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Associated Types

type ListAllocHint Value'Field Source #

Methods

newList :: RWCtx m s => ListAllocHint Value'Field -> Message ('Mut s) -> m (Raw (List Value'Field) ('Mut s)) Source #

AllocateList Accept Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type ListAllocHint Accept Source #

Methods

newList :: RWCtx m s => ListAllocHint Accept -> Message ('Mut s) -> m (Raw (List Accept) ('Mut s)) Source #

AllocateList Bootstrap Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type ListAllocHint Bootstrap Source #

Methods

newList :: RWCtx m s => ListAllocHint Bootstrap -> Message ('Mut s) -> m (Raw (List Bootstrap) ('Mut s)) Source #

AllocateList Call Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type ListAllocHint Call Source #

Methods

newList :: RWCtx m s => ListAllocHint Call -> Message ('Mut s) -> m (Raw (List Call) ('Mut s)) Source #

AllocateList Call'sendResultsTo Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

AllocateList CapDescriptor Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type ListAllocHint CapDescriptor Source #

AllocateList Disembargo Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type ListAllocHint Disembargo Source #

Methods

newList :: RWCtx m s => ListAllocHint Disembargo -> Message ('Mut s) -> m (Raw (List Disembargo) ('Mut s)) Source #

AllocateList Disembargo'context Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

AllocateList Exception Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type ListAllocHint Exception Source #

Methods

newList :: RWCtx m s => ListAllocHint Exception -> Message ('Mut s) -> m (Raw (List Exception) ('Mut s)) Source #

AllocateList Exception'Type Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type ListAllocHint Exception'Type Source #

AllocateList Finish Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type ListAllocHint Finish Source #

Methods

newList :: RWCtx m s => ListAllocHint Finish -> Message ('Mut s) -> m (Raw (List Finish) ('Mut s)) Source #

AllocateList Join Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type ListAllocHint Join Source #

Methods

newList :: RWCtx m s => ListAllocHint Join -> Message ('Mut s) -> m (Raw (List Join) ('Mut s)) Source #

AllocateList Message Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type ListAllocHint Message Source #

Methods

newList :: RWCtx m s => ListAllocHint Message -> Message0 ('Mut s) -> m (Raw (List Message) ('Mut s)) Source #

AllocateList MessageTarget Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type ListAllocHint MessageTarget Source #

AllocateList Payload Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type ListAllocHint Payload Source #

Methods

newList :: RWCtx m s => ListAllocHint Payload -> Message ('Mut s) -> m (Raw (List Payload) ('Mut s)) Source #

AllocateList PromisedAnswer Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type ListAllocHint PromisedAnswer Source #

AllocateList PromisedAnswer'Op Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

AllocateList Provide Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type ListAllocHint Provide Source #

Methods

newList :: RWCtx m s => ListAllocHint Provide -> Message ('Mut s) -> m (Raw (List Provide) ('Mut s)) Source #

AllocateList Release Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type ListAllocHint Release Source #

Methods

newList :: RWCtx m s => ListAllocHint Release -> Message ('Mut s) -> m (Raw (List Release) ('Mut s)) Source #

AllocateList Resolve Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type ListAllocHint Resolve Source #

Methods

newList :: RWCtx m s => ListAllocHint Resolve -> Message ('Mut s) -> m (Raw (List Resolve) ('Mut s)) Source #

AllocateList Return Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type ListAllocHint Return Source #

Methods

newList :: RWCtx m s => ListAllocHint Return -> Message ('Mut s) -> m (Raw (List Return) ('Mut s)) Source #

AllocateList ThirdPartyCapDescriptor Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

AllocateList JoinKeyPart Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Associated Types

type ListAllocHint JoinKeyPart Source #

Methods

newList :: RWCtx m s => ListAllocHint JoinKeyPart -> Message ('Mut s) -> m (Raw (List JoinKeyPart) ('Mut s)) Source #

AllocateList JoinResult Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Associated Types

type ListAllocHint JoinResult Source #

Methods

newList :: RWCtx m s => ListAllocHint JoinResult -> Message ('Mut s) -> m (Raw (List JoinResult) ('Mut s)) Source #

AllocateList ProvisionId Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Associated Types

type ListAllocHint ProvisionId Source #

Methods

newList :: RWCtx m s => ListAllocHint ProvisionId -> Message ('Mut s) -> m (Raw (List ProvisionId) ('Mut s)) Source #

AllocateList RecipientId Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Associated Types

type ListAllocHint RecipientId Source #

Methods

newList :: RWCtx m s => ListAllocHint RecipientId -> Message ('Mut s) -> m (Raw (List RecipientId) ('Mut s)) Source #

AllocateList Side Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Associated Types

type ListAllocHint Side Source #

Methods

newList :: RWCtx m s => ListAllocHint Side -> Message ('Mut s) -> m (Raw (List Side) ('Mut s)) Source #

AllocateList ThirdPartyCapId Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Associated Types

type ListAllocHint ThirdPartyCapId Source #

AllocateList VatId Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Associated Types

type ListAllocHint VatId Source #

Methods

newList :: RWCtx m s => ListAllocHint VatId -> Message ('Mut s) -> m (Raw (List VatId) ('Mut s)) Source #

AllocateList Annotation Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Annotation Source #

Methods

newList :: RWCtx m s => ListAllocHint Annotation -> Message ('Mut s) -> m (Raw (List Annotation) ('Mut s)) Source #

AllocateList Brand Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Brand Source #

Methods

newList :: RWCtx m s => ListAllocHint Brand -> Message ('Mut s) -> m (Raw (List Brand) ('Mut s)) Source #

AllocateList Brand'Binding Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Brand'Binding Source #

AllocateList Brand'Scope Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Brand'Scope Source #

Methods

newList :: RWCtx m s => ListAllocHint Brand'Scope -> Message ('Mut s) -> m (Raw (List Brand'Scope) ('Mut s)) Source #

AllocateList CapnpVersion Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint CapnpVersion Source #

AllocateList CodeGeneratorRequest Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

AllocateList CodeGeneratorRequest'RequestedFile Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

AllocateList CodeGeneratorRequest'RequestedFile'Import Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

AllocateList ElementSize Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint ElementSize Source #

Methods

newList :: RWCtx m s => ListAllocHint ElementSize -> Message ('Mut s) -> m (Raw (List ElementSize) ('Mut s)) Source #

AllocateList Enumerant Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Enumerant Source #

Methods

newList :: RWCtx m s => ListAllocHint Enumerant -> Message ('Mut s) -> m (Raw (List Enumerant) ('Mut s)) Source #

AllocateList Field Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Field Source #

Methods

newList :: RWCtx m s => ListAllocHint Field -> Message ('Mut s) -> m (Raw (List Field) ('Mut s)) Source #

AllocateList Field'group Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Field'group Source #

Methods

newList :: RWCtx m s => ListAllocHint Field'group -> Message ('Mut s) -> m (Raw (List Field'group) ('Mut s)) Source #

AllocateList Field'ordinal Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Field'ordinal Source #

AllocateList Field'slot Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Field'slot Source #

Methods

newList :: RWCtx m s => ListAllocHint Field'slot -> Message ('Mut s) -> m (Raw (List Field'slot) ('Mut s)) Source #

AllocateList Method Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Method Source #

Methods

newList :: RWCtx m s => ListAllocHint Method -> Message ('Mut s) -> m (Raw (List Method) ('Mut s)) Source #

AllocateList Node Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Node Source #

Methods

newList :: RWCtx m s => ListAllocHint Node -> Message ('Mut s) -> m (Raw (List Node) ('Mut s)) Source #

AllocateList Node'NestedNode Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Node'NestedNode Source #

AllocateList Node'Parameter Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Node'Parameter Source #

AllocateList Node'SourceInfo Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Node'SourceInfo Source #

AllocateList Node'SourceInfo'Member Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

AllocateList Node'annotation Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Node'annotation Source #

AllocateList Node'const Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Node'const Source #

Methods

newList :: RWCtx m s => ListAllocHint Node'const -> Message ('Mut s) -> m (Raw (List Node'const) ('Mut s)) Source #

AllocateList Node'enum Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Node'enum Source #

Methods

newList :: RWCtx m s => ListAllocHint Node'enum -> Message ('Mut s) -> m (Raw (List Node'enum) ('Mut s)) Source #

AllocateList Node'interface Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Node'interface Source #

AllocateList Node'struct Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Node'struct Source #

Methods

newList :: RWCtx m s => ListAllocHint Node'struct -> Message ('Mut s) -> m (Raw (List Node'struct) ('Mut s)) Source #

AllocateList Superclass Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Superclass Source #

Methods

newList :: RWCtx m s => ListAllocHint Superclass -> Message ('Mut s) -> m (Raw (List Superclass) ('Mut s)) Source #

AllocateList Type Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Type Source #

Methods

newList :: RWCtx m s => ListAllocHint Type -> Message ('Mut s) -> m (Raw (List Type) ('Mut s)) Source #

AllocateList Type'anyPointer Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Type'anyPointer Source #

AllocateList Type'anyPointer'implicitMethodParameter Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

AllocateList Type'anyPointer'parameter Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

AllocateList Type'anyPointer'unconstrained Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

AllocateList Type'enum Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Type'enum Source #

Methods

newList :: RWCtx m s => ListAllocHint Type'enum -> Message ('Mut s) -> m (Raw (List Type'enum) ('Mut s)) Source #

AllocateList Type'interface Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Type'interface Source #

AllocateList Type'list Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Type'list Source #

Methods

newList :: RWCtx m s => ListAllocHint Type'list -> Message ('Mut s) -> m (Raw (List Type'list) ('Mut s)) Source #

AllocateList Type'struct Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Type'struct Source #

Methods

newList :: RWCtx m s => ListAllocHint Type'struct -> Message ('Mut s) -> m (Raw (List Type'struct) ('Mut s)) Source #

AllocateList Value Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type ListAllocHint Value Source #

Methods

newList :: RWCtx m s => ListAllocHint Value -> Message ('Mut s) -> m (Raw (List Value) ('Mut s)) Source #

AllocateList StreamResult Source # 
Instance details

Defined in Capnp.Gen.Capnp.Stream

Associated Types

type ListAllocHint StreamResult Source #

AllocateList () Source # 
Instance details

Defined in Capnp.Classes

Associated Types

type ListAllocHint () Source #

Methods

newList :: RWCtx m s => ListAllocHint () -> Message ('Mut s) -> m (Raw (List ()) ('Mut s)) Source #

AllocateList Bool Source # 
Instance details

Defined in Capnp.Classes

Associated Types

type ListAllocHint Bool Source #

Methods

newList :: RWCtx m s => ListAllocHint Bool -> Message ('Mut s) -> m (Raw (List Bool) ('Mut s)) Source #

AllocateList Double Source # 
Instance details

Defined in Capnp.Classes

Associated Types

type ListAllocHint Double Source #

Methods

newList :: RWCtx m s => ListAllocHint Double -> Message ('Mut s) -> m (Raw (List Double) ('Mut s)) Source #

AllocateList Float Source # 
Instance details

Defined in Capnp.Classes

Associated Types

type ListAllocHint Float Source #

Methods

newList :: RWCtx m s => ListAllocHint Float -> Message ('Mut s) -> m (Raw (List Float) ('Mut s)) Source #

AllocateList (List a) Source # 
Instance details

Defined in Capnp.Classes

Associated Types

type ListAllocHint (List a) Source #

Methods

newList :: RWCtx m s => ListAllocHint (List a) -> Message ('Mut s) -> m (Raw (List (List a)) ('Mut s)) Source #

AllocateList (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Basics

Associated Types

type ListAllocHint (Maybe AnyPointer) Source #

Methods

newList :: RWCtx m s => ListAllocHint (Maybe AnyPointer) -> Message ('Mut s) -> m (Raw (List (Maybe AnyPointer)) ('Mut s)) Source #

(TypeParam sturdyRef, TypeParam owner) => AllocateList (Persistent'SaveParams sturdyRef owner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Associated Types

type ListAllocHint (Persistent'SaveParams sturdyRef owner) Source #

Methods

newList :: RWCtx m s => ListAllocHint (Persistent'SaveParams sturdyRef owner) -> Message ('Mut s) -> m (Raw (List (Persistent'SaveParams sturdyRef owner)) ('Mut s)) Source #

(TypeParam sturdyRef, TypeParam owner) => AllocateList (Persistent'SaveResults sturdyRef owner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Associated Types

type ListAllocHint (Persistent'SaveResults sturdyRef owner) Source #

Methods

newList :: RWCtx m s => ListAllocHint (Persistent'SaveResults sturdyRef owner) -> Message ('Mut s) -> m (Raw (List (Persistent'SaveResults sturdyRef owner)) ('Mut s)) Source #

(TypeParam internalRef, TypeParam externalRef, TypeParam internalOwner, TypeParam externalOwner) => AllocateList (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Associated Types

type ListAllocHint (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) Source #

Methods

newList :: RWCtx m s => ListAllocHint (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) -> Message ('Mut s) -> m (Raw (List (RealmGateway'export'params internalRef externalRef internalOwner externalOwner)) ('Mut s)) Source #

(TypeParam internalRef, TypeParam externalRef, TypeParam internalOwner, TypeParam externalOwner) => AllocateList (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Associated Types

type ListAllocHint (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) Source #

Methods

newList :: RWCtx m s => ListAllocHint (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) -> Message ('Mut s) -> m (Raw (List (RealmGateway'import'params internalRef externalRef internalOwner externalOwner)) ('Mut s)) Source #

class Allocate a where Source #

Types which may be allocated directly inside a message.

Minimal complete definition

Nothing

Associated Types

type AllocHint a Source #

Extra information needed to allocate a value of this type, e.g. the length for a list. May be () if no extra info is needed.

Methods

new :: RWCtx m s => AllocHint a -> Message ('Mut s) -> m (Raw a ('Mut s)) Source #

new hint msg allocates a new value of type a inside msg.

default new :: (ReprFor a ~ 'Ptr ('Just pr), Allocate pr, AllocHint a ~ AllocHint pr, RWCtx m s) => AllocHint a -> Message ('Mut s) -> m (Raw a ('Mut s)) Source #

Instances

Instances details
Allocate AnyStruct Source # 
Instance details

Defined in Capnp.Basics

Associated Types

type AllocHint AnyStruct Source #

Methods

new :: RWCtx m s => AllocHint AnyStruct -> Message ('Mut s) -> m (Raw AnyStruct ('Mut s)) Source #

Allocate Data Source # 
Instance details

Defined in Capnp.Basics

Associated Types

type AllocHint Data Source #

Methods

new :: RWCtx m s => AllocHint Data -> Message ('Mut s) -> m (Raw Data ('Mut s)) Source #

Allocate Text Source # 
Instance details

Defined in Capnp.Basics

Associated Types

type AllocHint Text Source #

Methods

new :: RWCtx m s => AllocHint Text -> Message ('Mut s) -> m (Raw Text ('Mut s)) Source #

Allocate DiscriminatorOptions Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Associated Types

type AllocHint DiscriminatorOptions Source #

Allocate FlattenOptions Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Associated Types

type AllocHint FlattenOptions Source #

Methods

new :: RWCtx m s => AllocHint FlattenOptions -> Message ('Mut s) -> m (Raw FlattenOptions ('Mut s)) Source #

Allocate Value Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Associated Types

type AllocHint Value Source #

Methods

new :: RWCtx m s => AllocHint Value -> Message ('Mut s) -> m (Raw Value ('Mut s)) Source #

Allocate Value'Call Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Associated Types

type AllocHint Value'Call Source #

Methods

new :: RWCtx m s => AllocHint Value'Call -> Message ('Mut s) -> m (Raw Value'Call ('Mut s)) Source #

Allocate Value'Field Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Associated Types

type AllocHint Value'Field Source #

Methods

new :: RWCtx m s => AllocHint Value'Field -> Message ('Mut s) -> m (Raw Value'Field ('Mut s)) Source #

Allocate Accept Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type AllocHint Accept Source #

Methods

new :: RWCtx m s => AllocHint Accept -> Message ('Mut s) -> m (Raw Accept ('Mut s)) Source #

Allocate Bootstrap Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type AllocHint Bootstrap Source #

Methods

new :: RWCtx m s => AllocHint Bootstrap -> Message ('Mut s) -> m (Raw Bootstrap ('Mut s)) Source #

Allocate Call Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type AllocHint Call Source #

Methods

new :: RWCtx m s => AllocHint Call -> Message ('Mut s) -> m (Raw Call ('Mut s)) Source #

Allocate Call'sendResultsTo Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type AllocHint Call'sendResultsTo Source #

Allocate CapDescriptor Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type AllocHint CapDescriptor Source #

Methods

new :: RWCtx m s => AllocHint CapDescriptor -> Message ('Mut s) -> m (Raw CapDescriptor ('Mut s)) Source #

Allocate Disembargo Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type AllocHint Disembargo Source #

Methods

new :: RWCtx m s => AllocHint Disembargo -> Message ('Mut s) -> m (Raw Disembargo ('Mut s)) Source #

Allocate Disembargo'context Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type AllocHint Disembargo'context Source #

Allocate Exception Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type AllocHint Exception Source #

Methods

new :: RWCtx m s => AllocHint Exception -> Message ('Mut s) -> m (Raw Exception ('Mut s)) Source #

Allocate Finish Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type AllocHint Finish Source #

Methods

new :: RWCtx m s => AllocHint Finish -> Message ('Mut s) -> m (Raw Finish ('Mut s)) Source #

Allocate Join Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type AllocHint Join Source #

Methods

new :: RWCtx m s => AllocHint Join -> Message ('Mut s) -> m (Raw Join ('Mut s)) Source #

Allocate Message Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type AllocHint Message Source #

Methods

new :: RWCtx m s => AllocHint Message -> Message0 ('Mut s) -> m (Raw Message ('Mut s)) Source #

Allocate MessageTarget Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type AllocHint MessageTarget Source #

Methods

new :: RWCtx m s => AllocHint MessageTarget -> Message ('Mut s) -> m (Raw MessageTarget ('Mut s)) Source #

Allocate Payload Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type AllocHint Payload Source #

Methods

new :: RWCtx m s => AllocHint Payload -> Message ('Mut s) -> m (Raw Payload ('Mut s)) Source #

Allocate PromisedAnswer Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type AllocHint PromisedAnswer Source #

Methods

new :: RWCtx m s => AllocHint PromisedAnswer -> Message ('Mut s) -> m (Raw PromisedAnswer ('Mut s)) Source #

Allocate PromisedAnswer'Op Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type AllocHint PromisedAnswer'Op Source #

Allocate Provide Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type AllocHint Provide Source #

Methods

new :: RWCtx m s => AllocHint Provide -> Message ('Mut s) -> m (Raw Provide ('Mut s)) Source #

Allocate Release Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type AllocHint Release Source #

Methods

new :: RWCtx m s => AllocHint Release -> Message ('Mut s) -> m (Raw Release ('Mut s)) Source #

Allocate Resolve Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type AllocHint Resolve Source #

Methods

new :: RWCtx m s => AllocHint Resolve -> Message ('Mut s) -> m (Raw Resolve ('Mut s)) Source #

Allocate Return Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

type AllocHint Return Source #

Methods

new :: RWCtx m s => AllocHint Return -> Message ('Mut s) -> m (Raw Return ('Mut s)) Source #

Allocate ThirdPartyCapDescriptor Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Allocate JoinKeyPart Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Associated Types

type AllocHint JoinKeyPart Source #

Methods

new :: RWCtx m s => AllocHint JoinKeyPart -> Message ('Mut s) -> m (Raw JoinKeyPart ('Mut s)) Source #

Allocate JoinResult Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Associated Types

type AllocHint JoinResult Source #

Methods

new :: RWCtx m s => AllocHint JoinResult -> Message ('Mut s) -> m (Raw JoinResult ('Mut s)) Source #

Allocate ProvisionId Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Associated Types

type AllocHint ProvisionId Source #

Methods

new :: RWCtx m s => AllocHint ProvisionId -> Message ('Mut s) -> m (Raw ProvisionId ('Mut s)) Source #

Allocate RecipientId Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Associated Types

type AllocHint RecipientId Source #

Methods

new :: RWCtx m s => AllocHint RecipientId -> Message ('Mut s) -> m (Raw RecipientId ('Mut s)) Source #

Allocate ThirdPartyCapId Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Associated Types

type AllocHint ThirdPartyCapId Source #

Methods

new :: RWCtx m s => AllocHint ThirdPartyCapId -> Message ('Mut s) -> m (Raw ThirdPartyCapId ('Mut s)) Source #

Allocate VatId Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Associated Types

type AllocHint VatId Source #

Methods

new :: RWCtx m s => AllocHint VatId -> Message ('Mut s) -> m (Raw VatId ('Mut s)) Source #

Allocate Annotation Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Annotation Source #

Methods

new :: RWCtx m s => AllocHint Annotation -> Message ('Mut s) -> m (Raw Annotation ('Mut s)) Source #

Allocate Brand Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Brand Source #

Methods

new :: RWCtx m s => AllocHint Brand -> Message ('Mut s) -> m (Raw Brand ('Mut s)) Source #

Allocate Brand'Binding Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Brand'Binding Source #

Methods

new :: RWCtx m s => AllocHint Brand'Binding -> Message ('Mut s) -> m (Raw Brand'Binding ('Mut s)) Source #

Allocate Brand'Scope Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Brand'Scope Source #

Methods

new :: RWCtx m s => AllocHint Brand'Scope -> Message ('Mut s) -> m (Raw Brand'Scope ('Mut s)) Source #

Allocate CapnpVersion Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint CapnpVersion Source #

Methods

new :: RWCtx m s => AllocHint CapnpVersion -> Message ('Mut s) -> m (Raw CapnpVersion ('Mut s)) Source #

Allocate CodeGeneratorRequest Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint CodeGeneratorRequest Source #

Allocate CodeGeneratorRequest'RequestedFile Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Allocate CodeGeneratorRequest'RequestedFile'Import Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Allocate Enumerant Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Enumerant Source #

Methods

new :: RWCtx m s => AllocHint Enumerant -> Message ('Mut s) -> m (Raw Enumerant ('Mut s)) Source #

Allocate Field Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Field Source #

Methods

new :: RWCtx m s => AllocHint Field -> Message ('Mut s) -> m (Raw Field ('Mut s)) Source #

Allocate Field'group Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Field'group Source #

Methods

new :: RWCtx m s => AllocHint Field'group -> Message ('Mut s) -> m (Raw Field'group ('Mut s)) Source #

Allocate Field'ordinal Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Field'ordinal Source #

Methods

new :: RWCtx m s => AllocHint Field'ordinal -> Message ('Mut s) -> m (Raw Field'ordinal ('Mut s)) Source #

Allocate Field'slot Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Field'slot Source #

Methods

new :: RWCtx m s => AllocHint Field'slot -> Message ('Mut s) -> m (Raw Field'slot ('Mut s)) Source #

Allocate Method Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Method Source #

Methods

new :: RWCtx m s => AllocHint Method -> Message ('Mut s) -> m (Raw Method ('Mut s)) Source #

Allocate Node Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Node Source #

Methods

new :: RWCtx m s => AllocHint Node -> Message ('Mut s) -> m (Raw Node ('Mut s)) Source #

Allocate Node'NestedNode Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Node'NestedNode Source #

Methods

new :: RWCtx m s => AllocHint Node'NestedNode -> Message ('Mut s) -> m (Raw Node'NestedNode ('Mut s)) Source #

Allocate Node'Parameter Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Node'Parameter Source #

Methods

new :: RWCtx m s => AllocHint Node'Parameter -> Message ('Mut s) -> m (Raw Node'Parameter ('Mut s)) Source #

Allocate Node'SourceInfo Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Node'SourceInfo Source #

Methods

new :: RWCtx m s => AllocHint Node'SourceInfo -> Message ('Mut s) -> m (Raw Node'SourceInfo ('Mut s)) Source #

Allocate Node'SourceInfo'Member Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Allocate Node'annotation Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Node'annotation Source #

Methods

new :: RWCtx m s => AllocHint Node'annotation -> Message ('Mut s) -> m (Raw Node'annotation ('Mut s)) Source #

Allocate Node'const Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Node'const Source #

Methods

new :: RWCtx m s => AllocHint Node'const -> Message ('Mut s) -> m (Raw Node'const ('Mut s)) Source #

Allocate Node'enum Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Node'enum Source #

Methods

new :: RWCtx m s => AllocHint Node'enum -> Message ('Mut s) -> m (Raw Node'enum ('Mut s)) Source #

Allocate Node'interface Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Node'interface Source #

Methods

new :: RWCtx m s => AllocHint Node'interface -> Message ('Mut s) -> m (Raw Node'interface ('Mut s)) Source #

Allocate Node'struct Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Node'struct Source #

Methods

new :: RWCtx m s => AllocHint Node'struct -> Message ('Mut s) -> m (Raw Node'struct ('Mut s)) Source #

Allocate Superclass Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Superclass Source #

Methods

new :: RWCtx m s => AllocHint Superclass -> Message ('Mut s) -> m (Raw Superclass ('Mut s)) Source #

Allocate Type Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Type Source #

Methods

new :: RWCtx m s => AllocHint Type -> Message ('Mut s) -> m (Raw Type ('Mut s)) Source #

Allocate Type'anyPointer Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Type'anyPointer Source #

Methods

new :: RWCtx m s => AllocHint Type'anyPointer -> Message ('Mut s) -> m (Raw Type'anyPointer ('Mut s)) Source #

Allocate Type'anyPointer'implicitMethodParameter Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Allocate Type'anyPointer'parameter Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Allocate Type'anyPointer'unconstrained Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Allocate Type'enum Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Type'enum Source #

Methods

new :: RWCtx m s => AllocHint Type'enum -> Message ('Mut s) -> m (Raw Type'enum ('Mut s)) Source #

Allocate Type'interface Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Type'interface Source #

Methods

new :: RWCtx m s => AllocHint Type'interface -> Message ('Mut s) -> m (Raw Type'interface ('Mut s)) Source #

Allocate Type'list Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Type'list Source #

Methods

new :: RWCtx m s => AllocHint Type'list -> Message ('Mut s) -> m (Raw Type'list ('Mut s)) Source #

Allocate Type'struct Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Type'struct Source #

Methods

new :: RWCtx m s => AllocHint Type'struct -> Message ('Mut s) -> m (Raw Type'struct ('Mut s)) Source #

Allocate Value Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

type AllocHint Value Source #

Methods

new :: RWCtx m s => AllocHint Value -> Message ('Mut s) -> m (Raw Value ('Mut s)) Source #

Allocate StreamResult Source # 
Instance details

Defined in Capnp.Gen.Capnp.Stream

Associated Types

type AllocHint StreamResult Source #

Methods

new :: RWCtx m s => AllocHint StreamResult -> Message ('Mut s) -> m (Raw StreamResult ('Mut s)) Source #

(Allocate a, HasUnion a, IsStruct (Which a)) => Allocate (Which a) Source # 
Instance details

Defined in Capnp.Fields

Associated Types

type AllocHint (Which a) Source #

Methods

new :: RWCtx m s => AllocHint (Which a) -> Message ('Mut s) -> m (Raw (Which a) ('Mut s)) Source #

AllocateList a => Allocate (List a) Source # 
Instance details

Defined in Capnp.Classes

Associated Types

type AllocHint (List a) Source #

Methods

new :: RWCtx m s => AllocHint (List a) -> Message ('Mut s) -> m (Raw (List a) ('Mut s)) Source #

(TypeParam sturdyRef, TypeParam owner) => Allocate (Persistent'SaveParams sturdyRef owner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Associated Types

type AllocHint (Persistent'SaveParams sturdyRef owner) Source #

Methods

new :: RWCtx m s => AllocHint (Persistent'SaveParams sturdyRef owner) -> Message ('Mut s) -> m (Raw (Persistent'SaveParams sturdyRef owner) ('Mut s)) Source #

(TypeParam sturdyRef, TypeParam owner) => Allocate (Persistent'SaveResults sturdyRef owner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Associated Types

type AllocHint (Persistent'SaveResults sturdyRef owner) Source #

Methods

new :: RWCtx m s => AllocHint (Persistent'SaveResults sturdyRef owner) -> Message ('Mut s) -> m (Raw (Persistent'SaveResults sturdyRef owner) ('Mut s)) Source #

(TypeParam internalRef, TypeParam externalRef, TypeParam internalOwner, TypeParam externalOwner) => Allocate (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Associated Types

type AllocHint (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) Source #

Methods

new :: RWCtx m s => AllocHint (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) -> Message ('Mut s) -> m (Raw (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) ('Mut s)) Source #

(TypeParam internalRef, TypeParam externalRef, TypeParam internalOwner, TypeParam externalOwner) => Allocate (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Associated Types

type AllocHint (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) Source #

Methods

new :: RWCtx m s => AllocHint (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) -> Message ('Mut s) -> m (Raw (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) ('Mut s)) Source #

class (Parse t p, Allocate t) => EstimateAlloc t p where Source #

Types where the necessary allocation is inferrable from the parsed form.

...this is most types.

Minimal complete definition

Nothing

Methods

estimateAlloc :: p -> AllocHint t Source #

Determine the appropriate hint needed to allocate space for the serialied form of the value.

default estimateAlloc :: AllocHint t ~ () => p -> AllocHint t Source #

Instances

Instances details
EstimateAlloc Data ByteString Source # 
Instance details

Defined in Capnp.Basics

EstimateAlloc AnyStruct (Parsed AnyStruct) Source # 
Instance details

Defined in Capnp.Basics

EstimateAlloc DiscriminatorOptions (Parsed DiscriminatorOptions) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

EstimateAlloc FlattenOptions (Parsed FlattenOptions) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

EstimateAlloc Value (Parsed Value) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

EstimateAlloc Value'Call (Parsed Value'Call) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

EstimateAlloc Value'Field (Parsed Value'Field) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

EstimateAlloc Accept (Parsed Accept) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateAlloc Bootstrap (Parsed Bootstrap) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateAlloc Call (Parsed Call) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateAlloc Call'sendResultsTo (Parsed Call'sendResultsTo) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateAlloc CapDescriptor (Parsed CapDescriptor) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateAlloc Disembargo (Parsed Disembargo) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateAlloc Disembargo'context (Parsed Disembargo'context) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateAlloc Exception (Parsed Exception) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateAlloc Finish (Parsed Finish) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateAlloc Join (Parsed Join) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateAlloc Message (Parsed Message) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateAlloc MessageTarget (Parsed MessageTarget) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateAlloc Payload (Parsed Payload) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateAlloc PromisedAnswer (Parsed PromisedAnswer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateAlloc PromisedAnswer'Op (Parsed PromisedAnswer'Op) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateAlloc Provide (Parsed Provide) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateAlloc Release (Parsed Release) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateAlloc Resolve (Parsed Resolve) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateAlloc Return (Parsed Return) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateAlloc ThirdPartyCapDescriptor (Parsed ThirdPartyCapDescriptor) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateAlloc JoinKeyPart (Parsed JoinKeyPart) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

EstimateAlloc JoinResult (Parsed JoinResult) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

EstimateAlloc ProvisionId (Parsed ProvisionId) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

EstimateAlloc RecipientId (Parsed RecipientId) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

EstimateAlloc ThirdPartyCapId (Parsed ThirdPartyCapId) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

EstimateAlloc VatId (Parsed VatId) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

EstimateAlloc Annotation (Parsed Annotation) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Brand (Parsed Brand) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Brand'Binding (Parsed Brand'Binding) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Brand'Scope (Parsed Brand'Scope) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc CapnpVersion (Parsed CapnpVersion) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc CodeGeneratorRequest (Parsed CodeGeneratorRequest) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc CodeGeneratorRequest'RequestedFile (Parsed CodeGeneratorRequest'RequestedFile) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc CodeGeneratorRequest'RequestedFile'Import (Parsed CodeGeneratorRequest'RequestedFile'Import) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Enumerant (Parsed Enumerant) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Field (Parsed Field) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Field'group (Parsed Field'group) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Field'ordinal (Parsed Field'ordinal) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Field'slot (Parsed Field'slot) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Method (Parsed Method) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Node (Parsed Node) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Node'NestedNode (Parsed Node'NestedNode) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Node'Parameter (Parsed Node'Parameter) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Node'SourceInfo (Parsed Node'SourceInfo) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Node'SourceInfo'Member (Parsed Node'SourceInfo'Member) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Node'annotation (Parsed Node'annotation) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Node'const (Parsed Node'const) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Node'enum (Parsed Node'enum) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Node'interface (Parsed Node'interface) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Node'struct (Parsed Node'struct) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Superclass (Parsed Superclass) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Type (Parsed Type) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Type'anyPointer (Parsed Type'anyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Type'anyPointer'implicitMethodParameter (Parsed Type'anyPointer'implicitMethodParameter) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Type'anyPointer'parameter (Parsed Type'anyPointer'parameter) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Type'anyPointer'unconstrained (Parsed Type'anyPointer'unconstrained) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Type'enum (Parsed Type'enum) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Type'interface (Parsed Type'interface) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Type'list (Parsed Type'list) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Type'struct (Parsed Type'struct) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc Value (Parsed Value) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

EstimateAlloc StreamResult (Parsed StreamResult) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Stream

(Allocate (Which a), AllocHint (Which a) ~ (), Parse (Which a) p) => EstimateAlloc (Which a) p Source # 
Instance details

Defined in Capnp.Fields

Methods

estimateAlloc :: p -> AllocHint (Which a) Source #

MarshalElement a ap => EstimateAlloc (List a) [ap] Source # 
Instance details

Defined in Capnp.Classes

Methods

estimateAlloc :: [ap] -> AllocHint (List a) Source #

(TypeParam sturdyRef, TypeParam owner) => EstimateAlloc (Persistent'SaveParams sturdyRef owner) (Parsed (Persistent'SaveParams sturdyRef owner)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

estimateAlloc :: Parsed (Persistent'SaveParams sturdyRef owner) -> AllocHint (Persistent'SaveParams sturdyRef owner) Source #

(TypeParam sturdyRef, TypeParam owner) => EstimateAlloc (Persistent'SaveResults sturdyRef owner) (Parsed (Persistent'SaveResults sturdyRef owner)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

estimateAlloc :: Parsed (Persistent'SaveResults sturdyRef owner) -> AllocHint (Persistent'SaveResults sturdyRef owner) Source #

(TypeParam internalRef, TypeParam externalRef, TypeParam internalOwner, TypeParam externalOwner) => EstimateAlloc (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) (Parsed (RealmGateway'export'params internalRef externalRef internalOwner externalOwner)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

estimateAlloc :: Parsed (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) -> AllocHint (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) Source #

(TypeParam internalRef, TypeParam externalRef, TypeParam internalOwner, TypeParam externalOwner) => EstimateAlloc (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) (Parsed (RealmGateway'import'params internalRef externalRef internalOwner externalOwner)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

estimateAlloc :: Parsed (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) -> AllocHint (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) Source #

class Parse t p | t -> p, p -> t where Source #

Capnp types that can be parsed into a more "natural" Haskell form.

  • t is the capnproto type.
  • p is the type of the parsed value.

Minimal complete definition

parse

Methods

parse :: ReadCtx m 'Const => Raw t 'Const -> m p Source #

Parse a value from a constant message

encode :: RWCtx m s => Message ('Mut s) -> p -> m (Raw t ('Mut s)) Source #

Encode a value into Raw form, using the message as storage.

default encode :: (RWCtx m s, EstimateAlloc t p, Marshal t p) => Message ('Mut s) -> p -> m (Raw t ('Mut s)) Source #

Instances

Instances details
Parse Int16 Int16 Source # 
Instance details

Defined in Capnp.Classes

Methods

parse :: ReadCtx m 'Const => Raw Int16 'Const -> m Int16 Source #

encode :: RWCtx m s => Message ('Mut s) -> Int16 -> m (Raw Int16 ('Mut s)) Source #

Parse Int32 Int32 Source # 
Instance details

Defined in Capnp.Classes

Methods

parse :: ReadCtx m 'Const => Raw Int32 'Const -> m Int32 Source #

encode :: RWCtx m s => Message ('Mut s) -> Int32 -> m (Raw Int32 ('Mut s)) Source #

Parse Int64 Int64 Source # 
Instance details

Defined in Capnp.Classes

Methods

parse :: ReadCtx m 'Const => Raw Int64 'Const -> m Int64 Source #

encode :: RWCtx m s => Message ('Mut s) -> Int64 -> m (Raw Int64 ('Mut s)) Source #

Parse Int8 Int8 Source # 
Instance details

Defined in Capnp.Classes

Methods

parse :: ReadCtx m 'Const => Raw Int8 'Const -> m Int8 Source #

encode :: RWCtx m s => Message ('Mut s) -> Int8 -> m (Raw Int8 ('Mut s)) Source #

Parse Word16 Word16 Source # 
Instance details

Defined in Capnp.Classes

Methods

parse :: ReadCtx m 'Const => Raw Word16 'Const -> m Word16 Source #

encode :: RWCtx m s => Message ('Mut s) -> Word16 -> m (Raw Word16 ('Mut s)) Source #

Parse Word32 Word32 Source # 
Instance details

Defined in Capnp.Classes

Methods

parse :: ReadCtx m 'Const => Raw Word32 'Const -> m Word32 Source #

encode :: RWCtx m s => Message ('Mut s) -> Word32 -> m (Raw Word32 ('Mut s)) Source #

Parse Word64 Word64 Source # 
Instance details

Defined in Capnp.Classes

Methods

parse :: ReadCtx m 'Const => Raw Word64 'Const -> m Word64 Source #

encode :: RWCtx m s => Message ('Mut s) -> Word64 -> m (Raw Word64 ('Mut s)) Source #

Parse Word8 Word8 Source # 
Instance details

Defined in Capnp.Classes

Methods

parse :: ReadCtx m 'Const => Raw Word8 'Const -> m Word8 Source #

encode :: RWCtx m s => Message ('Mut s) -> Word8 -> m (Raw Word8 ('Mut s)) Source #

Parse Capability Client Source # 
Instance details

Defined in Capnp.Basics

Methods

parse :: ReadCtx m 'Const => Raw Capability 'Const -> m Client Source #

encode :: RWCtx m s => Message ('Mut s) -> Client -> m (Raw Capability ('Mut s)) Source #

Parse Data ByteString Source # 
Instance details

Defined in Capnp.Basics

Methods

parse :: ReadCtx m 'Const => Raw Data 'Const -> m ByteString Source #

encode :: RWCtx m s => Message ('Mut s) -> ByteString -> m (Raw Data ('Mut s)) Source #

Parse Text Text Source # 
Instance details

Defined in Capnp.Basics

Methods

parse :: ReadCtx m 'Const => Raw Text 'Const -> m Text0 Source #

encode :: RWCtx m s => Message ('Mut s) -> Text0 -> m (Raw Text ('Mut s)) Source #

Parse Exception'Type Exception'Type Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Parse Side Side Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Methods

parse :: ReadCtx m 'Const => Raw Side 'Const -> m Side Source #

encode :: RWCtx m s => Message ('Mut s) -> Side -> m (Raw Side ('Mut s)) Source #

Parse ElementSize ElementSize Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse () () Source # 
Instance details

Defined in Capnp.Classes

Methods

parse :: ReadCtx m 'Const => Raw () 'Const -> m () Source #

encode :: RWCtx m s => Message ('Mut s) -> () -> m (Raw () ('Mut s)) Source #

Parse Bool Bool Source # 
Instance details

Defined in Capnp.Classes

Methods

parse :: ReadCtx m 'Const => Raw Bool 'Const -> m Bool Source #

encode :: RWCtx m s => Message ('Mut s) -> Bool -> m (Raw Bool ('Mut s)) Source #

Parse Double Double Source # 
Instance details

Defined in Capnp.Classes

Methods

parse :: ReadCtx m 'Const => Raw Double 'Const -> m Double Source #

encode :: RWCtx m s => Message ('Mut s) -> Double -> m (Raw Double ('Mut s)) Source #

Parse Float Float Source # 
Instance details

Defined in Capnp.Classes

Methods

parse :: ReadCtx m 'Const => Raw Float 'Const -> m Float Source #

encode :: RWCtx m s => Message ('Mut s) -> Float -> m (Raw Float ('Mut s)) Source #

Parse AnyList (Parsed AnyList) Source # 
Instance details

Defined in Capnp.Basics

Methods

parse :: ReadCtx m 'Const => Raw AnyList 'Const -> m (Parsed AnyList) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed AnyList -> m (Raw AnyList ('Mut s)) Source #

Parse AnyPointer (Parsed AnyPointer) Source # 
Instance details

Defined in Capnp.Basics

Parse AnyStruct (Parsed AnyStruct) Source # 
Instance details

Defined in Capnp.Basics

Parse DiscriminatorOptions (Parsed DiscriminatorOptions) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Parse FlattenOptions (Parsed FlattenOptions) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Parse Value (Parsed Value) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Methods

parse :: ReadCtx m 'Const => Raw Value 'Const -> m (Parsed Value) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed Value -> m (Raw Value ('Mut s)) Source #

Parse Value'Call (Parsed Value'Call) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Parse Value'Field (Parsed Value'Field) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Parse Accept (Parsed Accept) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

parse :: ReadCtx m 'Const => Raw Accept 'Const -> m (Parsed Accept) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed Accept -> m (Raw Accept ('Mut s)) Source #

Parse Bootstrap (Parsed Bootstrap) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Parse Call (Parsed Call) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

parse :: ReadCtx m 'Const => Raw Call 'Const -> m (Parsed Call) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed Call -> m (Raw Call ('Mut s)) Source #

Parse Call'sendResultsTo (Parsed Call'sendResultsTo) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Parse CapDescriptor (Parsed CapDescriptor) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Parse Disembargo (Parsed Disembargo) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Parse Disembargo'context (Parsed Disembargo'context) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Parse Exception (Parsed Exception) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Parse Finish (Parsed Finish) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

parse :: ReadCtx m 'Const => Raw Finish 'Const -> m (Parsed Finish) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed Finish -> m (Raw Finish ('Mut s)) Source #

Parse Join (Parsed Join) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

parse :: ReadCtx m 'Const => Raw Join 'Const -> m (Parsed Join) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed Join -> m (Raw Join ('Mut s)) Source #

Parse Message (Parsed Message) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

parse :: ReadCtx m 'Const => Raw Message 'Const -> m (Parsed Message) Source #

encode :: RWCtx m s => Message0 ('Mut s) -> Parsed Message -> m (Raw Message ('Mut s)) Source #

Parse MessageTarget (Parsed MessageTarget) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Parse Payload (Parsed Payload) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

parse :: ReadCtx m 'Const => Raw Payload 'Const -> m (Parsed Payload) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed Payload -> m (Raw Payload ('Mut s)) Source #

Parse PromisedAnswer (Parsed PromisedAnswer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Parse PromisedAnswer'Op (Parsed PromisedAnswer'Op) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Parse Provide (Parsed Provide) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

parse :: ReadCtx m 'Const => Raw Provide 'Const -> m (Parsed Provide) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed Provide -> m (Raw Provide ('Mut s)) Source #

Parse Release (Parsed Release) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

parse :: ReadCtx m 'Const => Raw Release 'Const -> m (Parsed Release) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed Release -> m (Raw Release ('Mut s)) Source #

Parse Resolve (Parsed Resolve) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

parse :: ReadCtx m 'Const => Raw Resolve 'Const -> m (Parsed Resolve) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed Resolve -> m (Raw Resolve ('Mut s)) Source #

Parse Return (Parsed Return) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

parse :: ReadCtx m 'Const => Raw Return 'Const -> m (Parsed Return) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed Return -> m (Raw Return ('Mut s)) Source #

Parse ThirdPartyCapDescriptor (Parsed ThirdPartyCapDescriptor) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Parse JoinKeyPart (Parsed JoinKeyPart) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Parse JoinResult (Parsed JoinResult) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Parse ProvisionId (Parsed ProvisionId) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Parse RecipientId (Parsed RecipientId) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Parse ThirdPartyCapId (Parsed ThirdPartyCapId) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Parse VatId (Parsed VatId) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

Methods

parse :: ReadCtx m 'Const => Raw VatId 'Const -> m (Parsed VatId) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed VatId -> m (Raw VatId ('Mut s)) Source #

Parse Annotation (Parsed Annotation) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse Brand (Parsed Brand) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

parse :: ReadCtx m 'Const => Raw Brand 'Const -> m (Parsed Brand) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed Brand -> m (Raw Brand ('Mut s)) Source #

Parse Brand'Binding (Parsed Brand'Binding) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse Brand'Scope (Parsed Brand'Scope) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse CapnpVersion (Parsed CapnpVersion) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse CodeGeneratorRequest (Parsed CodeGeneratorRequest) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse CodeGeneratorRequest'RequestedFile (Parsed CodeGeneratorRequest'RequestedFile) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse CodeGeneratorRequest'RequestedFile'Import (Parsed CodeGeneratorRequest'RequestedFile'Import) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse Enumerant (Parsed Enumerant) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse Field (Parsed Field) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

parse :: ReadCtx m 'Const => Raw Field 'Const -> m (Parsed Field) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed Field -> m (Raw Field ('Mut s)) Source #

Parse Field'group (Parsed Field'group) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse Field'ordinal (Parsed Field'ordinal) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse Field'slot (Parsed Field'slot) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse Method (Parsed Method) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

parse :: ReadCtx m 'Const => Raw Method 'Const -> m (Parsed Method) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed Method -> m (Raw Method ('Mut s)) Source #

Parse Node (Parsed Node) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

parse :: ReadCtx m 'Const => Raw Node 'Const -> m (Parsed Node) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed Node -> m (Raw Node ('Mut s)) Source #

Parse Node'NestedNode (Parsed Node'NestedNode) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse Node'Parameter (Parsed Node'Parameter) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse Node'SourceInfo (Parsed Node'SourceInfo) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse Node'SourceInfo'Member (Parsed Node'SourceInfo'Member) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse Node'annotation (Parsed Node'annotation) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse Node'const (Parsed Node'const) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse Node'enum (Parsed Node'enum) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse Node'interface (Parsed Node'interface) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse Node'struct (Parsed Node'struct) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse Superclass (Parsed Superclass) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse Type (Parsed Type) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

parse :: ReadCtx m 'Const => Raw Type 'Const -> m (Parsed Type) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed Type -> m (Raw Type ('Mut s)) Source #

Parse Type'anyPointer (Parsed Type'anyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse Type'anyPointer'implicitMethodParameter (Parsed Type'anyPointer'implicitMethodParameter) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse Type'anyPointer'parameter (Parsed Type'anyPointer'parameter) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse Type'anyPointer'unconstrained (Parsed Type'anyPointer'unconstrained) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse Type'enum (Parsed Type'enum) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse Type'interface (Parsed Type'interface) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse Type'list (Parsed Type'list) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse Type'struct (Parsed Type'struct) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse Value (Parsed Value) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

parse :: ReadCtx m 'Const => Raw Value 'Const -> m (Parsed Value) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed Value -> m (Raw Value ('Mut s)) Source #

Parse StreamResult (Parsed StreamResult) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Stream

Parse (Which Value) (Parsed (Which Value)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Methods

parse :: ReadCtx m 'Const => Raw (Which Value) 'Const -> m (Parsed (Which Value)) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed (Which Value) -> m (Raw (Which Value) ('Mut s)) Source #

Parse (Which Call'sendResultsTo) (Parsed (Which Call'sendResultsTo)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Parse (Which CapDescriptor) (Parsed (Which CapDescriptor)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Parse (Which Disembargo'context) (Parsed (Which Disembargo'context)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Parse (Which Message) (Parsed (Which Message)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

parse :: ReadCtx m 'Const => Raw (Which Message) 'Const -> m (Parsed (Which Message)) Source #

encode :: RWCtx m s => Message0 ('Mut s) -> Parsed (Which Message) -> m (Raw (Which Message) ('Mut s)) Source #

Parse (Which MessageTarget) (Parsed (Which MessageTarget)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Parse (Which PromisedAnswer'Op) (Parsed (Which PromisedAnswer'Op)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Parse (Which Resolve) (Parsed (Which Resolve)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

parse :: ReadCtx m 'Const => Raw (Which Resolve) 'Const -> m (Parsed (Which Resolve)) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed (Which Resolve) -> m (Raw (Which Resolve) ('Mut s)) Source #

Parse (Which Return) (Parsed (Which Return)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Methods

parse :: ReadCtx m 'Const => Raw (Which Return) 'Const -> m (Parsed (Which Return)) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed (Which Return) -> m (Raw (Which Return) ('Mut s)) Source #

Parse (Which Brand'Binding) (Parsed (Which Brand'Binding)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse (Which Brand'Scope) (Parsed (Which Brand'Scope)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse (Which Field) (Parsed (Which Field)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

parse :: ReadCtx m 'Const => Raw (Which Field) 'Const -> m (Parsed (Which Field)) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed (Which Field) -> m (Raw (Which Field) ('Mut s)) Source #

Parse (Which Field'ordinal) (Parsed (Which Field'ordinal)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse (Which Node) (Parsed (Which Node)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

parse :: ReadCtx m 'Const => Raw (Which Node) 'Const -> m (Parsed (Which Node)) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed (Which Node) -> m (Raw (Which Node) ('Mut s)) Source #

Parse (Which Type) (Parsed (Which Type)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

parse :: ReadCtx m 'Const => Raw (Which Type) 'Const -> m (Parsed (Which Type)) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed (Which Type) -> m (Raw (Which Type) ('Mut s)) Source #

Parse (Which Type'anyPointer) (Parsed (Which Type'anyPointer)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse (Which Type'anyPointer'unconstrained) (Parsed (Which Type'anyPointer'unconstrained)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Parse (Which Value) (Parsed (Which Value)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Methods

parse :: ReadCtx m 'Const => Raw (Which Value) 'Const -> m (Parsed (Which Value)) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed (Which Value) -> m (Raw (Which Value) ('Mut s)) Source #

MarshalElement a ap => Parse (List a) [ap] Source # 
Instance details

Defined in Capnp.Classes

Methods

parse :: ReadCtx m 'Const => Raw (List a) 'Const -> m [ap] Source #

encode :: RWCtx m s => Message ('Mut s) -> [ap] -> m (Raw (List a) ('Mut s)) Source #

Parse (Maybe AnyPointer) (Maybe (Parsed AnyPointer)) Source # 
Instance details

Defined in Capnp.Basics

(TypeParam sturdyRef, TypeParam owner) => Parse (Persistent sturdyRef owner) (Client (Persistent sturdyRef owner)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

parse :: ReadCtx m 'Const => Raw (Persistent sturdyRef owner) 'Const -> m (Client (Persistent sturdyRef owner)) Source #

encode :: RWCtx m s => Message ('Mut s) -> Client (Persistent sturdyRef owner) -> m (Raw (Persistent sturdyRef owner) ('Mut s)) Source #

(TypeParam sturdyRef, TypeParam owner) => Parse (Persistent'SaveParams sturdyRef owner) (Parsed (Persistent'SaveParams sturdyRef owner)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

parse :: ReadCtx m 'Const => Raw (Persistent'SaveParams sturdyRef owner) 'Const -> m (Parsed (Persistent'SaveParams sturdyRef owner)) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed (Persistent'SaveParams sturdyRef owner) -> m (Raw (Persistent'SaveParams sturdyRef owner) ('Mut s)) Source #

(TypeParam sturdyRef, TypeParam owner) => Parse (Persistent'SaveResults sturdyRef owner) (Parsed (Persistent'SaveResults sturdyRef owner)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

parse :: ReadCtx m 'Const => Raw (Persistent'SaveResults sturdyRef owner) 'Const -> m (Parsed (Persistent'SaveResults sturdyRef owner)) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed (Persistent'SaveResults sturdyRef owner) -> m (Raw (Persistent'SaveResults sturdyRef owner) ('Mut s)) Source #

(TypeParam internalRef, TypeParam externalRef, TypeParam internalOwner, TypeParam externalOwner) => Parse (RealmGateway internalRef externalRef internalOwner externalOwner) (Client (RealmGateway internalRef externalRef internalOwner externalOwner)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

parse :: ReadCtx m 'Const => Raw (RealmGateway internalRef externalRef internalOwner externalOwner) 'Const -> m (Client (RealmGateway internalRef externalRef internalOwner externalOwner)) Source #

encode :: RWCtx m s => Message ('Mut s) -> Client (RealmGateway internalRef externalRef internalOwner externalOwner) -> m (Raw (RealmGateway internalRef externalRef internalOwner externalOwner) ('Mut s)) Source #

(TypeParam internalRef, TypeParam externalRef, TypeParam internalOwner, TypeParam externalOwner) => Parse (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) (Parsed (RealmGateway'export'params internalRef externalRef internalOwner externalOwner)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

parse :: ReadCtx m 'Const => Raw (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) 'Const -> m (Parsed (RealmGateway'export'params internalRef externalRef internalOwner externalOwner)) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) -> m (Raw (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) ('Mut s)) Source #

(TypeParam internalRef, TypeParam externalRef, TypeParam internalOwner, TypeParam externalOwner) => Parse (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) (Parsed (RealmGateway'import'params internalRef externalRef internalOwner externalOwner)) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

parse :: ReadCtx m 'Const => Raw (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) 'Const -> m (Parsed (RealmGateway'import'params internalRef externalRef internalOwner externalOwner)) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) -> m (Raw (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) ('Mut s)) Source #

newFromRepr :: forall a r m s. (Allocate r, 'Ptr ('Just r) ~ ReprFor a, RWCtx m s) => AllocHint r -> Message ('Mut s) -> m (Raw a ('Mut s)) Source #

Implementation of new valid for types whose AllocHint is the same as that of their underlying representation.

newTypedStruct :: forall a m s. (TypedStruct a, RWCtx m s) => Message ('Mut s) -> m (Raw a ('Mut s)) Source #

Allocate a new typed struct. Mainly used as the value for new for in generated instances of Allocate.

newTypedStructList :: forall a m s. (TypedStruct a, RWCtx m s) => Int -> Message ('Mut s) -> m (Raw (List a) ('Mut s)) Source #

Like newTypedStruct, but for lists.

structSizes :: forall a. TypedStruct a => (Word16, Word16) Source #

Get the maximum word and pointer counts needed for a struct type's fields.

newRoot :: forall a m s. (RWCtx m s, IsStruct a, Allocate a) => AllocHint a -> Message ('Mut s) -> m (Raw a ('Mut s)) Source #

Like new, but also sets the value as the root of the message.

setRoot :: (RWCtx m s, IsStruct a) => Raw a ('Mut s) -> m () Source #

Sets the struct to be the root of its containing message.

class IsWord a where Source #

Types that can be converted to and from a 64-bit word.

Anything that goes in the data section of a struct will have an instance of this.

Methods

fromWord :: Word64 -> a Source #

Convert from a 64-bit words Truncates the word if the type has less than 64 bits.

toWord :: a -> Word64 Source #

Convert to a 64-bit word.

Instances

Instances details
IsWord Int16 Source # 
Instance details

Defined in Capnp.Classes

IsWord Int32 Source # 
Instance details

Defined in Capnp.Classes

IsWord Int64 Source # 
Instance details

Defined in Capnp.Classes

IsWord Int8 Source # 
Instance details

Defined in Capnp.Classes

IsWord Word16 Source # 
Instance details

Defined in Capnp.Classes

IsWord Word32 Source # 
Instance details

Defined in Capnp.Classes

IsWord Word64 Source # 
Instance details

Defined in Capnp.Classes

IsWord Word8 Source # 
Instance details

Defined in Capnp.Classes

IsWord Word1 Source # 
Instance details

Defined in Capnp.Classes

IsWord Exception'Type Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

IsWord Side Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

IsWord ElementSize Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

IsWord Bool Source # 
Instance details

Defined in Capnp.Classes

IsWord Double Source # 
Instance details

Defined in Capnp.Classes

IsWord Float Source # 
Instance details

Defined in Capnp.Classes

msgToBuilder :: Message 'Const -> Builder Source #

Convert an immutable message to a bytestring Builder. To convert a mutable message, freeze it first.

msgToLBS :: Message 'Const -> ByteString Source #

Convert an immutable message to a lazy ByteString. To convert a mutable message, freeze it first.

msgToBS :: Message 'Const -> ByteString Source #

Convert an immutable message to a strict ByteString. To convert a mutable message, freeze it first.

bsToMsg :: MonadThrow m => ByteString -> m (Message 'Const) Source #

Convert a strict ByteString to a message.

lbsToMsg :: MonadThrow m => ByteString -> m (Message 'Const) Source #

Convert a lazy ByteString to a message.

msgToRaw :: forall a m mut. (ReadCtx m mut, IsStruct a) => Message mut -> m (Raw a mut) Source #

Get the root pointer of a message, wrapped as a Raw.

msgToParsed :: forall a m pa. (ReadCtx m 'Const, IsStruct a, Parse a pa) => Message 'Const -> m pa Source #

Get the root pointer of a message, as a parsed ADT.

bsToRaw :: forall a m. (ReadCtx m 'Const, IsStruct a) => ByteString -> m (Raw a 'Const) Source #

Like msgToRaw, but takes a (strict) bytestring.

bsToParsed :: forall a pa m. (ReadCtx m 'Const, IsStruct a, Parse a pa) => ByteString -> m pa Source #

Like msgToParsed, but takes a (strict) bytestring.

lbsToRaw :: forall a m. (ReadCtx m 'Const, IsStruct a) => ByteString -> m (Raw a 'Const) Source #

Like msgToRaw, but takes a (lazy) bytestring.

lbsToParsed :: forall a pa m. (ReadCtx m 'Const, IsStruct a, Parse a pa) => ByteString -> m pa Source #

Like msgToParsed, but takes a (lazzy) bytestring.

parsedToRaw :: forall a m pa s. (RWCtx m s, IsStruct a, Parse a pa) => pa -> m (Raw a ('Mut s)) Source #

Serialize the parsed form of a struct into its Raw form, and make it the root of its message.

parsedToMsg :: forall a m pa s. (RWCtx m s, IsStruct a, Parse a pa) => pa -> m (Message ('Mut s)) Source #

Serialize the parsed form of a struct into a message with that value as its root, returning the message.

parsedToBuilder :: forall a m pa s. (RWCtx m s, IsStruct a, Parse a pa) => pa -> m Builder Source #

Serialize the parsed form of a struct and return it as a Builder

parsedToLBS :: forall a m pa s. (RWCtx m s, IsStruct a, Parse a pa) => pa -> m ByteString Source #

Serialize the parsed form of a struct and return it as a lazy ByteString

parsedToBS :: forall a m pa s. (RWCtx m s, IsStruct a, Parse a pa) => pa -> m ByteString Source #

Serialize the parsed form of a struct and return it as a strict ByteString

sGetMsg :: Socket -> WordCount -> IO (Message 'Const) Source #

Like hGetMsg, except that it takes a socket instead of a Handle.

sPutMsg :: Socket -> Message 'Const -> IO () Source #

Like hPutMsg, except that it takes a Socket instead of a Handle.

hGetParsed :: forall a pa. (IsStruct a, Parse a pa) => Handle -> WordCount -> IO pa Source #

Read a struct from the handle in its parsed form, using the supplied read limit.

sGetParsed :: forall a pa. (IsStruct a, Parse a pa) => Socket -> WordCount -> IO pa Source #

Read a struct from the socket in its parsed form, using the supplied read limit.

getParsed :: (IsStruct a, Parse a pa) => WordCount -> IO pa Source #

Read a struct from stdin in its parsed form, using the supplied read limit.

hPutParsed :: (IsStruct a, Parse a pa) => Handle -> pa -> IO () Source #

Write the parsed form of a struct to the handle

putParsed :: (IsStruct a, Parse a pa) => pa -> IO () Source #

Write the parsed form of a struct to stdout

sPutParsed :: (IsStruct a, Parse a pa) => Socket -> pa -> IO () Source #

Write the parsed form of a struct to the socket.

hGetRaw :: IsStruct a => Handle -> WordCount -> IO (Raw a 'Const) Source #

Read a struct from the handle using the supplied read limit, and return its root pointer.

getRaw :: IsStruct a => WordCount -> IO (Raw a 'Const) Source #

Read a struct from stdin using the supplied read limit, and return its root pointer.

sGetRaw :: IsStruct a => Socket -> WordCount -> IO (Raw a 'Const) Source #

Read a struct from the socket using the supplied read limit, and return its root pointer.

data Capability Source #

A Cap'n Proto capability with unknown interfaces.

Instances

Instances details
Parse Capability Client Source # 
Instance details

Defined in Capnp.Basics

Methods

parse :: ReadCtx m 'Const => Raw Capability 'Const -> m Client Source #

encode :: RWCtx m s => Message ('Mut s) -> Client -> m (Raw Capability ('Mut s)) Source #

type ReprFor Capability Source # 
Instance details

Defined in Capnp.Basics

data AnyStruct Source #

A Cap'n Proto struct of unknown type.

Instances

Instances details
Allocate AnyStruct Source # 
Instance details

Defined in Capnp.Basics

Associated Types

type AllocHint AnyStruct Source #

Methods

new :: RWCtx m s => AllocHint AnyStruct -> Message ('Mut s) -> m (Raw AnyStruct ('Mut s)) Source #

AllocateList AnyStruct Source # 
Instance details

Defined in Capnp.Basics

Associated Types

type ListAllocHint AnyStruct Source #

Methods

newList :: RWCtx m s => ListAllocHint AnyStruct -> Message ('Mut s) -> m (Raw (List AnyStruct) ('Mut s)) Source #

EstimateAlloc AnyStruct (Parsed AnyStruct) Source # 
Instance details

Defined in Capnp.Basics

EstimateListAlloc AnyStruct (Parsed AnyStruct) Source # 
Instance details

Defined in Capnp.Basics

Marshal AnyStruct (Parsed AnyStruct) Source # 
Instance details

Defined in Capnp.Basics

Methods

marshalInto :: RWCtx m s => Raw AnyStruct ('Mut s) -> Parsed AnyStruct -> m () Source #

Parse AnyStruct (Parsed AnyStruct) Source # 
Instance details

Defined in Capnp.Basics

Generic (Parsed AnyStruct) Source # 
Instance details

Defined in Capnp.Basics

Associated Types

type Rep (Parsed AnyStruct) :: Type -> Type #

Show (Parsed AnyStruct) Source # 
Instance details

Defined in Capnp.Basics

Eq (Parsed AnyStruct) Source # 
Instance details

Defined in Capnp.Basics

type AllocHint AnyStruct Source # 
Instance details

Defined in Capnp.Basics

type ListAllocHint AnyStruct Source # 
Instance details

Defined in Capnp.Basics

data Parsed AnyStruct Source # 
Instance details

Defined in Capnp.Basics

type ReprFor AnyStruct Source # 
Instance details

Defined in Capnp.Basics

type Rep (Parsed AnyStruct) Source # 
Instance details

Defined in Capnp.Basics

type Rep (Parsed AnyStruct) = D1 ('MetaData "Parsed" "Capnp.Basics" "capnp-0.18.0.0-BuIeeeNc5XZ6X0DqYkb3GI" 'False) (C1 ('MetaCons "Struct" 'PrefixI 'True) (S1 ('MetaSel ('Just "structData") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Vector Word64)) :*: S1 ('MetaSel ('Just "structPtrs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Vector (Maybe (Parsed AnyPointer))))))

data AnyList Source #

A Cap'n Proto List with unknown element type.

Instances

Instances details
Parse AnyList (Parsed AnyList) Source # 
Instance details

Defined in Capnp.Basics

Methods

parse :: ReadCtx m 'Const => Raw AnyList 'Const -> m (Parsed AnyList) Source #

encode :: RWCtx m s => Message ('Mut s) -> Parsed AnyList -> m (Raw AnyList ('Mut s)) Source #

Generic (Parsed AnyList) Source # 
Instance details

Defined in Capnp.Basics

Associated Types

type Rep (Parsed AnyList) :: Type -> Type #

Show (Parsed AnyList) Source # 
Instance details

Defined in Capnp.Basics

Eq (Parsed AnyList) Source # 
Instance details

Defined in Capnp.Basics

data Parsed AnyList Source # 
Instance details

Defined in Capnp.Basics

type ReprFor AnyList Source # 
Instance details

Defined in Capnp.Basics

type Rep (Parsed AnyList) Source # 
Instance details

Defined in Capnp.Basics

data AnyPointer Source #

A Cap'n Proto AnyPointer, i.e. an arbitrary pointer with unknown schema.

Instances

Instances details
AllocateList AnyPointer Source # 
Instance details

Defined in Capnp.Basics

Associated Types

type ListAllocHint AnyPointer Source #

Methods

newList :: RWCtx m s => ListAllocHint AnyPointer -> Message ('Mut s) -> m (Raw (List AnyPointer) ('Mut s)) Source #

HasField "cap" 'Slot JoinResult (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

HasField "content" 'Slot Payload (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "deprecatedObjectId" 'Slot Bootstrap (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "id" 'Slot ThirdPartyCapDescriptor (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "keyPart" 'Slot Join (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "provision" 'Slot Accept (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "recipient" 'Slot Provide (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "acceptFromThirdParty" 'Slot Return (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "anyPointer" 'Slot Value (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "list" 'Slot Value (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "obsoleteDelete" 'Slot Message (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "obsoleteSave" 'Slot Message (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "struct" 'Slot Value (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "thirdParty" 'Slot Call'sendResultsTo (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

EstimateListAlloc AnyPointer (Parsed AnyPointer) Source # 
Instance details

Defined in Capnp.Basics

Parse AnyPointer (Parsed AnyPointer) Source # 
Instance details

Defined in Capnp.Basics

Generic (Parsed AnyPointer) Source # 
Instance details

Defined in Capnp.Basics

Associated Types

type Rep (Parsed AnyPointer) :: Type -> Type #

Show (Parsed AnyPointer) Source # 
Instance details

Defined in Capnp.Basics

AllocateList (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Basics

Associated Types

type ListAllocHint (Maybe AnyPointer) Source #

Methods

newList :: RWCtx m s => ListAllocHint (Maybe AnyPointer) -> Message ('Mut s) -> m (Raw (List (Maybe AnyPointer)) ('Mut s)) Source #

Eq (Parsed AnyPointer) Source # 
Instance details

Defined in Capnp.Basics

EstimateListAlloc (Maybe AnyPointer) (Maybe (Parsed AnyPointer)) Source # 
Instance details

Defined in Capnp.Basics

Parse (Maybe AnyPointer) (Maybe (Parsed AnyPointer)) Source # 
Instance details

Defined in Capnp.Basics

type ListAllocHint AnyPointer Source # 
Instance details

Defined in Capnp.Basics

data Parsed AnyPointer Source # 
Instance details

Defined in Capnp.Basics

type ReprFor AnyPointer Source # 
Instance details

Defined in Capnp.Basics

type Rep (Parsed AnyPointer) Source # 
Instance details

Defined in Capnp.Basics

type ListAllocHint (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Basics

type ReprFor (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Basics

data Data Source #

The Cap'n Proto Data type.

Instances

Instances details
Allocate Data Source # 
Instance details

Defined in Capnp.Basics

Associated Types

type AllocHint Data Source #

Methods

new :: RWCtx m s => AllocHint Data -> Message ('Mut s) -> m (Raw Data ('Mut s)) Source #

AllocateList Data Source # 
Instance details

Defined in Capnp.Basics

Associated Types

type ListAllocHint Data Source #

Methods

newList :: RWCtx m s => ListAllocHint Data -> Message ('Mut s) -> m (Raw (List Data) ('Mut s)) Source #

EstimateAlloc Data ByteString Source # 
Instance details

Defined in Capnp.Basics

EstimateListAlloc Data ByteString Source # 
Instance details

Defined in Capnp.Basics

Marshal Data ByteString Source # 
Instance details

Defined in Capnp.Basics

Methods

marshalInto :: RWCtx m s => Raw Data ('Mut s) -> ByteString -> m () Source #

Parse Data ByteString Source # 
Instance details

Defined in Capnp.Basics

Methods

parse :: ReadCtx m 'Const => Raw Data 'Const -> m ByteString Source #

encode :: RWCtx m s => Message ('Mut s) -> ByteString -> m (Raw Data ('Mut s)) Source #

HasVariant "data_" 'Slot Value Data Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

type AllocHint Data Source # 
Instance details

Defined in Capnp.Basics

type ListAllocHint Data Source # 
Instance details

Defined in Capnp.Basics

type ReprFor Data Source # 
Instance details

Defined in Capnp.Basics

data Text Source #

The Cap'n Proto Text type.

Instances

Instances details
Allocate Text Source # 
Instance details

Defined in Capnp.Basics

Associated Types

type AllocHint Text Source #

Methods

new :: RWCtx m s => AllocHint Text -> Message ('Mut s) -> m (Raw Text ('Mut s)) Source #

AllocateList Text Source # 
Instance details

Defined in Capnp.Basics

Associated Types

type ListAllocHint Text Source #

Methods

newList :: RWCtx m s => ListAllocHint Text -> Message ('Mut s) -> m (Raw (List Text) ('Mut s)) Source #

EstimateListAlloc Text Text Source # 
Instance details

Defined in Capnp.Basics

Parse Text Text Source # 
Instance details

Defined in Capnp.Basics

Methods

parse :: ReadCtx m 'Const => Raw Text 'Const -> m Text0 Source #

encode :: RWCtx m s => Message ('Mut s) -> Text0 -> m (Raw Text ('Mut s)) Source #

HasField "displayName" 'Slot Node Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "docComment" 'Slot Node'SourceInfo Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "docComment" 'Slot Node'SourceInfo'Member Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "filename" 'Slot CodeGeneratorRequest'RequestedFile Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "function" 'Slot Value'Call Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

HasField "name" 'Slot DiscriminatorOptions Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

HasField "name" 'Slot Value'Field Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

HasField "name" 'Slot CodeGeneratorRequest'RequestedFile'Import Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "name" 'Slot Enumerant Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "name" 'Slot Field Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "name" 'Slot Method Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "name" 'Slot Node'NestedNode Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "name" 'Slot Node'Parameter Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "prefix" 'Slot FlattenOptions Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

HasField "reason" 'Slot Exception Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "valueName" 'Slot DiscriminatorOptions Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

HasVariant "string" 'Slot Value Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

HasVariant "text" 'Slot Value Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

type AllocHint Text Source # 
Instance details

Defined in Capnp.Basics

type ListAllocHint Text Source # 
Instance details

Defined in Capnp.Basics

type ReprFor Text Source # 
Instance details

Defined in Capnp.Basics

textBuffer :: MonadThrow m => Raw Text mut -> m (Raw Data mut) Source #

Return the underlying buffer containing the text. This does not include the null terminator.

textBytes :: ReadCtx m 'Const => Raw Text 'Const -> m ByteString Source #

Convert a Text to a ByteString, comprising the raw bytes of the text (not counting the NUL terminator).

type TypeParam a = (IsPtr a, Parse a (Parsed a)) Source #

Constraints needed for a to be a capnproto type parameter.

readField :: forall k a b mut m. (IsStruct a, ReadCtx m mut) => Field k a b -> Raw a mut -> m (Raw b mut) Source #

Read the value of a field of a struct.

hasField :: (ReadCtx m mut, IsStruct a, IsPtr b) => Field 'Slot a b -> Raw a mut -> m Bool Source #

Return whether the specified field is present. Only applicable for pointer fields.

getField :: (IsStruct a, ReprFor b ~ 'Data sz, Parse b bp) => Field 'Slot a b -> Raw a 'Const -> bp Source #

Like readField, but:

  • Doesn't need the monadic context; can be used in pure code.
  • Only works for immutable values.
  • Only works for fields in the struct's data section.

setField :: forall a b m s. (IsStruct a, RWCtx m s) => Field 'Slot a b -> Raw b ('Mut s) -> Raw a ('Mut s) -> m () Source #

Set a struct field to a value. Not usable for group fields.

newField :: forall a b m s. (IsStruct a, Allocate b, RWCtx m s) => Field 'Slot a b -> AllocHint b -> Raw a ('Mut s) -> m (Raw b ('Mut s)) Source #

Allocate space for the value of a field, and return it.

encodeField :: forall a b m s bp. (IsStruct a, Parse b bp, RWCtx m s) => Field 'Slot a b -> bp -> Raw a ('Mut s) -> m () Source #

Marshal a parsed value into a struct's field.

parseField :: (IsStruct a, Parse b bp, ReadCtx m 'Const) => Field k a b -> Raw a 'Const -> m bp Source #

parse a struct's field and return its parsed form.

setVariant :: forall a b m s. (HasUnion a, RWCtx m s) => Variant 'Slot a b -> Raw a ('Mut s) -> Raw b ('Mut s) -> m () Source #

Set the struct's anonymous union to the given variant, with the supplied value as its argument. Not applicable for variants whose argument is a group; use initVariant instead.

encodeVariant :: forall a b m s bp. (HasUnion a, Parse b bp, RWCtx m s) => Variant 'Slot a b -> bp -> Raw a ('Mut s) -> m () Source #

Set the struct's anonymous union to the given variant, marshalling the supplied value into the message to be its argument. Not applicable for variants whose argument is a group; use initVariant instead.

initVariant :: forall a b m s. (HasUnion a, RWCtx m s) => Variant 'Group a b -> Raw a ('Mut s) -> m (Raw b ('Mut s)) Source #

Set the struct's anonymous union to the given variant, returning the variant's argument, which must be a group (for non-group fields, use setVariant or encodeVariant.

structUnion :: HasUnion a => Raw a mut -> Raw (Which a) mut Source #

Get the anonymous union for a struct.

unionStruct :: HasUnion a => Raw (Which a) mut -> Raw a mut Source #

Get the struct enclosing an anonymous union.

structWhich :: forall a mut m. (ReadCtx m mut, HasUnion a) => Raw a mut -> m (RawWhich a mut) Source #

Get a non-opaque view on the struct's anonymous union, which can be used to pattern match on.

unionWhich :: forall a mut m. (ReadCtx m mut, HasUnion a) => Raw (Which a) mut -> m (RawWhich a mut) Source #

Get a non-opaque view on the anonymous union, which can be used to pattern match on.

class AsClient f where Source #

The AsClient class allows callers of rpc methods to abstract over Clients and Pipelines. asClient converts either of those to a client so that methods can be invoked on it.

Methods

asClient :: MonadSTM m => IsCap c => f c -> m (Client c) Source #

Instances

Instances details
AsClient Client Source # 
Instance details

Defined in Capnp.Repr.Methods

Methods

asClient :: (MonadSTM m, IsCap c) => Client c -> m (Client c) Source #

AsClient Pipeline Source # 
Instance details

Defined in Capnp.Repr.Methods

Methods

asClient :: (MonadSTM m, IsCap c) => Pipeline c -> m (Client c) Source #

class (IsCap c, IsStruct p, IsStruct r) => HasMethod (name :: Symbol) c p r | name c -> p r where Source #

An instance HasMethod name c p r indicates that the interface type c has a method named name with parameter type p and return type r. The generated code includes instances of this for each method in the schema.

Methods

methodByLabel :: Method c p r Source #

Instances

Instances details
(TypeParam sturdyRef, TypeParam owner) => HasMethod "save" (Persistent sturdyRef owner) (Persistent'SaveParams sturdyRef owner) (Persistent'SaveResults sturdyRef owner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

methodByLabel :: Method (Persistent sturdyRef owner) (Persistent'SaveParams sturdyRef owner) (Persistent'SaveResults sturdyRef owner) Source #

(TypeParam internalRef, TypeParam externalRef, TypeParam internalOwner, TypeParam externalOwner) => HasMethod "export" (RealmGateway internalRef externalRef internalOwner externalOwner) (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) (Persistent'SaveResults externalRef externalOwner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

methodByLabel :: Method (RealmGateway internalRef externalRef internalOwner externalOwner) (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) (Persistent'SaveResults externalRef externalOwner) Source #

(TypeParam internalRef, TypeParam externalRef, TypeParam internalOwner, TypeParam externalOwner) => HasMethod "import_" (RealmGateway internalRef externalRef internalOwner externalOwner) (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) (Persistent'SaveResults internalRef internalOwner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

methodByLabel :: Method (RealmGateway internalRef externalRef internalOwner externalOwner) (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) (Persistent'SaveResults internalRef internalOwner) Source #

data Method c p r Source #

Represents a method on the interface type c with parameter type p and return type r.

Constructors

Method 

Instances

Instances details
HasMethod name c p r => IsLabel name (Method c p r) Source # 
Instance details

Defined in Capnp.Repr.Methods

Methods

fromLabel :: Method c p r #

upcast :: (AsClient f, Coercible (f p) (f c), Super p c) => f c -> f p Source #

Upcast is a (safe) cast from an interface to one of its superclasses.

callB :: (AsClient f, IsCap c, IsStruct p, MonadIO m) => Method c p r -> (forall s. PureBuilder s (Raw p ('Mut s))) -> f c -> m (Pipeline r) Source #

Call a method. Use the provided PureBuilder to construct the parameters.

callR :: (AsClient f, IsCap c, IsStruct p, MonadIO m) => Method c p r -> Raw p 'Const -> f c -> m (Pipeline r) Source #

Call a method, supplying the parameters as a Raw struct.

callP :: forall c p r f m pp. (AsClient f, IsCap c, IsStruct p, Parse p pp, MonadIO m) => Method c p r -> pp -> f c -> m (Pipeline r) Source #

Call a method, supplying the parmaeters in parsed form.

pipe :: (IsStruct a, ReprFor b ~ 'Ptr pr) => Field k a b -> Pipeline a -> Pipeline b Source #

Project a pipeline to a struct onto one of its pointer fields.

pipelineClient :: (IsCap a, MonadSTM m) => Pipeline a -> m (Client a) Source #

Convert a Pipeline for a capability into a Client.

waitPipeline :: forall a m pr. ('Ptr pr ~ ReprFor a, IsPtrRepr pr, MonadSTM m) => Pipeline a -> m (Raw a 'Const) Source #

Wait for the result of a pipeline, and return its value.

type Parsed a = ParsedByRepr (ReprFor a) a Source #

Parsed a is the high-level/ADT representation of the capnproto type a. For struct types this is equivalent to Parsed a, but we special case other types, such that e.g. Parsed Data = ByteString.

Working with raw values

newtype Raw (a :: Type) (mut :: Mutability) Source #

A Raw mut a is an a embedded in a capnproto message with mutability mut.

Constructors

Raw 

Fields

Instances

Instances details
ReprMaybeMutable (ReprFor a) => MaybeMutable (Raw a) Source # 
Instance details

Defined in Capnp.Repr

Methods

thaw :: (PrimMonad m, PrimState m ~ s) => Raw a 'Const -> m (Raw a ('Mut s)) Source #

freeze :: (PrimMonad m, PrimState m ~ s) => Raw a ('Mut s) -> m (Raw a 'Const) Source #

unsafeThaw :: (PrimMonad m, PrimState m ~ s) => Raw a 'Const -> m (Raw a ('Mut s)) Source #

unsafeFreeze :: (PrimMonad m, PrimState m ~ s) => Raw a ('Mut s) -> m (Raw a 'Const) Source #

HasMessage (Untyped (ReprFor a)) => HasMessage (Raw a) Source # 
Instance details

Defined in Capnp.Repr

Methods

message :: forall (mut :: Mutability). Unwrapped (Raw a mut) -> Message mut Source #

MessageDefault (Untyped (ReprFor a)) => MessageDefault (Raw a) Source # 
Instance details

Defined in Capnp.Repr

Methods

messageDefault :: forall m (mut :: Mutability). ReadCtx m mut => Message mut -> m (Unwrapped (Raw a mut)) Source #

Generic (Unwrapped (Untyped (ReprFor a) mut)) => Generic (Raw a mut) Source # 
Instance details

Defined in Capnp.Repr

Associated Types

type Rep (Raw a mut) :: Type -> Type #

Methods

from :: Raw a mut -> Rep (Raw a mut) x #

to :: Rep (Raw a mut) x -> Raw a mut #

Read (Unwrapped (Untyped (ReprFor a) mut)) => Read (Raw a mut) Source # 
Instance details

Defined in Capnp.Repr

Methods

readsPrec :: Int -> ReadS (Raw a mut) #

readList :: ReadS [Raw a mut] #

readPrec :: ReadPrec (Raw a mut) #

readListPrec :: ReadPrec [Raw a mut] #

Show (Unwrapped (Untyped (ReprFor a) mut)) => Show (Raw a mut) Source # 
Instance details

Defined in Capnp.Repr

Methods

showsPrec :: Int -> Raw a mut -> ShowS #

show :: Raw a mut -> String #

showList :: [Raw a mut] -> ShowS #

MessageDefault (Raw a) => Default (Raw a 'Const) Source # 
Instance details

Defined in Capnp.Repr

Methods

def :: Raw a 'Const #

Eq (Unwrapped (Untyped (ReprFor a) mut)) => Eq (Raw a mut) Source # 
Instance details

Defined in Capnp.Repr

Methods

(==) :: Raw a mut -> Raw a mut -> Bool #

(/=) :: Raw a mut -> Raw a mut -> Bool #

type Rep (Raw a mut) Source # 
Instance details

Defined in Capnp.Repr

type Rep (Raw a mut) = D1 ('MetaData "Raw" "Capnp.Repr" "capnp-0.18.0.0-BuIeeeNc5XZ6X0DqYkb3GI" 'True) (C1 ('MetaCons "Raw" 'PrefixI 'True) (S1 ('MetaSel ('Just "fromRaw") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Unwrapped (Untyped (ReprFor a) mut)))))

Working with raw lists

data List a Source #

A phantom type denoting capnproto lists of type a.

Instances

Instances details
HasField "annotations" 'Slot Enumerant (List Annotation) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "annotations" 'Slot Field (List Annotation) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "annotations" 'Slot Method (List Annotation) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "annotations" 'Slot Node (List Annotation) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "capTable" 'Slot Payload (List CapDescriptor) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "enumerants" 'Slot Node'enum (List Enumerant) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "fields" 'Slot Node'struct (List Field) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "implicitParameters" 'Slot Method (List Node'Parameter) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "imports" 'Slot CodeGeneratorRequest'RequestedFile (List CodeGeneratorRequest'RequestedFile'Import) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "members" 'Slot Node'SourceInfo (List Node'SourceInfo'Member) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "methods" 'Slot Node'interface (List Method) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "nestedNodes" 'Slot Node (List Node'NestedNode) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "nodes" 'Slot CodeGeneratorRequest (List Node) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "parameters" 'Slot Node (List Node'Parameter) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "params" 'Slot Value'Call (List Value) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

HasField "requestedFiles" 'Slot CodeGeneratorRequest (List CodeGeneratorRequest'RequestedFile) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "scopes" 'Slot Brand (List Brand'Scope) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "sourceInfo" 'Slot CodeGeneratorRequest (List Node'SourceInfo) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "superclasses" 'Slot Node'interface (List Superclass) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "transform" 'Slot PromisedAnswer (List PromisedAnswer'Op) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "array" 'Slot Value (List Value) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

HasVariant "bind" 'Slot Brand'Scope (List Brand'Binding) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "object" 'Slot Value (List Value'Field) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

AllocateList a => Allocate (List a) Source # 
Instance details

Defined in Capnp.Classes

Associated Types

type AllocHint (List a) Source #

Methods

new :: RWCtx m s => AllocHint (List a) -> Message ('Mut s) -> m (Raw (List a) ('Mut s)) Source #

AllocateList (List a) Source # 
Instance details

Defined in Capnp.Classes

Associated Types

type ListAllocHint (List a) Source #

Methods

newList :: RWCtx m s => ListAllocHint (List a) -> Message ('Mut s) -> m (Raw (List (List a)) ('Mut s)) Source #

MarshalElement a ap => EstimateAlloc (List a) [ap] Source # 
Instance details

Defined in Capnp.Classes

Methods

estimateAlloc :: [ap] -> AllocHint (List a) Source #

(Parse (List a) [ap], Allocate (List a)) => EstimateListAlloc (List a) [ap] Source # 
Instance details

Defined in Capnp.Classes

Methods

estimateListAlloc :: [[ap]] -> AllocHint (List (List a)) Source #

MarshalElement a ap => Marshal (List a) [ap] Source # 
Instance details

Defined in Capnp.Classes

Methods

marshalInto :: RWCtx m s => Raw (List a) ('Mut s) -> [ap] -> m () Source #

MarshalElement a ap => Parse (List a) [ap] Source # 
Instance details

Defined in Capnp.Classes

Methods

parse :: ReadCtx m 'Const => Raw (List a) 'Const -> m [ap] Source #

encode :: RWCtx m s => Message ('Mut s) -> [ap] -> m (Raw (List a) ('Mut s)) Source #

type AllocHint (List a) Source # 
Instance details

Defined in Capnp.Classes

type ListAllocHint (List a) Source # 
Instance details

Defined in Capnp.Classes

type ReprFor (List a) Source # 
Instance details

Defined in Capnp.Repr

type ReprFor (List a) = 'Ptr ('Just ('List ('Just (ListReprFor (ReprFor a)))))

index :: forall a m mut. (ReadCtx m mut, HasMessage (ListOf (ElemRepr (ListReprFor (ReprFor a)))), ListElem a) => Int -> Raw (List a) mut -> m (Raw a mut) Source #

index i list gets the ith element of the list.

setIndex :: forall a m s. (RWCtx m s, ListItem (ElemRepr (ListReprFor (ReprFor a))), Element (ReprFor a)) => Raw a ('Mut s) -> Int -> Raw (List a) ('Mut s) -> m () Source #

setIndex value i list sets the ith element of list to value.

length :: ListElem a => Raw (List a) mut -> Int Source #

Get the length of a capnproto list.

Working with fields

data Field (k :: FieldKind) a b Source #

Field k a b is a first-class representation of a field of type b within an a, where a must be a struct type.

Instances

Instances details
HasField name k a b => IsLabel name (Field k a b) Source # 
Instance details

Defined in Capnp.Fields

Methods

fromLabel :: Field k a b #

data FieldKind Source #

What sort of field is this? This corresponds to the slot/group variants in the Field type in schema.capnp. Mostly used at the type level with the DataKinds extension.

(Note that this has nothing to do with kinds in the usual type system sense of the word).

Instances

Instances details
Read FieldKind Source # 
Instance details

Defined in Capnp.Fields

Show FieldKind Source # 
Instance details

Defined in Capnp.Fields

Eq FieldKind Source # 
Instance details

Defined in Capnp.Fields

class IsStruct a => HasField (name :: Symbol) k a b | a name -> k b where Source #

An instance HasField name k a b indicates that the struct type a has a field named name with type b (with k being the FieldKind for the field). The generated code includes instances of this for each field in the schema.

Methods

fieldByLabel :: Field k a b Source #

Instances

Instances details
HasField "allowThirdPartyTailCall" 'Slot Call Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "answerId" 'Slot Return Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "attachedFd" 'Slot CapDescriptor Word8 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "brand" 'Slot Annotation Brand Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "brand" 'Slot Superclass Brand Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "brand" 'Slot Type'enum Brand Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "brand" 'Slot Type'interface Brand Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "brand" 'Slot Type'struct Brand Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "capnpVersion" 'Slot CodeGeneratorRequest CapnpVersion Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "codeOrder" 'Slot Enumerant Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "codeOrder" 'Slot Field Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "codeOrder" 'Slot Method Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "context" 'Group Disembargo Disembargo'context Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "dataWordCount" 'Slot Node'struct Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "defaultValue" 'Slot Field'slot Value Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "discriminantCount" 'Slot Node'struct Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "discriminantOffset" 'Slot Node'struct Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "discriminantValue" 'Slot Field Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "displayName" 'Slot Node Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "displayNamePrefixLength" 'Slot Node Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "docComment" 'Slot Node'SourceInfo Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "docComment" 'Slot Node'SourceInfo'Member Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "elementType" 'Slot Type'list Type Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "embargo" 'Slot Accept Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "filename" 'Slot CodeGeneratorRequest'RequestedFile Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "function" 'Slot Value'Call Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

HasField "hadExplicitDefault" 'Slot Field'slot Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "id" 'Slot Release Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "id" 'Slot Annotation Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "id" 'Slot CodeGeneratorRequest'RequestedFile Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "id" 'Slot CodeGeneratorRequest'RequestedFile'Import Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "id" 'Slot Node Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "id" 'Slot Node'NestedNode Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "id" 'Slot Node'SourceInfo Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "id" 'Slot Superclass Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "interfaceId" 'Slot Call Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "isGeneric" 'Slot Node Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "isGroup" 'Slot Node'struct Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "joinId" 'Slot JoinKeyPart Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

HasField "joinId" 'Slot JoinResult Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

HasField "joinId" 'Slot ProvisionId Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

HasField "major" 'Slot CapnpVersion Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "methodId" 'Slot Call Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "micro" 'Slot CapnpVersion Word8 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "minor" 'Slot CapnpVersion Word8 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "name" 'Slot DiscriminatorOptions Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

HasField "name" 'Slot Value'Field Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

HasField "name" 'Slot CodeGeneratorRequest'RequestedFile'Import Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "name" 'Slot Enumerant Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "name" 'Slot Field Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "name" 'Slot Method Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "name" 'Slot Node'NestedNode Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "name" 'Slot Node'Parameter Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "obsoleteDurability" 'Slot Exception Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "obsoleteIsCallersFault" 'Slot Exception Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "offset" 'Slot Field'slot Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "ordinal" 'Group Field Field'ordinal Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "paramBrand" 'Slot Method Brand Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "paramStructType" 'Slot Method Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "parameterIndex" 'Slot Type'anyPointer'implicitMethodParameter Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "parameterIndex" 'Slot Type'anyPointer'parameter Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "params" 'Slot Call Payload Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "partCount" 'Slot JoinKeyPart Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

HasField "partNum" 'Slot JoinKeyPart Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

HasField "pointerCount" 'Slot Node'struct Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "preferredListEncoding" 'Slot Node'struct ElementSize Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "prefix" 'Slot FlattenOptions Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

HasField "promiseId" 'Slot Resolve Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "questionId" 'Slot Accept Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "questionId" 'Slot Bootstrap Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "questionId" 'Slot Call Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "questionId" 'Slot Finish Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "questionId" 'Slot Join Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "questionId" 'Slot PromisedAnswer Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "questionId" 'Slot Provide Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "reason" 'Slot Exception Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "referenceCount" 'Slot Release Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "releaseParamCaps" 'Slot Return Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "releaseResultCaps" 'Slot Finish Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "resultBrand" 'Slot Method Brand Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "resultStructType" 'Slot Method Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "scopeId" 'Slot Brand'Scope Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "scopeId" 'Slot Node Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "scopeId" 'Slot Type'anyPointer'parameter Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "sendResultsTo" 'Group Call Call'sendResultsTo Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "side" 'Slot VatId Side Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

HasField "succeeded" 'Slot JoinResult Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

HasField "target" 'Slot Call MessageTarget Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "target" 'Slot Disembargo MessageTarget Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "target" 'Slot Join MessageTarget Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "target" 'Slot Provide MessageTarget Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "targetsAnnotation" 'Slot Node'annotation Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "targetsConst" 'Slot Node'annotation Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "targetsEnum" 'Slot Node'annotation Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "targetsEnumerant" 'Slot Node'annotation Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "targetsField" 'Slot Node'annotation Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "targetsFile" 'Slot Node'annotation Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "targetsGroup" 'Slot Node'annotation Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "targetsInterface" 'Slot Node'annotation Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "targetsMethod" 'Slot Node'annotation Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "targetsParam" 'Slot Node'annotation Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "targetsStruct" 'Slot Node'annotation Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "targetsUnion" 'Slot Node'annotation Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "typeId" 'Slot Field'group Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "typeId" 'Slot Type'enum Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "typeId" 'Slot Type'interface Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "typeId" 'Slot Type'struct Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "type_" 'Slot Exception Exception'Type Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "type_" 'Slot Field'slot Type Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "type_" 'Slot Node'annotation Type Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "type_" 'Slot Node'const Type Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "value" 'Slot Value'Field Value Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

HasField "value" 'Slot Annotation Value Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "value" 'Slot Node'const Value Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "valueName" 'Slot DiscriminatorOptions Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

HasField "vineId" 'Slot ThirdPartyCapDescriptor Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "annotations" 'Slot Enumerant (List Annotation) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "annotations" 'Slot Field (List Annotation) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "annotations" 'Slot Method (List Annotation) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "annotations" 'Slot Node (List Annotation) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "cap" 'Slot JoinResult (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty

HasField "capTable" 'Slot Payload (List CapDescriptor) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "content" 'Slot Payload (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "deprecatedObjectId" 'Slot Bootstrap (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "enumerants" 'Slot Node'enum (List Enumerant) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "fields" 'Slot Node'struct (List Field) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "id" 'Slot ThirdPartyCapDescriptor (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "implicitParameters" 'Slot Method (List Node'Parameter) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "imports" 'Slot CodeGeneratorRequest'RequestedFile (List CodeGeneratorRequest'RequestedFile'Import) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "keyPart" 'Slot Join (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "members" 'Slot Node'SourceInfo (List Node'SourceInfo'Member) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "methods" 'Slot Node'interface (List Method) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "nestedNodes" 'Slot Node (List Node'NestedNode) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "nodes" 'Slot CodeGeneratorRequest (List Node) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "parameters" 'Slot Node (List Node'Parameter) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "params" 'Slot Value'Call (List Value) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

HasField "provision" 'Slot Accept (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "recipient" 'Slot Provide (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasField "requestedFiles" 'Slot CodeGeneratorRequest (List CodeGeneratorRequest'RequestedFile) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "scopes" 'Slot Brand (List Brand'Scope) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "sourceInfo" 'Slot CodeGeneratorRequest (List Node'SourceInfo) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "superclasses" 'Slot Node'interface (List Superclass) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasField "transform" 'Slot PromisedAnswer (List PromisedAnswer'Op) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

(TypeParam sturdyRef, TypeParam owner) => HasField "sealFor" 'Slot (Persistent'SaveParams sturdyRef owner) owner Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

fieldByLabel :: Field 'Slot (Persistent'SaveParams sturdyRef owner) owner Source #

(TypeParam sturdyRef, TypeParam owner) => HasField "sturdyRef" 'Slot (Persistent'SaveResults sturdyRef owner) sturdyRef Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

fieldByLabel :: Field 'Slot (Persistent'SaveResults sturdyRef owner) sturdyRef Source #

(TypeParam internalRef, TypeParam externalRef, TypeParam internalOwner, TypeParam externalOwner) => HasField "cap" 'Slot (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) (Persistent internalRef internalOwner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

fieldByLabel :: Field 'Slot (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) (Persistent internalRef internalOwner) Source #

(TypeParam internalRef, TypeParam externalRef, TypeParam internalOwner, TypeParam externalOwner) => HasField "cap" 'Slot (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) (Persistent externalRef externalOwner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

fieldByLabel :: Field 'Slot (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) (Persistent externalRef externalOwner) Source #

(TypeParam internalRef, TypeParam externalRef, TypeParam internalOwner, TypeParam externalOwner) => HasField "params" 'Slot (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) (Persistent'SaveParams externalRef externalOwner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

fieldByLabel :: Field 'Slot (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) (Persistent'SaveParams externalRef externalOwner) Source #

(TypeParam internalRef, TypeParam externalRef, TypeParam internalOwner, TypeParam externalOwner) => HasField "params" 'Slot (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) (Persistent'SaveParams internalRef internalOwner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Methods

fieldByLabel :: Field 'Slot (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) (Persistent'SaveParams internalRef internalOwner) Source #

class IsStruct a => HasUnion a where Source #

An instance of HasUnion indicates that the given type is a capnproto struct (or group) with an anonymous union.

Associated Types

data Which a Source #

Which is the abstract capnproto type of the union itself. Like generated struct types (in this case a), this is typically uninhabitied, and used to define instances and/or act as a phantom type.

data RawWhich a (mut :: Mutability) Source #

Concrete view into a union embedded in a message. This will be a sum type with other Raw values as arguments.

Methods

unionField :: Field 'Slot a Word16 Source #

unionField is a field holding the union's tag.

internalWhich :: ReadCtx m mut => Word16 -> Raw a mut -> m (RawWhich a mut) Source #

Helper used in generated code to extract a RawWhich from its surrounding struct.

Instances

Instances details
HasUnion Value Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

Associated Types

data Which Value Source #

data RawWhich Value mut Source #

Methods

unionField :: Field 'Slot Value Word16 Source #

internalWhich :: forall m (mut :: Mutability). ReadCtx m mut => Word16 -> Raw Value mut -> m (RawWhich Value mut) Source #

HasUnion Call'sendResultsTo Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasUnion CapDescriptor Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

data Which CapDescriptor Source #

data RawWhich CapDescriptor mut Source #

HasUnion Disembargo'context Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasUnion Message Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

data Which Message Source #

data RawWhich Message mut Source #

Methods

unionField :: Field 'Slot Message Word16 Source #

internalWhich :: forall m (mut :: Mutability). ReadCtx m mut => Word16 -> Raw Message mut -> m (RawWhich Message mut) Source #

HasUnion MessageTarget Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

data Which MessageTarget Source #

data RawWhich MessageTarget mut Source #

HasUnion PromisedAnswer'Op Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasUnion Resolve Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

data Which Resolve Source #

data RawWhich Resolve mut Source #

Methods

unionField :: Field 'Slot Resolve Word16 Source #

internalWhich :: forall m (mut :: Mutability). ReadCtx m mut => Word16 -> Raw Resolve mut -> m (RawWhich Resolve mut) Source #

HasUnion Return Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Associated Types

data Which Return Source #

data RawWhich Return mut Source #

Methods

unionField :: Field 'Slot Return Word16 Source #

internalWhich :: forall m (mut :: Mutability). ReadCtx m mut => Word16 -> Raw Return mut -> m (RawWhich Return mut) Source #

HasUnion Brand'Binding Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

data Which Brand'Binding Source #

data RawWhich Brand'Binding mut Source #

HasUnion Brand'Scope Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

data Which Brand'Scope Source #

data RawWhich Brand'Scope mut Source #

HasUnion Field Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

data Which Field Source #

data RawWhich Field mut Source #

Methods

unionField :: Field0 'Slot Field Word16 Source #

internalWhich :: forall m (mut :: Mutability). ReadCtx m mut => Word16 -> Raw Field mut -> m (RawWhich Field mut) Source #

HasUnion Field'ordinal Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

data Which Field'ordinal Source #

data RawWhich Field'ordinal mut Source #

HasUnion Node Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

data Which Node Source #

data RawWhich Node mut Source #

Methods

unionField :: Field 'Slot Node Word16 Source #

internalWhich :: forall m (mut :: Mutability). ReadCtx m mut => Word16 -> Raw Node mut -> m (RawWhich Node mut) Source #

HasUnion Type Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

data Which Type Source #

data RawWhich Type mut Source #

Methods

unionField :: Field 'Slot Type Word16 Source #

internalWhich :: forall m (mut :: Mutability). ReadCtx m mut => Word16 -> Raw Type mut -> m (RawWhich Type mut) Source #

HasUnion Type'anyPointer Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasUnion Type'anyPointer'unconstrained Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasUnion Value Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

Associated Types

data Which Value Source #

data RawWhich Value mut Source #

Methods

unionField :: Field 'Slot Value Word16 Source #

internalWhich :: forall m (mut :: Mutability). ReadCtx m mut => Word16 -> Raw Value mut -> m (RawWhich Value mut) Source #

class HasUnion a => HasVariant (name :: Symbol) k a b | a name -> k b where Source #

An instance 'HasVariant name k a b indicates that the struct type a has an anonymous union with a variant named name, whose argument is of type b.

Methods

variantByLabel :: Variant k a b Source #

Instances

Instances details
HasVariant "abort" 'Slot Message Exception Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "accept" 'Slot Disembargo'context () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "accept" 'Slot Message Accept Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "annotation" 'Group Node Node'annotation Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "anyKind" 'Slot Type'anyPointer'unconstrained () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "anyPointer" 'Group Type Type'anyPointer Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "bool" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "bool" 'Slot Value Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "boolean" 'Slot Value Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

HasVariant "bootstrap" 'Slot Message Bootstrap Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "call" 'Slot Value Value'Call Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

HasVariant "call" 'Slot Message Call Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "caller" 'Slot Call'sendResultsTo () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "canceled" 'Slot Return () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "cap" 'Slot Resolve CapDescriptor Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "capability" 'Slot Type'anyPointer'unconstrained () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "const" 'Group Node Node'const Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "data_" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "data_" 'Slot Value Data Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "disembargo" 'Slot Message Disembargo Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "enum" 'Group Node Node'enum Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "enum" 'Group Type Type'enum Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "enum" 'Slot Value Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "exception" 'Slot Resolve Exception Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "exception" 'Slot Return Exception Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "explicit" 'Slot Field'ordinal Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "file" 'Slot Node () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "finish" 'Slot Message Finish Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "float32" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "float32" 'Slot Value Float Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "float64" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "float64" 'Slot Value Double Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "getPointerField" 'Slot PromisedAnswer'Op Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "group" 'Group Field Field'group Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "implicit" 'Slot Field'ordinal () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "implicitMethodParameter" 'Group Type'anyPointer Type'anyPointer'implicitMethodParameter Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "importedCap" 'Slot MessageTarget Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "inherit" 'Slot Brand'Scope () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "int16" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "int16" 'Slot Value Int16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "int32" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "int32" 'Slot Value Int32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "int64" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "int64" 'Slot Value Int64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "int8" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "int8" 'Slot Value Int8 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "interface" 'Group Node Node'interface Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "interface" 'Group Type Type'interface Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "interface" 'Slot Value () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "join" 'Slot Message Join Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "list" 'Group Type Type'list Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "list" 'Slot Type'anyPointer'unconstrained () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "none" 'Slot CapDescriptor () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "noop" 'Slot PromisedAnswer'Op () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "null" 'Slot Value () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

HasVariant "number" 'Slot Value Double Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

HasVariant "parameter" 'Group Type'anyPointer Type'anyPointer'parameter Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "promisedAnswer" 'Slot MessageTarget PromisedAnswer Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "provide" 'Slot Disembargo'context Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "provide" 'Slot Message Provide Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "receiverAnswer" 'Slot CapDescriptor PromisedAnswer Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "receiverHosted" 'Slot CapDescriptor Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "receiverLoopback" 'Slot Disembargo'context Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "release" 'Slot Message Release Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "resolve" 'Slot Message Resolve Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "results" 'Slot Return Payload Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "resultsSentElsewhere" 'Slot Return () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "return" 'Slot Message Return Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "senderHosted" 'Slot CapDescriptor Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "senderLoopback" 'Slot Disembargo'context Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "senderPromise" 'Slot CapDescriptor Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "slot" 'Group Field Field'slot Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "string" 'Slot Value Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

HasVariant "struct" 'Group Node Node'struct Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "struct" 'Group Type Type'struct Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "struct" 'Slot Type'anyPointer'unconstrained () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "takeFromOtherQuestion" 'Slot Return Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "text" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "text" 'Slot Value Text Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "thirdPartyHosted" 'Slot CapDescriptor ThirdPartyCapDescriptor Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "type_" 'Slot Brand'Binding Type Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "uint16" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "uint16" 'Slot Value Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "uint32" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "uint32" 'Slot Value Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "uint64" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "uint64" 'Slot Value Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "uint8" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "uint8" 'Slot Value Word8 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "unbound" 'Slot Brand'Binding () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "unconstrained" 'Group Type'anyPointer Type'anyPointer'unconstrained Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "unimplemented" 'Slot Message Message Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "void" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "void" 'Slot Value () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "yourself" 'Slot Call'sendResultsTo () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "acceptFromThirdParty" 'Slot Return (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "anyPointer" 'Slot Value (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "array" 'Slot Value (List Value) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

HasVariant "bind" 'Slot Brand'Scope (List Brand'Binding) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "list" 'Slot Value (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "object" 'Slot Value (List Value'Field) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json

HasVariant "obsoleteDelete" 'Slot Message (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "obsoleteSave" 'Slot Message (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

HasVariant "struct" 'Slot Value (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema

HasVariant "thirdParty" 'Slot Call'sendResultsTo (Maybe AnyPointer) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc

Working with messages

data family Message (mut :: Mutability) Source #

A Cap'n Proto message, parametrized over its mutability.

Instances

Instances details
MaybeMutable Message Source # 
Instance details

Defined in Capnp.Message

Methods

thaw :: (PrimMonad m, PrimState m ~ s) => Message 'Const -> m (Message ('Mut s)) Source #

freeze :: (PrimMonad m, PrimState m ~ s) => Message ('Mut s) -> m (Message 'Const) Source #

unsafeThaw :: (PrimMonad m, PrimState m ~ s) => Message 'Const -> m (Message ('Mut s)) Source #

unsafeFreeze :: (PrimMonad m, PrimState m ~ s) => Message ('Mut s) -> m (Message 'Const) Source #

Eq (Message 'Const) Source # 
Instance details

Defined in Capnp.Message

Eq (Message ('Mut s)) Source # 
Instance details

Defined in Capnp.Message

Methods

(==) :: Message ('Mut s) -> Message ('Mut s) -> Bool #

(/=) :: Message ('Mut s) -> Message ('Mut s) -> Bool #

newtype Message 'Const Source # 
Instance details

Defined in Capnp.Message

newtype Message 'Const = MsgConst ConstMsg
newtype Message ('Mut s) Source # 
Instance details

Defined in Capnp.Message

newtype Message ('Mut s) = MsgMut (MutMsg s)

data family Segment (mut :: Mutability) Source #

A segment in a Cap'n Proto message.

Instances

Instances details
MaybeMutable Segment Source # 
Instance details

Defined in Capnp.Message

Methods

thaw :: (PrimMonad m, PrimState m ~ s) => Segment 'Const -> m (Segment ('Mut s)) Source #

freeze :: (PrimMonad m, PrimState m ~ s) => Segment ('Mut s) -> m (Segment 'Const) Source #

unsafeThaw :: (PrimMonad m, PrimState m ~ s) => Segment 'Const -> m (Segment ('Mut s)) Source #

unsafeFreeze :: (PrimMonad m, PrimState m ~ s) => Segment ('Mut s) -> m (Segment 'Const) Source #

Eq (Segment 'Const) Source # 
Instance details

Defined in Capnp.Message

Eq (Segment ('Mut s)) Source # 
Instance details

Defined in Capnp.Message

Methods

(==) :: Segment ('Mut s) -> Segment ('Mut s) -> Bool #

(/=) :: Segment ('Mut s) -> Segment ('Mut s) -> Bool #

newtype Segment 'Const Source # 
Instance details

Defined in Capnp.Message

newtype Segment 'Const = SegConst ConstSegment
newtype Segment ('Mut s) Source # 
Instance details

Defined in Capnp.Message

newtype Segment ('Mut s) = SegMut (MutSegment s)

data Mutability Source #

Mutability is used as a type parameter (with the DataKinds extension) to indicate the mutability of some values in this library; Const denotes an immutable value, while Mut s denotes a value that can be mutated in the scope of the state token s.

Constructors

Const 
Mut Type 

class Monad m => MonadReadMessage mut m where Source #

A Message is a (possibly read-only) capnproto message. It is parameterized over a monad in which operations are performed.

Methods

numSegs :: Message mut -> m Int Source #

numSegs gets the number of segments in a message.

numWords :: Segment mut -> m WordCount Source #

numWords gets the number of words in a segment.

numCaps :: Message mut -> m Int Source #

numCaps gets the number of capabilities in a message's capability table.

getSegment :: Message mut -> Int -> m (Segment mut) Source #

getSegment message index gets the segment at index index in message.

internalGetCap :: Message mut -> Int -> m Client Source #

internalGetCap cap index reads a capability from the message's capability table, returning the client. does not check bounds. Callers should use getCap instead.

slice :: WordCount -> WordCount -> Segment mut -> m (Segment mut) Source #

slice start length segment extracts a sub-section of the segment, starting at index start, of length length.

read :: Segment mut -> WordCount -> m Word64 Source #

read segment index reads a 64-bit word from the segement at the given index. Consider using getWord on the message, instead of calling this directly.

Instances

Instances details
Monad m => MonadReadMessage 'Const m Source # 
Instance details

Defined in Capnp.Message

(PrimMonad m, s ~ PrimState m) => MonadReadMessage ('Mut s) m Source # 
Instance details

Defined in Capnp.Message

newMessage :: WriteCtx m s => Maybe WordCount -> m (Message ('Mut s)) Source #

newMessage sizeHint allocates a new empty message, with a single segment having capacity sizeHint. If sizeHint is Nothing, defaults to a sensible value.

fromByteString :: ByteString -> Segment 'Const Source #

Convert a ByteString to a segment. O(1)

toByteString :: Segment 'Const -> ByteString Source #

Convert a segment to a byte string. O(1)

Building messages in pure code

data PureBuilder s a Source #

PureBuilder is a monad transformer stack with the instnaces needed manipulate mutable messages. PureBuilder s a is morally equivalent to LimitT (CatchT (ST s)) a

Instances

Instances details
Applicative (PureBuilder s) Source # 
Instance details

Defined in Internal.BuildPure

Methods

pure :: a -> PureBuilder s a #

(<*>) :: PureBuilder s (a -> b) -> PureBuilder s a -> PureBuilder s b #

liftA2 :: (a -> b -> c) -> PureBuilder s a -> PureBuilder s b -> PureBuilder s c #

(*>) :: PureBuilder s a -> PureBuilder s b -> PureBuilder s b #

(<*) :: PureBuilder s a -> PureBuilder s b -> PureBuilder s a #

Functor (PureBuilder s) Source # 
Instance details

Defined in Internal.BuildPure

Methods

fmap :: (a -> b) -> PureBuilder s a -> PureBuilder s b #

(<$) :: a -> PureBuilder s b -> PureBuilder s a #

Monad (PureBuilder s) Source # 
Instance details

Defined in Internal.BuildPure

Methods

(>>=) :: PureBuilder s a -> (a -> PureBuilder s b) -> PureBuilder s b #

(>>) :: PureBuilder s a -> PureBuilder s b -> PureBuilder s b #

return :: a -> PureBuilder s a #

MonadLimit (PureBuilder s) Source # 
Instance details

Defined in Internal.BuildPure

MonadThrow (PureBuilder s) Source # 
Instance details

Defined in Internal.BuildPure

Methods

throwM :: Exception e => e -> PureBuilder s a #

PrimMonad (PureBuilder s) Source # 
Instance details

Defined in Internal.BuildPure

Associated Types

type PrimState (PureBuilder s) #

Methods

primitive :: (State# (PrimState (PureBuilder s)) -> (# State# (PrimState (PureBuilder s)), a #)) -> PureBuilder s a #

type PrimState (PureBuilder s) Source # 
Instance details

Defined in Internal.BuildPure

type PrimState (PureBuilder s) = s

createPure :: (MonadThrow m, MaybeMutable f) => WordCount -> (forall s. PureBuilder s (f ('Mut s))) -> m (f 'Const) Source #

createPure limit m creates a capnproto value in pure code according to m, then freezes it without copying. If m calls throwM then createPure rethrows the exception in the specified monad.

Canonicalizing messages

canonicalize :: RWCtx m s => Struct 'Const -> m (Message ('Mut s), Segment ('Mut s)) Source #

Return a canonicalized message with a copy of the given struct as its root. returns a (message, segment) pair, where the segment is the first and only segment of the returned message.

In addition to the usual reasons for failure when reading a message (traversal limit, malformed messages), this can fail if the message does not fit in a single segment, as the canonical form requires single-segment messages.

Implementing RPC servers

type MethodHandler p r = Raw p 'Const -> Fulfiller (Raw r 'Const) -> IO () Source #

Type alias for a handler for a particular rpc method.

class SomeServer a where Source #

Base class for things that can act as capnproto servers.

Minimal complete definition

Nothing

Methods

shutdown :: a -> IO () Source #

Called when the last live reference to a server is dropped.

unwrap :: Typeable b => a -> Maybe b Source #

Try to extract a value of a given type. The default implementation always fails (returns Nothing). If an instance chooses to implement this, it will be possible to use "reflection" on clients that point at local servers to dynamically unwrap the server value. A typical implementation will just call Typeable's cast method, but this needn't be the case -- a server may wish to allow local peers to unwrap some value that is not exactly the data the server has access to.

class (IsCap i, HasTypeId i) => Export i Source #

Generated interface types have instances of Export, which allows a server for that interface to be exported as a Client.

Minimal complete definition

methodHandlerTree

Associated Types

type Server i :: Type -> Constraint Source #

The constraint needed for a server to implement an interface; if Server i s is satisfied, s is a server for interface i. The code generator generates a type class for each interface, and this will aways be an alias for that type class.

Instances

Instances details
(TypeParam sturdyRef, TypeParam owner) => Export (Persistent sturdyRef owner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Associated Types

type Server (Persistent sturdyRef owner) :: Type -> Constraint Source #

Methods

methodHandlerTree :: Server (Persistent sturdyRef owner) s => Proxy (Persistent sturdyRef owner) -> s -> MethodHandlerTree Source #

(TypeParam internalRef, TypeParam externalRef, TypeParam internalOwner, TypeParam externalOwner) => Export (RealmGateway internalRef externalRef internalOwner externalOwner) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent

Associated Types

type Server (RealmGateway internalRef externalRef internalOwner externalOwner) :: Type -> Constraint Source #

Methods

methodHandlerTree :: Server (RealmGateway internalRef externalRef internalOwner externalOwner) s => Proxy (RealmGateway internalRef externalRef internalOwner externalOwner) -> s -> MethodHandlerTree Source #

export :: forall i s m. (MonadSTM m, Export i, Server i s, SomeServer s) => Supervisor -> s -> m (Client i) Source #

Export the server as a client for interface i. Spawns a server thread with its lifetime bound to the supervisor.

handleParsed :: (Parse p pp, IsStruct p, Parse r pr, IsStruct r) => (pp -> IO pr) -> MethodHandler p r Source #

Handle a method, working with the parsed form of parameters and results.

handleRaw :: (IsStruct p, IsStruct r) => (Raw p 'Const -> IO (Raw r 'Const)) -> MethodHandler p r Source #

Handle a method, working with the raw (unparsed) form of parameters and results.

methodUnimplemented :: MethodHandler p r Source #

MethodHandler that always throws unimplemented.

Shorthands for types

type IsStruct a = ReprFor a ~ 'Ptr ('Just 'Struct) Source #

Constraint that a is a struct type.

type IsCap a = ReprFor a ~ 'Ptr ('Just 'Cap) Source #

Constraint that a is a capability type.

type IsPtr a = (ReprFor a ~ 'Ptr (PtrReprFor (ReprFor a)), Untyped (ReprFor a) ~ UntypedPtr (PtrReprFor (ReprFor a)), IsPtrRepr (PtrReprFor (ReprFor a))) Source #

Constraint that a is a pointer type.

Re-exported from Data.Default, for convienence.

def :: Default a => a #

The default value for this type.