capnp-0.12.1.0: Cap'n Proto for Haskell
Safe HaskellNone
LanguageHaskell2010

Capnp.Fields

Description

 
Synopsis

Documentation

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.New

HasField "answerId" 'Slot Return Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "attachedFd" 'Slot CapDescriptor Word8 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "brand" 'Slot Annotation Brand Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "brand" 'Slot Type'interface Brand Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "brand" 'Slot Type'struct Brand Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "brand" 'Slot Type'enum Brand Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "brand" 'Slot Superclass Brand Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "capnpVersion" 'Slot CodeGeneratorRequest CapnpVersion Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "codeOrder" 'Slot Method Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "codeOrder" 'Slot Enumerant Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "codeOrder" 'Slot Field Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "context" 'Group Disembargo Disembargo'context Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "dataWordCount" 'Slot Node'struct Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "defaultValue" 'Slot Field'slot Value Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "discriminantCount" 'Slot Node'struct Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "discriminantOffset" 'Slot Node'struct Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "discriminantValue" 'Slot Field Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

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

Defined in Capnp.Gen.Capnp.Schema.New

HasField "displayNamePrefixLength" 'Slot Node Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

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

Defined in Capnp.Gen.Capnp.Schema.New

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

Defined in Capnp.Gen.Capnp.Schema.New

HasField "elementType" 'Slot Type'list Type Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "embargo" 'Slot Accept Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

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

Defined in Capnp.Gen.Capnp.Schema.New

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

Defined in Capnp.Gen.Capnp.Compat.Json.New

HasField "hadExplicitDefault" 'Slot Field'slot Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "id" 'Slot CodeGeneratorRequest'RequestedFile'Import Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "id" 'Slot CodeGeneratorRequest'RequestedFile Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "id" 'Slot Annotation Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "id" 'Slot Superclass Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "id" 'Slot Node'SourceInfo Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "id" 'Slot Node'NestedNode Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "id" 'Slot Node Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "id" 'Slot Release Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "interfaceId" 'Slot Call Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "isGeneric" 'Slot Node Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "isGroup" 'Slot Node'struct Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "joinId" 'Slot JoinResult Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty.New

HasField "joinId" 'Slot JoinKeyPart Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty.New

HasField "joinId" 'Slot ProvisionId Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty.New

HasField "major" 'Slot CapnpVersion Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "methodId" 'Slot Call Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "micro" 'Slot CapnpVersion Word8 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "minor" 'Slot CapnpVersion Word8 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

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

Defined in Capnp.Gen.Capnp.Schema.New

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

Defined in Capnp.Gen.Capnp.Schema.New

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

Defined in Capnp.Gen.Capnp.Schema.New

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

Defined in Capnp.Gen.Capnp.Schema.New

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

Defined in Capnp.Gen.Capnp.Schema.New

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

Defined in Capnp.Gen.Capnp.Schema.New

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

Defined in Capnp.Gen.Capnp.Compat.Json.New

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

Defined in Capnp.Gen.Capnp.Compat.Json.New

HasField "obsoleteDurability" 'Slot Exception Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "obsoleteIsCallersFault" 'Slot Exception Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "offset" 'Slot Field'slot Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "ordinal" 'Group Field Field'ordinal Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "paramBrand" 'Slot Method Brand Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "paramStructType" 'Slot Method Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "parameterIndex" 'Slot Type'anyPointer'implicitMethodParameter Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "parameterIndex" 'Slot Type'anyPointer'parameter Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "params" 'Slot Call Payload Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "partCount" 'Slot JoinKeyPart Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty.New

HasField "partNum" 'Slot JoinKeyPart Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty.New

HasField "pointerCount" 'Slot Node'struct Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "preferredListEncoding" 'Slot Node'struct ElementSize Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

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

Defined in Capnp.Gen.Capnp.Compat.Json.New

HasField "promiseId" 'Slot Resolve Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "questionId" 'Slot PromisedAnswer Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "questionId" 'Slot Join Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "questionId" 'Slot Accept Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "questionId" 'Slot Provide Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "questionId" 'Slot Finish Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "questionId" 'Slot Call Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "questionId" 'Slot Bootstrap Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

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

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "referenceCount" 'Slot Release Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "releaseParamCaps" 'Slot Return Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "releaseResultCaps" 'Slot Finish Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "resultBrand" 'Slot Method Brand Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "resultStructType" 'Slot Method Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "scopeId" 'Slot Brand'Scope Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "scopeId" 'Slot Type'anyPointer'parameter Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "scopeId" 'Slot Node Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "sendResultsTo" 'Group Call Call'sendResultsTo Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "side" 'Slot VatId Side Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty.New

HasField "succeeded" 'Slot JoinResult Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.RpcTwoparty.New

HasField "target" 'Slot Join MessageTarget Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "target" 'Slot Provide MessageTarget Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "target" 'Slot Disembargo MessageTarget Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "target" 'Slot Call MessageTarget Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "targetsAnnotation" 'Slot Node'annotation Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "targetsConst" 'Slot Node'annotation Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "targetsEnum" 'Slot Node'annotation Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "targetsEnumerant" 'Slot Node'annotation Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "targetsField" 'Slot Node'annotation Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "targetsFile" 'Slot Node'annotation Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "targetsGroup" 'Slot Node'annotation Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "targetsInterface" 'Slot Node'annotation Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "targetsMethod" 'Slot Node'annotation Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "targetsParam" 'Slot Node'annotation Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "targetsStruct" 'Slot Node'annotation Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "targetsUnion" 'Slot Node'annotation Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "typeId" 'Slot Type'interface Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "typeId" 'Slot Type'struct Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "typeId" 'Slot Type'enum Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "typeId" 'Slot Field'group Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "type_" 'Slot Field'slot Type Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "type_" 'Slot Node'annotation Type Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "type_" 'Slot Node'const Type Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "type_" 'Slot Exception Exception'Type Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "value" 'Slot Annotation Value Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "value" 'Slot Node'const Value Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "value" 'Slot Value'Field Value Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json.New

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

Defined in Capnp.Gen.Capnp.Compat.Json.New

HasField "vineId" 'Slot ThirdPartyCapDescriptor Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

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

Defined in Capnp.Gen.Capnp.Schema.New

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

Defined in Capnp.Gen.Capnp.Schema.New

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

Defined in Capnp.Gen.Capnp.Schema.New

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

Defined in Capnp.Gen.Capnp.Schema.New

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

Defined in Capnp.Gen.Capnp.RpcTwoparty.New

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

Defined in Capnp.Gen.Capnp.Rpc.New

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

Defined in Capnp.Gen.Capnp.Rpc.New

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

Defined in Capnp.Gen.Capnp.Rpc.New

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

Defined in Capnp.Gen.Capnp.Schema.New

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

Defined in Capnp.Gen.Capnp.Schema.New

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

Defined in Capnp.Gen.Capnp.Rpc.New

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

Defined in Capnp.Gen.Capnp.Schema.New

HasField "imports" 'Slot CodeGeneratorRequest'RequestedFile (List CodeGeneratorRequest'RequestedFile'Import) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

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

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "members" 'Slot Node'SourceInfo (List Node'SourceInfo'Member) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "methods" 'Slot Node'interface (List Method) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "nestedNodes" 'Slot Node (List Node'NestedNode) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "nodes" 'Slot CodeGeneratorRequest (List Node) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

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

Defined in Capnp.Gen.Capnp.Schema.New

HasField "params" 'Slot Value'Call (List Value) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json.New

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

Defined in Capnp.Gen.Capnp.Rpc.New

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

Defined in Capnp.Gen.Capnp.Rpc.New

HasField "requestedFiles" 'Slot CodeGeneratorRequest (List CodeGeneratorRequest'RequestedFile) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "scopes" 'Slot Brand (List Brand'Scope) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "sourceInfo" 'Slot CodeGeneratorRequest (List Node'SourceInfo) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "superclasses" 'Slot Node'interface (List Superclass) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasField "transform" 'Slot PromisedAnswer (List PromisedAnswer'Op) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

(TypeParam sturdyRef, TypeParam owner) => HasField "sealFor" 'Slot (Persistent'SaveParams sturdyRef owner) owner Source # 
Instance details

Defined in Capnp.Gen.Capnp.Persistent.New

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.New

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.New

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.New

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.New

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.New

Methods

fieldByLabel :: Field 'Slot (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) (Persistent'SaveParams internalRef internalOwner) Source #

newtype 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.

Constructors

Field (FieldLoc k (ReprFor b)) 

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 FieldLoc (k :: FieldKind) (r :: Repr) where Source #

The location of a field within a message.

data DataFieldLoc (sz :: DataSz) Source #

The location of a data (non-pointer) field.

Constructors

DataFieldLoc 

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).

Constructors

Slot

The field is a normal slot; it can be read and written as an individual value.

Group

The field is a group. Since this shares space with its parent struct access patterns are a bit different.

Instances

Instances details
Eq FieldKind Source # 
Instance details

Defined in Capnp.Fields

Read FieldKind Source # 
Instance details

Defined in Capnp.Fields

Show FieldKind Source # 
Instance details

Defined in Capnp.Fields

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 (mut :: Mutability) a 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 mut a -> m (RawWhich mut a) 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.Schema.New

Associated Types

data Which Value Source #

data RawWhich mut Value Source #

Methods

unionField :: Field 'Slot Value Word16 Source #

internalWhich :: forall m (mut :: Mutability). ReadCtx m mut => Word16 -> Raw mut Value -> m (RawWhich mut Value) Source #

HasUnion Brand'Binding Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

Associated Types

data Which Brand'Binding Source #

data RawWhich mut Brand'Binding Source #

HasUnion Brand'Scope Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

Associated Types

data Which Brand'Scope Source #

data RawWhich mut Brand'Scope Source #

HasUnion Type'anyPointer'unconstrained Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasUnion Type'anyPointer Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasUnion Type Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

Associated Types

data Which Type Source #

data RawWhich mut Type Source #

Methods

unionField :: Field 'Slot Type Word16 Source #

internalWhich :: forall m (mut :: Mutability). ReadCtx m mut => Word16 -> Raw mut Type -> m (RawWhich mut Type) Source #

HasUnion Field'ordinal Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

Associated Types

data Which Field'ordinal Source #

data RawWhich mut Field'ordinal Source #

HasUnion Field Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

Associated Types

data Which Field Source #

data RawWhich mut Field Source #

Methods

unionField :: Field0 'Slot Field Word16 Source #

internalWhich :: forall m (mut :: Mutability). ReadCtx m mut => Word16 -> Raw mut Field -> m (RawWhich mut Field) Source #

HasUnion Node Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

Associated Types

data Which Node Source #

data RawWhich mut Node Source #

Methods

unionField :: Field 'Slot Node Word16 Source #

internalWhich :: forall m (mut :: Mutability). ReadCtx m mut => Word16 -> Raw mut Node -> m (RawWhich mut Node) Source #

HasUnion PromisedAnswer'Op Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasUnion CapDescriptor Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

Associated Types

data Which CapDescriptor Source #

data RawWhich mut CapDescriptor Source #

HasUnion MessageTarget Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

Associated Types

data Which MessageTarget Source #

data RawWhich mut MessageTarget Source #

HasUnion Disembargo'context Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasUnion Resolve Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

Associated Types

data Which Resolve Source #

data RawWhich mut Resolve Source #

Methods

unionField :: Field 'Slot Resolve Word16 Source #

internalWhich :: forall m (mut :: Mutability). ReadCtx m mut => Word16 -> Raw mut Resolve -> m (RawWhich mut Resolve) Source #

HasUnion Return Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

Associated Types

data Which Return Source #

data RawWhich mut Return Source #

Methods

unionField :: Field 'Slot Return Word16 Source #

internalWhich :: forall m (mut :: Mutability). ReadCtx m mut => Word16 -> Raw mut Return -> m (RawWhich mut Return) Source #

HasUnion Call'sendResultsTo Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasUnion Message Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

Associated Types

data Which Message Source #

data RawWhich mut Message Source #

Methods

unionField :: Field 'Slot Message Word16 Source #

internalWhich :: forall m (mut :: Mutability). ReadCtx m mut => Word16 -> Raw mut Message -> m (RawWhich mut Message) Source #

HasUnion Value Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json.New

Associated Types

data Which Value Source #

data RawWhich mut Value Source #

Methods

unionField :: Field 'Slot Value Word16 Source #

internalWhich :: forall m (mut :: Mutability). ReadCtx m mut => Word16 -> Raw mut Value -> m (RawWhich mut Value) Source #

data Variant (k :: FieldKind) a b Source #

Variant k a b is a first-class representation of a variant of a's anonymous union, whose argument is of type b.

Constructors

Variant 

Fields

Instances

Instances details
HasVariant name k a b => IsLabel name (Variant k a b) Source # 
Instance details

Defined in Capnp.Fields

Methods

fromLabel :: Variant k a b #

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.New

HasVariant "accept" 'Slot Disembargo'context () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "accept" 'Slot Message Accept Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "annotation" 'Group Node Node'annotation Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "anyKind" 'Slot Type'anyPointer'unconstrained () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "anyPointer" 'Group Type Type'anyPointer Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "bool" 'Slot Value Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "bool" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "boolean" 'Slot Value Bool Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json.New

HasVariant "bootstrap" 'Slot Message Bootstrap Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "call" 'Slot Message Call Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "call" 'Slot Value Value'Call Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json.New

HasVariant "caller" 'Slot Call'sendResultsTo () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "canceled" 'Slot Return () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "cap" 'Slot Resolve CapDescriptor Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "capability" 'Slot Type'anyPointer'unconstrained () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "const" 'Group Node Node'const Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

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

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "data_" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "disembargo" 'Slot Message Disembargo Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "enum" 'Slot Value Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "enum" 'Group Type Type'enum Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "enum" 'Group Node Node'enum Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "exception" 'Slot Resolve Exception Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "exception" 'Slot Return Exception Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "explicit" 'Slot Field'ordinal Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "file" 'Slot Node () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "finish" 'Slot Message Finish Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "float32" 'Slot Value Float Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "float32" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "float64" 'Slot Value Double Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "float64" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "getPointerField" 'Slot PromisedAnswer'Op Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "group" 'Group Field Field'group Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "implicit" 'Slot Field'ordinal () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "implicitMethodParameter" 'Group Type'anyPointer Type'anyPointer'implicitMethodParameter Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "importedCap" 'Slot MessageTarget Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "inherit" 'Slot Brand'Scope () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "int16" 'Slot Value Int16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "int16" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "int32" 'Slot Value Int32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "int32" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "int64" 'Slot Value Int64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "int64" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "int8" 'Slot Value Int8 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "int8" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "interface" 'Slot Value () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "interface" 'Group Type Type'interface Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "interface" 'Group Node Node'interface Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "join" 'Slot Message Join Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "list" 'Slot Type'anyPointer'unconstrained () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "list" 'Group Type Type'list Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "none" 'Slot CapDescriptor () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "noop" 'Slot PromisedAnswer'Op () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "null" 'Slot Value () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json.New

HasVariant "number" 'Slot Value Double Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json.New

HasVariant "parameter" 'Group Type'anyPointer Type'anyPointer'parameter Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "promisedAnswer" 'Slot MessageTarget PromisedAnswer Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "provide" 'Slot Disembargo'context Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "provide" 'Slot Message Provide Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "receiverAnswer" 'Slot CapDescriptor PromisedAnswer Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "receiverHosted" 'Slot CapDescriptor Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "receiverLoopback" 'Slot Disembargo'context Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "release" 'Slot Message Release Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "resolve" 'Slot Message Resolve Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "results" 'Slot Return Payload Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "resultsSentElsewhere" 'Slot Return () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "return" 'Slot Message Return Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "senderHosted" 'Slot CapDescriptor Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "senderLoopback" 'Slot Disembargo'context Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "senderPromise" 'Slot CapDescriptor Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "slot" 'Group Field Field'slot Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

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

Defined in Capnp.Gen.Capnp.Compat.Json.New

HasVariant "struct" 'Slot Type'anyPointer'unconstrained () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "struct" 'Group Type Type'struct Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "struct" 'Group Node Node'struct Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "takeFromOtherQuestion" 'Slot Return Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

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

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "text" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "thirdPartyHosted" 'Slot CapDescriptor ThirdPartyCapDescriptor Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "type_" 'Slot Brand'Binding Type Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "uint16" 'Slot Value Word16 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "uint16" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "uint32" 'Slot Value Word32 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "uint32" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "uint64" 'Slot Value Word64 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "uint64" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "uint8" 'Slot Value Word8 Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "uint8" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "unbound" 'Slot Brand'Binding () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "unconstrained" 'Group Type'anyPointer Type'anyPointer'unconstrained Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "unimplemented" 'Slot Message Message Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

HasVariant "void" 'Slot Value () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "void" 'Slot Type () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "yourself" 'Slot Call'sendResultsTo () Source # 
Instance details

Defined in Capnp.Gen.Capnp.Rpc.New

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

Defined in Capnp.Gen.Capnp.Rpc.New

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

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "array" 'Slot Value (List Value) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json.New

HasVariant "bind" 'Slot Brand'Scope (List Brand'Binding) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Schema.New

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

Defined in Capnp.Gen.Capnp.Schema.New

HasVariant "object" 'Slot Value (List Value'Field) Source # 
Instance details

Defined in Capnp.Gen.Capnp.Compat.Json.New

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

Defined in Capnp.Gen.Capnp.Rpc.New

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

Defined in Capnp.Gen.Capnp.Rpc.New

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

Defined in Capnp.Gen.Capnp.Schema.New

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

Defined in Capnp.Gen.Capnp.Rpc.New