packages feed

capnp 0.10.0.1 → 0.11.0.0

raw patch · 107 files changed

+16022/−4474 lines, 107 filesdep +criteriondep +ghc-primdep +lifetimesdep −cpudep ~basedep ~networkdep ~supervisorsPVP ok

version bump matches the API change (PVP)

Dependencies added: criterion, ghc-prim, lifetimes

Dependencies removed: cpu

Dependency ranges changed: base, network, supervisors

API changes (from Hackage documentation)

+ Capnp.Convert: msgToParsed :: forall a m pa. (ReadCtx m 'Const, IsStruct a, Parse a pa) => Message 'Const -> m pa
+ Capnp.Convert: msgToRaw :: forall a m mut. (ReadCtx m mut, IsStruct a) => Message mut -> m (Raw mut a)
+ Capnp.Convert: parsedToBS :: forall a m pa s. (RWCtx m s, IsStruct a, Parse a pa) => pa -> m ByteString
+ Capnp.Convert: parsedToBuilder :: forall a m pa s. (RWCtx m s, IsStruct a, Parse a pa) => pa -> m Builder
+ Capnp.Convert: parsedToLBS :: forall a m pa s. (RWCtx m s, IsStruct a, Parse a pa) => pa -> m ByteString
+ Capnp.Convert: parsedToMsg :: forall a m pa s. (RWCtx m s, IsStruct a, Parse a pa) => pa -> m (Message ('Mut s))
+ Capnp.Convert: parsedToRaw :: forall a m pa s. (RWCtx m s, IsStruct a, Parse a pa) => pa -> m (Raw ('Mut s) a)
+ Capnp.Fields: -- generated struct types (in this case <tt>a</tt>), this is typically
+ Capnp.Fields: -- type with other <tt>Raw</tt> values as arguments.
+ Capnp.Fields: -- type.
+ Capnp.Fields: -- uninhabitied, and used to define instances and/or act as a phantom
+ Capnp.Fields: -- | Concrete view into a union embedded in a message. This will be a sum
+ Capnp.Fields: DataFieldLoc :: !BitCount -> !Word16 -> !Word64 -> !Word64 -> DataFieldLoc (sz :: DataSz)
+ Capnp.Fields: Field :: FieldLoc k (ReprFor b) -> Field (k :: FieldKind) a b
+ Capnp.Fields: Group :: FieldKind
+ Capnp.Fields: Slot :: FieldKind
+ Capnp.Fields: Variant :: !Field k a b -> !Word16 -> Variant (k :: FieldKind) a b
+ Capnp.Fields: [DataField] :: IsWord (UntypedData a) => DataFieldLoc a -> FieldLoc 'Slot ('Data a)
+ Capnp.Fields: [GroupField] :: FieldLoc 'Group ('Ptr ('Just 'Struct))
+ Capnp.Fields: [PtrField] :: IsPtrRepr a => Word16 -> FieldLoc 'Slot ('Ptr a)
+ Capnp.Fields: [VoidField] :: FieldLoc 'Slot ('Data 'Sz0)
+ Capnp.Fields: [defaultValue] :: DataFieldLoc (sz :: DataSz) -> !Word64
+ Capnp.Fields: [field] :: Variant (k :: FieldKind) a b -> !Field k a b
+ Capnp.Fields: [index] :: DataFieldLoc (sz :: DataSz) -> !Word16
+ Capnp.Fields: [mask] :: DataFieldLoc (sz :: DataSz) -> !Word64
+ Capnp.Fields: [shift] :: DataFieldLoc (sz :: DataSz) -> !BitCount
+ Capnp.Fields: [tagValue] :: Variant (k :: FieldKind) a b -> !Word16
+ Capnp.Fields: class IsStruct a => HasField (name :: Symbol) k a b | a name -> k b
+ Capnp.Fields: class IsStruct a => HasUnion a where {
+ Capnp.Fields: class HasUnion a => HasVariant (name :: Symbol) k a b | a name -> k b
+ Capnp.Fields: data DataFieldLoc (sz :: DataSz)
+ Capnp.Fields: data FieldKind
+ Capnp.Fields: data FieldLoc (k :: FieldKind) (r :: Repr)
+ Capnp.Fields: data Variant (k :: FieldKind) a b
+ Capnp.Fields: data family RawWhich (mut :: Mutability) a;
+ Capnp.Fields: fieldByLabel :: HasField name k a b => Field k a b
+ Capnp.Fields: instance (Capnp.New.Classes.Allocate (Capnp.Fields.Which a), Capnp.New.Classes.AllocHint (Capnp.Fields.Which a) GHC.Types.~ (), Capnp.New.Classes.Parse (Capnp.Fields.Which a) p) => Capnp.New.Classes.EstimateAlloc (Capnp.Fields.Which a) p
+ Capnp.Fields: instance (Capnp.New.Classes.Allocate a, Capnp.Fields.HasUnion a, Capnp.Repr.IsStruct (Capnp.Fields.Which a)) => Capnp.New.Classes.Allocate (Capnp.Fields.Which a)
+ Capnp.Fields: instance Capnp.Fields.HasField name k a b => GHC.OverloadedLabels.IsLabel name (Capnp.Fields.Field k a b)
+ Capnp.Fields: instance Capnp.Fields.HasVariant name k a b => GHC.OverloadedLabels.IsLabel name (Capnp.Fields.Variant k a b)
+ Capnp.Fields: instance GHC.Classes.Eq Capnp.Fields.FieldKind
+ Capnp.Fields: instance GHC.Read.Read Capnp.Fields.FieldKind
+ Capnp.Fields: instance GHC.Show.Show Capnp.Fields.FieldKind
+ Capnp.Fields: internalWhich :: (HasUnion a, ReadCtx m mut) => Word16 -> Raw mut a -> m (RawWhich mut a)
+ Capnp.Fields: newtype Field (k :: FieldKind) a b
+ Capnp.Fields: unionField :: HasUnion a => Field 'Slot a Word16
+ Capnp.Fields: variantByLabel :: HasVariant name k a b => Variant k a b
+ Capnp.Fields: }
+ Capnp.Gen.Capnp.Compat.Json.New: data DiscriminatorOptions
+ Capnp.Gen.Capnp.Compat.Json.New: data FlattenOptions
+ Capnp.Gen.Capnp.Compat.Json.New: data Value
+ Capnp.Gen.Capnp.Compat.Json.New: data Value'Call
+ Capnp.Gen.Capnp.Compat.Json.New: data Value'Field
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.Fields.HasField "function" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Compat.Json.New.Value'Call Capnp.New.Basics.Text
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.Fields.HasField "name" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Compat.Json.New.DiscriminatorOptions Capnp.New.Basics.Text
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.Fields.HasField "name" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Compat.Json.New.Value'Field Capnp.New.Basics.Text
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.Fields.HasField "params" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Compat.Json.New.Value'Call (Capnp.Repr.List Capnp.Gen.Capnp.Compat.Json.New.Value)
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.Fields.HasField "prefix" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Compat.Json.New.FlattenOptions Capnp.New.Basics.Text
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.Fields.HasField "value" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Compat.Json.New.Value'Field Capnp.Gen.Capnp.Compat.Json.New.Value
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.Fields.HasField "valueName" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Compat.Json.New.DiscriminatorOptions Capnp.New.Basics.Text
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.Fields.HasUnion Capnp.Gen.Capnp.Compat.Json.New.Value
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.Fields.HasVariant "array" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Compat.Json.New.Value (Capnp.Repr.List Capnp.Gen.Capnp.Compat.Json.New.Value)
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.Fields.HasVariant "boolean" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Compat.Json.New.Value GHC.Types.Bool
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.Fields.HasVariant "call" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Compat.Json.New.Value Capnp.Gen.Capnp.Compat.Json.New.Value'Call
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.Fields.HasVariant "null" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Compat.Json.New.Value ()
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.Fields.HasVariant "number" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Compat.Json.New.Value GHC.Types.Double
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.Fields.HasVariant "object" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Compat.Json.New.Value (Capnp.Repr.List Capnp.Gen.Capnp.Compat.Json.New.Value'Field)
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.Fields.HasVariant "string" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Compat.Json.New.Value Capnp.New.Basics.Text
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Compat.Json.New.DiscriminatorOptions
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Compat.Json.New.FlattenOptions
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Compat.Json.New.Value
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Compat.Json.New.Value'Call
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Compat.Json.New.Value'Field
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Compat.Json.New.DiscriminatorOptions
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Compat.Json.New.FlattenOptions
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Compat.Json.New.Value
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Compat.Json.New.Value'Call
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Compat.Json.New.Value'Field
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Compat.Json.New.DiscriminatorOptions (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.DiscriminatorOptions)
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Compat.Json.New.FlattenOptions (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.FlattenOptions)
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Compat.Json.New.Value (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.Value)
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Compat.Json.New.Value'Call (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.Value'Call)
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Compat.Json.New.Value'Field (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.Value'Field)
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Compat.Json.New.DiscriminatorOptions (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.DiscriminatorOptions)
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Compat.Json.New.FlattenOptions (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.FlattenOptions)
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Compat.Json.New.Value (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.Value)
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Compat.Json.New.Value'Call (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.Value'Call)
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Compat.Json.New.Value'Field (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.Value'Field)
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.Marshal (Capnp.Fields.Which Capnp.Gen.Capnp.Compat.Json.New.Value) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Compat.Json.New.Value))
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Compat.Json.New.DiscriminatorOptions (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.DiscriminatorOptions)
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Compat.Json.New.FlattenOptions (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.FlattenOptions)
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Compat.Json.New.Value (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.Value)
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Compat.Json.New.Value'Call (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.Value'Call)
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Compat.Json.New.Value'Field (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.Value'Field)
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.Parse (Capnp.Fields.Which Capnp.Gen.Capnp.Compat.Json.New.Value) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Compat.Json.New.Value))
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Compat.Json.New.DiscriminatorOptions (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.DiscriminatorOptions)
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Compat.Json.New.FlattenOptions (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.FlattenOptions)
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Compat.Json.New.Value (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.Value)
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Compat.Json.New.Value'Call (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.Value'Call)
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Compat.Json.New.Value'Field (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.Value'Field)
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Compat.Json.New.DiscriminatorOptions
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Compat.Json.New.FlattenOptions
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Compat.Json.New.Value
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Compat.Json.New.Value'Call
+ Capnp.Gen.Capnp.Compat.Json.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Compat.Json.New.Value'Field
+ Capnp.Gen.Capnp.Compat.Json.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Compat.Json.New.Value))
+ Capnp.Gen.Capnp.Compat.Json.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.DiscriminatorOptions)
+ Capnp.Gen.Capnp.Compat.Json.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.FlattenOptions)
+ Capnp.Gen.Capnp.Compat.Json.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.Value'Call)
+ Capnp.Gen.Capnp.Compat.Json.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.Value'Field)
+ Capnp.Gen.Capnp.Compat.Json.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.Value)
+ Capnp.Gen.Capnp.Compat.Json.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Compat.Json.New.Value))
+ Capnp.Gen.Capnp.Compat.Json.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.DiscriminatorOptions)
+ Capnp.Gen.Capnp.Compat.Json.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.FlattenOptions)
+ Capnp.Gen.Capnp.Compat.Json.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.Value'Call)
+ Capnp.Gen.Capnp.Compat.Json.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.Value'Field)
+ Capnp.Gen.Capnp.Compat.Json.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.Value)
+ Capnp.Gen.Capnp.Compat.Json.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Compat.Json.New.Value))
+ Capnp.Gen.Capnp.Compat.Json.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.DiscriminatorOptions)
+ Capnp.Gen.Capnp.Compat.Json.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.FlattenOptions)
+ Capnp.Gen.Capnp.Compat.Json.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.Value'Call)
+ Capnp.Gen.Capnp.Compat.Json.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.Value'Field)
+ Capnp.Gen.Capnp.Compat.Json.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Compat.Json.New.Value)
+ Capnp.Gen.Capnp.Persistent.New: data Persistent sturdyRef owner
+ Capnp.Gen.Capnp.Persistent.New: data Persistent'SaveParams sturdyRef owner
+ Capnp.Gen.Capnp.Persistent.New: data Persistent'SaveResults sturdyRef owner
+ Capnp.Gen.Capnp.Persistent.New: data RealmGateway internalRef externalRef internalOwner externalOwner
+ Capnp.Gen.Capnp.Persistent.New: data RealmGateway'export'params internalRef externalRef internalOwner externalOwner
+ Capnp.Gen.Capnp.Persistent.New: data RealmGateway'import'params internalRef externalRef internalOwner externalOwner
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam internalRef, Capnp.New.Constraints.TypeParam externalRef, Capnp.New.Constraints.TypeParam internalOwner, Capnp.New.Constraints.TypeParam externalOwner) => Capnp.Fields.HasField "cap" 'Capnp.Fields.Slot (Capnp.Gen.Capnp.Persistent.New.RealmGateway'export'params internalRef externalRef internalOwner externalOwner) (Capnp.Gen.Capnp.Persistent.New.Persistent internalRef internalOwner)
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam internalRef, Capnp.New.Constraints.TypeParam externalRef, Capnp.New.Constraints.TypeParam internalOwner, Capnp.New.Constraints.TypeParam externalOwner) => Capnp.Fields.HasField "cap" 'Capnp.Fields.Slot (Capnp.Gen.Capnp.Persistent.New.RealmGateway'import'params internalRef externalRef internalOwner externalOwner) (Capnp.Gen.Capnp.Persistent.New.Persistent externalRef externalOwner)
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam internalRef, Capnp.New.Constraints.TypeParam externalRef, Capnp.New.Constraints.TypeParam internalOwner, Capnp.New.Constraints.TypeParam externalOwner) => Capnp.Fields.HasField "params" 'Capnp.Fields.Slot (Capnp.Gen.Capnp.Persistent.New.RealmGateway'export'params internalRef externalRef internalOwner externalOwner) (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveParams externalRef externalOwner)
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam internalRef, Capnp.New.Constraints.TypeParam externalRef, Capnp.New.Constraints.TypeParam internalOwner, Capnp.New.Constraints.TypeParam externalOwner) => Capnp.Fields.HasField "params" 'Capnp.Fields.Slot (Capnp.Gen.Capnp.Persistent.New.RealmGateway'import'params internalRef externalRef internalOwner externalOwner) (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveParams internalRef internalOwner)
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam internalRef, Capnp.New.Constraints.TypeParam externalRef, Capnp.New.Constraints.TypeParam internalOwner, Capnp.New.Constraints.TypeParam externalOwner) => Capnp.New.Classes.Allocate (Capnp.Gen.Capnp.Persistent.New.RealmGateway'export'params internalRef externalRef internalOwner externalOwner)
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam internalRef, Capnp.New.Constraints.TypeParam externalRef, Capnp.New.Constraints.TypeParam internalOwner, Capnp.New.Constraints.TypeParam externalOwner) => Capnp.New.Classes.Allocate (Capnp.Gen.Capnp.Persistent.New.RealmGateway'import'params internalRef externalRef internalOwner externalOwner)
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam internalRef, Capnp.New.Constraints.TypeParam externalRef, Capnp.New.Constraints.TypeParam internalOwner, Capnp.New.Constraints.TypeParam externalOwner) => Capnp.New.Classes.AllocateList (Capnp.Gen.Capnp.Persistent.New.RealmGateway'export'params internalRef externalRef internalOwner externalOwner)
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam internalRef, Capnp.New.Constraints.TypeParam externalRef, Capnp.New.Constraints.TypeParam internalOwner, Capnp.New.Constraints.TypeParam externalOwner) => Capnp.New.Classes.AllocateList (Capnp.Gen.Capnp.Persistent.New.RealmGateway'import'params internalRef externalRef internalOwner externalOwner)
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam internalRef, Capnp.New.Constraints.TypeParam externalRef, Capnp.New.Constraints.TypeParam internalOwner, Capnp.New.Constraints.TypeParam externalOwner) => Capnp.New.Classes.EstimateAlloc (Capnp.Gen.Capnp.Persistent.New.RealmGateway'export'params internalRef externalRef internalOwner externalOwner) (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.RealmGateway'export'params internalRef externalRef internalOwner externalOwner))
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam internalRef, Capnp.New.Constraints.TypeParam externalRef, Capnp.New.Constraints.TypeParam internalOwner, Capnp.New.Constraints.TypeParam externalOwner) => Capnp.New.Classes.EstimateAlloc (Capnp.Gen.Capnp.Persistent.New.RealmGateway'import'params internalRef externalRef internalOwner externalOwner) (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.RealmGateway'import'params internalRef externalRef internalOwner externalOwner))
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam internalRef, Capnp.New.Constraints.TypeParam externalRef, Capnp.New.Constraints.TypeParam internalOwner, Capnp.New.Constraints.TypeParam externalOwner) => Capnp.New.Classes.EstimateListAlloc (Capnp.Gen.Capnp.Persistent.New.RealmGateway'export'params internalRef externalRef internalOwner externalOwner) (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.RealmGateway'export'params internalRef externalRef internalOwner externalOwner))
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam internalRef, Capnp.New.Constraints.TypeParam externalRef, Capnp.New.Constraints.TypeParam internalOwner, Capnp.New.Constraints.TypeParam externalOwner) => Capnp.New.Classes.EstimateListAlloc (Capnp.Gen.Capnp.Persistent.New.RealmGateway'import'params internalRef externalRef internalOwner externalOwner) (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.RealmGateway'import'params internalRef externalRef internalOwner externalOwner))
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam internalRef, Capnp.New.Constraints.TypeParam externalRef, Capnp.New.Constraints.TypeParam internalOwner, Capnp.New.Constraints.TypeParam externalOwner) => Capnp.New.Classes.Marshal (Capnp.Gen.Capnp.Persistent.New.RealmGateway'export'params internalRef externalRef internalOwner externalOwner) (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.RealmGateway'export'params internalRef externalRef internalOwner externalOwner))
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam internalRef, Capnp.New.Constraints.TypeParam externalRef, Capnp.New.Constraints.TypeParam internalOwner, Capnp.New.Constraints.TypeParam externalOwner) => Capnp.New.Classes.Marshal (Capnp.Gen.Capnp.Persistent.New.RealmGateway'import'params internalRef externalRef internalOwner externalOwner) (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.RealmGateway'import'params internalRef externalRef internalOwner externalOwner))
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam internalRef, Capnp.New.Constraints.TypeParam externalRef, Capnp.New.Constraints.TypeParam internalOwner, Capnp.New.Constraints.TypeParam externalOwner) => Capnp.New.Classes.Parse (Capnp.Gen.Capnp.Persistent.New.RealmGateway internalRef externalRef internalOwner externalOwner) (Capnp.Repr.Methods.Client (Capnp.Gen.Capnp.Persistent.New.RealmGateway internalRef externalRef internalOwner externalOwner))
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam internalRef, Capnp.New.Constraints.TypeParam externalRef, Capnp.New.Constraints.TypeParam internalOwner, Capnp.New.Constraints.TypeParam externalOwner) => Capnp.New.Classes.Parse (Capnp.Gen.Capnp.Persistent.New.RealmGateway'export'params internalRef externalRef internalOwner externalOwner) (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.RealmGateway'export'params internalRef externalRef internalOwner externalOwner))
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam internalRef, Capnp.New.Constraints.TypeParam externalRef, Capnp.New.Constraints.TypeParam internalOwner, Capnp.New.Constraints.TypeParam externalOwner) => Capnp.New.Classes.Parse (Capnp.Gen.Capnp.Persistent.New.RealmGateway'import'params internalRef externalRef internalOwner externalOwner) (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.RealmGateway'import'params internalRef externalRef internalOwner externalOwner))
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam internalRef, Capnp.New.Constraints.TypeParam externalRef, Capnp.New.Constraints.TypeParam internalOwner, Capnp.New.Constraints.TypeParam externalOwner) => Capnp.New.Classes.TypedStruct (Capnp.Gen.Capnp.Persistent.New.RealmGateway'export'params internalRef externalRef internalOwner externalOwner)
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam internalRef, Capnp.New.Constraints.TypeParam externalRef, Capnp.New.Constraints.TypeParam internalOwner, Capnp.New.Constraints.TypeParam externalOwner) => Capnp.New.Classes.TypedStruct (Capnp.Gen.Capnp.Persistent.New.RealmGateway'import'params internalRef externalRef internalOwner externalOwner)
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam internalRef, Capnp.New.Constraints.TypeParam externalRef, Capnp.New.Constraints.TypeParam internalOwner, Capnp.New.Constraints.TypeParam externalOwner) => Capnp.Repr.Methods.HasMethod "export" (Capnp.Gen.Capnp.Persistent.New.RealmGateway internalRef externalRef internalOwner externalOwner) (Capnp.Gen.Capnp.Persistent.New.RealmGateway'export'params internalRef externalRef internalOwner externalOwner) (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveResults externalRef externalOwner)
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam internalRef, Capnp.New.Constraints.TypeParam externalRef, Capnp.New.Constraints.TypeParam internalOwner, Capnp.New.Constraints.TypeParam externalOwner) => Capnp.Repr.Methods.HasMethod "import_" (Capnp.Gen.Capnp.Persistent.New.RealmGateway internalRef externalRef internalOwner externalOwner) (Capnp.Gen.Capnp.Persistent.New.RealmGateway'import'params internalRef externalRef internalOwner externalOwner) (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveResults internalRef internalOwner)
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam sturdyRef, Capnp.New.Constraints.TypeParam owner) => Capnp.Fields.HasField "sealFor" 'Capnp.Fields.Slot (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveParams sturdyRef owner) owner
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam sturdyRef, Capnp.New.Constraints.TypeParam owner) => Capnp.Fields.HasField "sturdyRef" 'Capnp.Fields.Slot (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveResults sturdyRef owner) sturdyRef
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam sturdyRef, Capnp.New.Constraints.TypeParam owner) => Capnp.New.Classes.Allocate (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveParams sturdyRef owner)
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam sturdyRef, Capnp.New.Constraints.TypeParam owner) => Capnp.New.Classes.Allocate (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveResults sturdyRef owner)
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam sturdyRef, Capnp.New.Constraints.TypeParam owner) => Capnp.New.Classes.AllocateList (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveParams sturdyRef owner)
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam sturdyRef, Capnp.New.Constraints.TypeParam owner) => Capnp.New.Classes.AllocateList (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveResults sturdyRef owner)
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam sturdyRef, Capnp.New.Constraints.TypeParam owner) => Capnp.New.Classes.EstimateAlloc (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveParams sturdyRef owner) (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveParams sturdyRef owner))
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam sturdyRef, Capnp.New.Constraints.TypeParam owner) => Capnp.New.Classes.EstimateAlloc (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveResults sturdyRef owner) (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveResults sturdyRef owner))
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam sturdyRef, Capnp.New.Constraints.TypeParam owner) => Capnp.New.Classes.EstimateListAlloc (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveParams sturdyRef owner) (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveParams sturdyRef owner))
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam sturdyRef, Capnp.New.Constraints.TypeParam owner) => Capnp.New.Classes.EstimateListAlloc (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveResults sturdyRef owner) (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveResults sturdyRef owner))
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam sturdyRef, Capnp.New.Constraints.TypeParam owner) => Capnp.New.Classes.Marshal (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveParams sturdyRef owner) (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveParams sturdyRef owner))
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam sturdyRef, Capnp.New.Constraints.TypeParam owner) => Capnp.New.Classes.Marshal (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveResults sturdyRef owner) (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveResults sturdyRef owner))
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam sturdyRef, Capnp.New.Constraints.TypeParam owner) => Capnp.New.Classes.Parse (Capnp.Gen.Capnp.Persistent.New.Persistent sturdyRef owner) (Capnp.Repr.Methods.Client (Capnp.Gen.Capnp.Persistent.New.Persistent sturdyRef owner))
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam sturdyRef, Capnp.New.Constraints.TypeParam owner) => Capnp.New.Classes.Parse (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveParams sturdyRef owner) (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveParams sturdyRef owner))
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam sturdyRef, Capnp.New.Constraints.TypeParam owner) => Capnp.New.Classes.Parse (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveResults sturdyRef owner) (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveResults sturdyRef owner))
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam sturdyRef, Capnp.New.Constraints.TypeParam owner) => Capnp.New.Classes.TypedStruct (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveParams sturdyRef owner)
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam sturdyRef, Capnp.New.Constraints.TypeParam owner) => Capnp.New.Classes.TypedStruct (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveResults sturdyRef owner)
+ Capnp.Gen.Capnp.Persistent.New: instance (Capnp.New.Constraints.TypeParam sturdyRef, Capnp.New.Constraints.TypeParam owner) => Capnp.Repr.Methods.HasMethod "save" (Capnp.Gen.Capnp.Persistent.New.Persistent sturdyRef owner) (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveParams sturdyRef owner) (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveResults sturdyRef owner)
+ Capnp.Gen.Capnp.Persistent.New: instance (GHC.Classes.Eq (Capnp.Repr.Parsed.Parsed internalRef), GHC.Classes.Eq (Capnp.Repr.Parsed.Parsed externalRef), GHC.Classes.Eq (Capnp.Repr.Parsed.Parsed internalOwner), GHC.Classes.Eq (Capnp.Repr.Parsed.Parsed externalOwner)) => GHC.Classes.Eq (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.RealmGateway'export'params internalRef externalRef internalOwner externalOwner))
+ Capnp.Gen.Capnp.Persistent.New: instance (GHC.Classes.Eq (Capnp.Repr.Parsed.Parsed internalRef), GHC.Classes.Eq (Capnp.Repr.Parsed.Parsed externalRef), GHC.Classes.Eq (Capnp.Repr.Parsed.Parsed internalOwner), GHC.Classes.Eq (Capnp.Repr.Parsed.Parsed externalOwner)) => GHC.Classes.Eq (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.RealmGateway'import'params internalRef externalRef internalOwner externalOwner))
+ Capnp.Gen.Capnp.Persistent.New: instance (GHC.Classes.Eq (Capnp.Repr.Parsed.Parsed sturdyRef), GHC.Classes.Eq (Capnp.Repr.Parsed.Parsed owner)) => GHC.Classes.Eq (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveParams sturdyRef owner))
+ Capnp.Gen.Capnp.Persistent.New: instance (GHC.Classes.Eq (Capnp.Repr.Parsed.Parsed sturdyRef), GHC.Classes.Eq (Capnp.Repr.Parsed.Parsed owner)) => GHC.Classes.Eq (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveResults sturdyRef owner))
+ Capnp.Gen.Capnp.Persistent.New: instance (GHC.Show.Show (Capnp.Repr.Parsed.Parsed internalRef), GHC.Show.Show (Capnp.Repr.Parsed.Parsed externalRef), GHC.Show.Show (Capnp.Repr.Parsed.Parsed internalOwner), GHC.Show.Show (Capnp.Repr.Parsed.Parsed externalOwner)) => GHC.Show.Show (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.RealmGateway'export'params internalRef externalRef internalOwner externalOwner))
+ Capnp.Gen.Capnp.Persistent.New: instance (GHC.Show.Show (Capnp.Repr.Parsed.Parsed internalRef), GHC.Show.Show (Capnp.Repr.Parsed.Parsed externalRef), GHC.Show.Show (Capnp.Repr.Parsed.Parsed internalOwner), GHC.Show.Show (Capnp.Repr.Parsed.Parsed externalOwner)) => GHC.Show.Show (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.RealmGateway'import'params internalRef externalRef internalOwner externalOwner))
+ Capnp.Gen.Capnp.Persistent.New: instance (GHC.Show.Show (Capnp.Repr.Parsed.Parsed sturdyRef), GHC.Show.Show (Capnp.Repr.Parsed.Parsed owner)) => GHC.Show.Show (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveParams sturdyRef owner))
+ Capnp.Gen.Capnp.Persistent.New: instance (GHC.Show.Show (Capnp.Repr.Parsed.Parsed sturdyRef), GHC.Show.Show (Capnp.Repr.Parsed.Parsed owner)) => GHC.Show.Show (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveResults sturdyRef owner))
+ Capnp.Gen.Capnp.Persistent.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveParams sturdyRef owner))
+ Capnp.Gen.Capnp.Persistent.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.Persistent'SaveResults sturdyRef owner))
+ Capnp.Gen.Capnp.Persistent.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.RealmGateway'export'params internalRef externalRef internalOwner externalOwner))
+ Capnp.Gen.Capnp.Persistent.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed (Capnp.Gen.Capnp.Persistent.New.RealmGateway'import'params internalRef externalRef internalOwner externalOwner))
+ Capnp.Gen.Capnp.Rpc.New: Exception'Type'disconnected :: Exception'Type
+ Capnp.Gen.Capnp.Rpc.New: Exception'Type'failed :: Exception'Type
+ Capnp.Gen.Capnp.Rpc.New: Exception'Type'overloaded :: Exception'Type
+ Capnp.Gen.Capnp.Rpc.New: Exception'Type'unimplemented :: Exception'Type
+ Capnp.Gen.Capnp.Rpc.New: Exception'Type'unknown' :: Word16 -> Exception'Type
+ Capnp.Gen.Capnp.Rpc.New: data Accept
+ Capnp.Gen.Capnp.Rpc.New: data Bootstrap
+ Capnp.Gen.Capnp.Rpc.New: data Call
+ Capnp.Gen.Capnp.Rpc.New: data Call'sendResultsTo
+ Capnp.Gen.Capnp.Rpc.New: data CapDescriptor
+ Capnp.Gen.Capnp.Rpc.New: data Disembargo
+ Capnp.Gen.Capnp.Rpc.New: data Disembargo'context
+ Capnp.Gen.Capnp.Rpc.New: data Exception
+ Capnp.Gen.Capnp.Rpc.New: data Exception'Type
+ Capnp.Gen.Capnp.Rpc.New: data Finish
+ Capnp.Gen.Capnp.Rpc.New: data Join
+ Capnp.Gen.Capnp.Rpc.New: data Message
+ Capnp.Gen.Capnp.Rpc.New: data MessageTarget
+ Capnp.Gen.Capnp.Rpc.New: data Payload
+ Capnp.Gen.Capnp.Rpc.New: data PromisedAnswer
+ Capnp.Gen.Capnp.Rpc.New: data PromisedAnswer'Op
+ Capnp.Gen.Capnp.Rpc.New: data Provide
+ Capnp.Gen.Capnp.Rpc.New: data Release
+ Capnp.Gen.Capnp.Rpc.New: data Resolve
+ Capnp.Gen.Capnp.Rpc.New: data Return
+ Capnp.Gen.Capnp.Rpc.New: data ThirdPartyCapDescriptor
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Classes.IsWord Capnp.Gen.Capnp.Rpc.New.Exception'Type
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "allowThirdPartyTailCall" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Call GHC.Types.Bool
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "answerId" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Return GHC.Word.Word32
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "attachedFd" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.CapDescriptor GHC.Word.Word8
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "capTable" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Payload (Capnp.Repr.List Capnp.Gen.Capnp.Rpc.New.CapDescriptor)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "content" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Payload Capnp.New.Basics.AnyPointer
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "context" 'Capnp.Fields.Group Capnp.Gen.Capnp.Rpc.New.Disembargo Capnp.Gen.Capnp.Rpc.New.Disembargo'context
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "deprecatedObjectId" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Bootstrap Capnp.New.Basics.AnyPointer
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "embargo" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Accept GHC.Types.Bool
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "id" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Release GHC.Word.Word32
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "id" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.ThirdPartyCapDescriptor Capnp.New.Basics.AnyPointer
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "interfaceId" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Call GHC.Word.Word64
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "keyPart" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Join Capnp.New.Basics.AnyPointer
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "methodId" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Call GHC.Word.Word16
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "obsoleteDurability" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Exception GHC.Word.Word16
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "obsoleteIsCallersFault" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Exception GHC.Types.Bool
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "params" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Call Capnp.Gen.Capnp.Rpc.New.Payload
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "promiseId" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Resolve GHC.Word.Word32
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "provision" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Accept Capnp.New.Basics.AnyPointer
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "questionId" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Accept GHC.Word.Word32
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "questionId" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Bootstrap GHC.Word.Word32
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "questionId" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Call GHC.Word.Word32
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "questionId" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Finish GHC.Word.Word32
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "questionId" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Join GHC.Word.Word32
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "questionId" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.PromisedAnswer GHC.Word.Word32
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "questionId" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Provide GHC.Word.Word32
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "reason" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Exception Capnp.New.Basics.Text
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "recipient" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Provide Capnp.New.Basics.AnyPointer
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "referenceCount" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Release GHC.Word.Word32
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "releaseParamCaps" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Return GHC.Types.Bool
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "releaseResultCaps" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Finish GHC.Types.Bool
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "sendResultsTo" 'Capnp.Fields.Group Capnp.Gen.Capnp.Rpc.New.Call Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "target" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Call Capnp.Gen.Capnp.Rpc.New.MessageTarget
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "target" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Disembargo Capnp.Gen.Capnp.Rpc.New.MessageTarget
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "target" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Join Capnp.Gen.Capnp.Rpc.New.MessageTarget
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "target" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Provide Capnp.Gen.Capnp.Rpc.New.MessageTarget
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "transform" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.PromisedAnswer (Capnp.Repr.List Capnp.Gen.Capnp.Rpc.New.PromisedAnswer'Op)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "type_" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Exception Capnp.Gen.Capnp.Rpc.New.Exception'Type
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasField "vineId" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.ThirdPartyCapDescriptor GHC.Word.Word32
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasUnion Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasUnion Capnp.Gen.Capnp.Rpc.New.CapDescriptor
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasUnion Capnp.Gen.Capnp.Rpc.New.Disembargo'context
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasUnion Capnp.Gen.Capnp.Rpc.New.Message
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasUnion Capnp.Gen.Capnp.Rpc.New.MessageTarget
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasUnion Capnp.Gen.Capnp.Rpc.New.PromisedAnswer'Op
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasUnion Capnp.Gen.Capnp.Rpc.New.Resolve
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasUnion Capnp.Gen.Capnp.Rpc.New.Return
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "abort" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Message Capnp.Gen.Capnp.Rpc.New.Exception
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "accept" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Disembargo'context ()
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "accept" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Message Capnp.Gen.Capnp.Rpc.New.Accept
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "acceptFromThirdParty" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Return Capnp.New.Basics.AnyPointer
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "bootstrap" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Message Capnp.Gen.Capnp.Rpc.New.Bootstrap
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "call" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Message Capnp.Gen.Capnp.Rpc.New.Call
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "caller" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo ()
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "canceled" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Return ()
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "cap" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Resolve Capnp.Gen.Capnp.Rpc.New.CapDescriptor
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "disembargo" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Message Capnp.Gen.Capnp.Rpc.New.Disembargo
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "exception" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Resolve Capnp.Gen.Capnp.Rpc.New.Exception
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "exception" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Return Capnp.Gen.Capnp.Rpc.New.Exception
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "finish" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Message Capnp.Gen.Capnp.Rpc.New.Finish
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "getPointerField" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.PromisedAnswer'Op GHC.Word.Word16
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "importedCap" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.MessageTarget GHC.Word.Word32
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "join" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Message Capnp.Gen.Capnp.Rpc.New.Join
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "none" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.CapDescriptor ()
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "noop" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.PromisedAnswer'Op ()
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "obsoleteDelete" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Message Capnp.New.Basics.AnyPointer
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "obsoleteSave" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Message Capnp.New.Basics.AnyPointer
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "promisedAnswer" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.MessageTarget Capnp.Gen.Capnp.Rpc.New.PromisedAnswer
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "provide" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Disembargo'context GHC.Word.Word32
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "provide" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Message Capnp.Gen.Capnp.Rpc.New.Provide
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "receiverAnswer" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.CapDescriptor Capnp.Gen.Capnp.Rpc.New.PromisedAnswer
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "receiverHosted" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.CapDescriptor GHC.Word.Word32
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "receiverLoopback" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Disembargo'context GHC.Word.Word32
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "release" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Message Capnp.Gen.Capnp.Rpc.New.Release
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "resolve" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Message Capnp.Gen.Capnp.Rpc.New.Resolve
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "results" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Return Capnp.Gen.Capnp.Rpc.New.Payload
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "resultsSentElsewhere" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Return ()
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "return" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Message Capnp.Gen.Capnp.Rpc.New.Return
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "senderHosted" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.CapDescriptor GHC.Word.Word32
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "senderLoopback" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Disembargo'context GHC.Word.Word32
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "senderPromise" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.CapDescriptor GHC.Word.Word32
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "takeFromOtherQuestion" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Return GHC.Word.Word32
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "thirdParty" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo Capnp.New.Basics.AnyPointer
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "thirdPartyHosted" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.CapDescriptor Capnp.Gen.Capnp.Rpc.New.ThirdPartyCapDescriptor
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "unimplemented" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Message Capnp.Gen.Capnp.Rpc.New.Message
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.Fields.HasVariant "yourself" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo ()
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Rpc.New.Accept
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Rpc.New.Bootstrap
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Rpc.New.Call
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Rpc.New.CapDescriptor
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Rpc.New.Disembargo
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Rpc.New.Disembargo'context
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Rpc.New.Exception
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Rpc.New.Finish
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Rpc.New.Join
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Rpc.New.Message
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Rpc.New.MessageTarget
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Rpc.New.Payload
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Rpc.New.PromisedAnswer
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Rpc.New.PromisedAnswer'Op
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Rpc.New.Provide
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Rpc.New.Release
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Rpc.New.Resolve
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Rpc.New.Return
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Rpc.New.ThirdPartyCapDescriptor
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Rpc.New.Accept
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Rpc.New.Bootstrap
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Rpc.New.Call
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Rpc.New.CapDescriptor
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Rpc.New.Disembargo
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Rpc.New.Disembargo'context
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Rpc.New.Exception
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Rpc.New.Exception'Type
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Rpc.New.Finish
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Rpc.New.Join
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Rpc.New.Message
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Rpc.New.MessageTarget
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Rpc.New.Payload
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Rpc.New.PromisedAnswer
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Rpc.New.PromisedAnswer'Op
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Rpc.New.Provide
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Rpc.New.Release
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Rpc.New.Resolve
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Rpc.New.Return
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Rpc.New.ThirdPartyCapDescriptor
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Rpc.New.Accept (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Accept)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Rpc.New.Bootstrap (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Bootstrap)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Rpc.New.Call (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Call)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Rpc.New.CapDescriptor (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.CapDescriptor)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Rpc.New.Disembargo (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Disembargo)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Rpc.New.Disembargo'context (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Disembargo'context)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Rpc.New.Exception (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Exception)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Rpc.New.Finish (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Finish)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Rpc.New.Join (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Join)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Rpc.New.Message (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Message)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Rpc.New.MessageTarget (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.MessageTarget)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Rpc.New.Payload (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Payload)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Rpc.New.PromisedAnswer (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.PromisedAnswer)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Rpc.New.PromisedAnswer'Op (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.PromisedAnswer'Op)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Rpc.New.Provide (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Provide)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Rpc.New.Release (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Release)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Rpc.New.Resolve (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Resolve)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Rpc.New.Return (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Return)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Rpc.New.ThirdPartyCapDescriptor (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.ThirdPartyCapDescriptor)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Rpc.New.Accept (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Accept)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Rpc.New.Bootstrap (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Bootstrap)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Rpc.New.Call (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Call)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Rpc.New.CapDescriptor (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.CapDescriptor)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Rpc.New.Disembargo (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Disembargo)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Rpc.New.Disembargo'context (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Disembargo'context)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Rpc.New.Exception (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Exception)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Rpc.New.Exception'Type Capnp.Gen.Capnp.Rpc.New.Exception'Type
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Rpc.New.Finish (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Finish)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Rpc.New.Join (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Join)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Rpc.New.Message (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Message)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Rpc.New.MessageTarget (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.MessageTarget)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Rpc.New.Payload (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Payload)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Rpc.New.PromisedAnswer (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.PromisedAnswer)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Rpc.New.PromisedAnswer'Op (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.PromisedAnswer'Op)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Rpc.New.Provide (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Provide)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Rpc.New.Release (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Release)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Rpc.New.Resolve (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Resolve)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Rpc.New.Return (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Return)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Rpc.New.ThirdPartyCapDescriptor (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.ThirdPartyCapDescriptor)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo))
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.CapDescriptor) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.CapDescriptor))
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Disembargo'context) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Disembargo'context))
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Message) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Message))
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.MessageTarget) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.MessageTarget))
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.PromisedAnswer'Op) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.PromisedAnswer'Op))
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Resolve) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Resolve))
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Return) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Return))
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Rpc.New.Accept (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Accept)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Rpc.New.Bootstrap (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Bootstrap)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Rpc.New.Call (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Call)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Rpc.New.CapDescriptor (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.CapDescriptor)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Rpc.New.Disembargo (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Disembargo)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Rpc.New.Disembargo'context (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Disembargo'context)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Rpc.New.Exception (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Exception)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Rpc.New.Finish (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Finish)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Rpc.New.Join (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Join)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Rpc.New.Message (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Message)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Rpc.New.MessageTarget (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.MessageTarget)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Rpc.New.Payload (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Payload)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Rpc.New.PromisedAnswer (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.PromisedAnswer)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Rpc.New.PromisedAnswer'Op (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.PromisedAnswer'Op)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Rpc.New.Provide (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Provide)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Rpc.New.Release (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Release)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Rpc.New.Resolve (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Resolve)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Rpc.New.Return (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Return)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Rpc.New.ThirdPartyCapDescriptor (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.ThirdPartyCapDescriptor)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo))
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.CapDescriptor) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.CapDescriptor))
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Disembargo'context) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Disembargo'context))
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Message) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Message))
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.MessageTarget) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.MessageTarget))
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.PromisedAnswer'Op) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.PromisedAnswer'Op))
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Resolve) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Resolve))
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Return) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Return))
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Rpc.New.Accept (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Accept)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Rpc.New.Bootstrap (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Bootstrap)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Rpc.New.Call (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Call)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Rpc.New.CapDescriptor (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.CapDescriptor)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Rpc.New.Disembargo (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Disembargo)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Rpc.New.Disembargo'context (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Disembargo'context)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Rpc.New.Exception (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Exception)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Rpc.New.Exception'Type Capnp.Gen.Capnp.Rpc.New.Exception'Type
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Rpc.New.Finish (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Finish)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Rpc.New.Join (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Join)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Rpc.New.Message (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Message)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Rpc.New.MessageTarget (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.MessageTarget)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Rpc.New.Payload (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Payload)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Rpc.New.PromisedAnswer (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.PromisedAnswer)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Rpc.New.PromisedAnswer'Op (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.PromisedAnswer'Op)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Rpc.New.Provide (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Provide)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Rpc.New.Release (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Release)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Rpc.New.Resolve (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Resolve)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Rpc.New.Return (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Return)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Rpc.New.ThirdPartyCapDescriptor (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.ThirdPartyCapDescriptor)
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Rpc.New.Accept
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Rpc.New.Bootstrap
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Rpc.New.Call
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Rpc.New.CapDescriptor
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Rpc.New.Disembargo
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Rpc.New.Disembargo'context
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Rpc.New.Exception
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Rpc.New.Finish
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Rpc.New.Join
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Rpc.New.Message
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Rpc.New.MessageTarget
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Rpc.New.Payload
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Rpc.New.PromisedAnswer
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Rpc.New.PromisedAnswer'Op
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Rpc.New.Provide
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Rpc.New.Release
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Rpc.New.Resolve
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Rpc.New.Return
+ Capnp.Gen.Capnp.Rpc.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Rpc.New.ThirdPartyCapDescriptor
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo))
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.CapDescriptor))
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Disembargo'context))
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Message))
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.MessageTarget))
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.PromisedAnswer'Op))
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Resolve))
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Return))
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Accept)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Bootstrap)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Call)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.CapDescriptor)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Disembargo'context)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Disembargo)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Exception)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Finish)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Join)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Message)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.MessageTarget)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Payload)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.PromisedAnswer'Op)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.PromisedAnswer)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Provide)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Release)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Resolve)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Return)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.ThirdPartyCapDescriptor)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Classes.Eq Capnp.Gen.Capnp.Rpc.New.Exception'Type
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Enum.Enum Capnp.Gen.Capnp.Rpc.New.Exception'Type
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo))
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.CapDescriptor))
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Disembargo'context))
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Message))
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.MessageTarget))
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.PromisedAnswer'Op))
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Resolve))
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Return))
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Accept)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Bootstrap)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Call)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.CapDescriptor)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Disembargo'context)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Disembargo)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Exception)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Finish)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Join)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Message)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.MessageTarget)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Payload)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.PromisedAnswer'Op)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.PromisedAnswer)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Provide)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Release)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Resolve)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Return)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.ThirdPartyCapDescriptor)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo))
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.CapDescriptor))
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Disembargo'context))
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Message))
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.MessageTarget))
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.PromisedAnswer'Op))
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Resolve))
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Rpc.New.Return))
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Accept)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Bootstrap)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Call'sendResultsTo)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Call)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.CapDescriptor)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Disembargo'context)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Disembargo)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Exception)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Finish)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Join)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Message)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.MessageTarget)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Payload)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.PromisedAnswer'Op)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.PromisedAnswer)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Provide)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Release)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Resolve)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.Return)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Rpc.New.ThirdPartyCapDescriptor)
+ Capnp.Gen.Capnp.Rpc.New: instance GHC.Show.Show Capnp.Gen.Capnp.Rpc.New.Exception'Type
+ Capnp.Gen.Capnp.RpcTwoparty.New: Side'client :: Side
+ Capnp.Gen.Capnp.RpcTwoparty.New: Side'server :: Side
+ Capnp.Gen.Capnp.RpcTwoparty.New: Side'unknown' :: Word16 -> Side
+ Capnp.Gen.Capnp.RpcTwoparty.New: data JoinKeyPart
+ Capnp.Gen.Capnp.RpcTwoparty.New: data JoinResult
+ Capnp.Gen.Capnp.RpcTwoparty.New: data ProvisionId
+ Capnp.Gen.Capnp.RpcTwoparty.New: data RecipientId
+ Capnp.Gen.Capnp.RpcTwoparty.New: data Side
+ Capnp.Gen.Capnp.RpcTwoparty.New: data ThirdPartyCapId
+ Capnp.Gen.Capnp.RpcTwoparty.New: data VatId
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.Classes.IsWord Capnp.Gen.Capnp.RpcTwoparty.New.Side
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.Fields.HasField "cap" 'Capnp.Fields.Slot Capnp.Gen.Capnp.RpcTwoparty.New.JoinResult Capnp.New.Basics.AnyPointer
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.Fields.HasField "joinId" 'Capnp.Fields.Slot Capnp.Gen.Capnp.RpcTwoparty.New.JoinKeyPart GHC.Word.Word32
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.Fields.HasField "joinId" 'Capnp.Fields.Slot Capnp.Gen.Capnp.RpcTwoparty.New.JoinResult GHC.Word.Word32
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.Fields.HasField "joinId" 'Capnp.Fields.Slot Capnp.Gen.Capnp.RpcTwoparty.New.ProvisionId GHC.Word.Word32
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.Fields.HasField "partCount" 'Capnp.Fields.Slot Capnp.Gen.Capnp.RpcTwoparty.New.JoinKeyPart GHC.Word.Word16
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.Fields.HasField "partNum" 'Capnp.Fields.Slot Capnp.Gen.Capnp.RpcTwoparty.New.JoinKeyPart GHC.Word.Word16
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.Fields.HasField "side" 'Capnp.Fields.Slot Capnp.Gen.Capnp.RpcTwoparty.New.VatId Capnp.Gen.Capnp.RpcTwoparty.New.Side
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.Fields.HasField "succeeded" 'Capnp.Fields.Slot Capnp.Gen.Capnp.RpcTwoparty.New.JoinResult GHC.Types.Bool
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.RpcTwoparty.New.JoinKeyPart
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.RpcTwoparty.New.JoinResult
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.RpcTwoparty.New.ProvisionId
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.RpcTwoparty.New.RecipientId
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.RpcTwoparty.New.ThirdPartyCapId
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.RpcTwoparty.New.VatId
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.RpcTwoparty.New.JoinKeyPart
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.RpcTwoparty.New.JoinResult
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.RpcTwoparty.New.ProvisionId
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.RpcTwoparty.New.RecipientId
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.RpcTwoparty.New.Side
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.RpcTwoparty.New.ThirdPartyCapId
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.RpcTwoparty.New.VatId
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.RpcTwoparty.New.JoinKeyPart (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.JoinKeyPart)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.RpcTwoparty.New.JoinResult (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.JoinResult)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.RpcTwoparty.New.ProvisionId (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.ProvisionId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.RpcTwoparty.New.RecipientId (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.RecipientId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.RpcTwoparty.New.ThirdPartyCapId (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.ThirdPartyCapId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.RpcTwoparty.New.VatId (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.VatId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.RpcTwoparty.New.JoinKeyPart (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.JoinKeyPart)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.RpcTwoparty.New.JoinResult (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.JoinResult)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.RpcTwoparty.New.ProvisionId (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.ProvisionId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.RpcTwoparty.New.RecipientId (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.RecipientId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.RpcTwoparty.New.Side Capnp.Gen.Capnp.RpcTwoparty.New.Side
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.RpcTwoparty.New.ThirdPartyCapId (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.ThirdPartyCapId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.RpcTwoparty.New.VatId (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.VatId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.RpcTwoparty.New.JoinKeyPart (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.JoinKeyPart)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.RpcTwoparty.New.JoinResult (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.JoinResult)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.RpcTwoparty.New.ProvisionId (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.ProvisionId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.RpcTwoparty.New.RecipientId (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.RecipientId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.RpcTwoparty.New.ThirdPartyCapId (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.ThirdPartyCapId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.RpcTwoparty.New.VatId (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.VatId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.RpcTwoparty.New.JoinKeyPart (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.JoinKeyPart)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.RpcTwoparty.New.JoinResult (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.JoinResult)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.RpcTwoparty.New.ProvisionId (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.ProvisionId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.RpcTwoparty.New.RecipientId (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.RecipientId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.RpcTwoparty.New.Side Capnp.Gen.Capnp.RpcTwoparty.New.Side
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.RpcTwoparty.New.ThirdPartyCapId (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.ThirdPartyCapId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.RpcTwoparty.New.VatId (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.VatId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.RpcTwoparty.New.JoinKeyPart
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.RpcTwoparty.New.JoinResult
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.RpcTwoparty.New.ProvisionId
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.RpcTwoparty.New.RecipientId
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.RpcTwoparty.New.ThirdPartyCapId
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.RpcTwoparty.New.VatId
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.JoinKeyPart)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.JoinResult)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.ProvisionId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.RecipientId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.ThirdPartyCapId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.VatId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance GHC.Classes.Eq Capnp.Gen.Capnp.RpcTwoparty.New.Side
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance GHC.Enum.Enum Capnp.Gen.Capnp.RpcTwoparty.New.Side
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.JoinKeyPart)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.JoinResult)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.ProvisionId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.RecipientId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.ThirdPartyCapId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.VatId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.JoinKeyPart)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.JoinResult)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.ProvisionId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.RecipientId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.ThirdPartyCapId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.RpcTwoparty.New.VatId)
+ Capnp.Gen.Capnp.RpcTwoparty.New: instance GHC.Show.Show Capnp.Gen.Capnp.RpcTwoparty.New.Side
+ Capnp.Gen.Capnp.Schema.New: ElementSize'bit :: ElementSize
+ Capnp.Gen.Capnp.Schema.New: ElementSize'byte :: ElementSize
+ Capnp.Gen.Capnp.Schema.New: ElementSize'eightBytes :: ElementSize
+ Capnp.Gen.Capnp.Schema.New: ElementSize'empty :: ElementSize
+ Capnp.Gen.Capnp.Schema.New: ElementSize'fourBytes :: ElementSize
+ Capnp.Gen.Capnp.Schema.New: ElementSize'inlineComposite :: ElementSize
+ Capnp.Gen.Capnp.Schema.New: ElementSize'pointer :: ElementSize
+ Capnp.Gen.Capnp.Schema.New: ElementSize'twoBytes :: ElementSize
+ Capnp.Gen.Capnp.Schema.New: ElementSize'unknown' :: Word16 -> ElementSize
+ Capnp.Gen.Capnp.Schema.New: data Annotation
+ Capnp.Gen.Capnp.Schema.New: data Brand
+ Capnp.Gen.Capnp.Schema.New: data Brand'Binding
+ Capnp.Gen.Capnp.Schema.New: data Brand'Scope
+ Capnp.Gen.Capnp.Schema.New: data CapnpVersion
+ Capnp.Gen.Capnp.Schema.New: data CodeGeneratorRequest
+ Capnp.Gen.Capnp.Schema.New: data CodeGeneratorRequest'RequestedFile
+ Capnp.Gen.Capnp.Schema.New: data CodeGeneratorRequest'RequestedFile'Import
+ Capnp.Gen.Capnp.Schema.New: data ElementSize
+ Capnp.Gen.Capnp.Schema.New: data Enumerant
+ Capnp.Gen.Capnp.Schema.New: data Field
+ Capnp.Gen.Capnp.Schema.New: data Field'group
+ Capnp.Gen.Capnp.Schema.New: data Field'ordinal
+ Capnp.Gen.Capnp.Schema.New: data Field'slot
+ Capnp.Gen.Capnp.Schema.New: data Method
+ Capnp.Gen.Capnp.Schema.New: data Node
+ Capnp.Gen.Capnp.Schema.New: data Node'NestedNode
+ Capnp.Gen.Capnp.Schema.New: data Node'Parameter
+ Capnp.Gen.Capnp.Schema.New: data Node'SourceInfo
+ Capnp.Gen.Capnp.Schema.New: data Node'SourceInfo'Member
+ Capnp.Gen.Capnp.Schema.New: data Node'annotation
+ Capnp.Gen.Capnp.Schema.New: data Node'const
+ Capnp.Gen.Capnp.Schema.New: data Node'enum
+ Capnp.Gen.Capnp.Schema.New: data Node'interface
+ Capnp.Gen.Capnp.Schema.New: data Node'struct
+ Capnp.Gen.Capnp.Schema.New: data Superclass
+ Capnp.Gen.Capnp.Schema.New: data Type
+ Capnp.Gen.Capnp.Schema.New: data Type'anyPointer
+ Capnp.Gen.Capnp.Schema.New: data Type'anyPointer'implicitMethodParameter
+ Capnp.Gen.Capnp.Schema.New: data Type'anyPointer'parameter
+ Capnp.Gen.Capnp.Schema.New: data Type'anyPointer'unconstrained
+ Capnp.Gen.Capnp.Schema.New: data Type'enum
+ Capnp.Gen.Capnp.Schema.New: data Type'interface
+ Capnp.Gen.Capnp.Schema.New: data Type'list
+ Capnp.Gen.Capnp.Schema.New: data Type'struct
+ Capnp.Gen.Capnp.Schema.New: data Value
+ Capnp.Gen.Capnp.Schema.New: field'noDiscriminant :: Word16
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Classes.IsWord Capnp.Gen.Capnp.Schema.New.ElementSize
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "annotations" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Enumerant (Capnp.Repr.List Capnp.Gen.Capnp.Schema.New.Annotation)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "annotations" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Field (Capnp.Repr.List Capnp.Gen.Capnp.Schema.New.Annotation)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "annotations" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Method (Capnp.Repr.List Capnp.Gen.Capnp.Schema.New.Annotation)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "annotations" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node (Capnp.Repr.List Capnp.Gen.Capnp.Schema.New.Annotation)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "brand" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Annotation Capnp.Gen.Capnp.Schema.New.Brand
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "brand" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Superclass Capnp.Gen.Capnp.Schema.New.Brand
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "brand" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type'enum Capnp.Gen.Capnp.Schema.New.Brand
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "brand" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type'interface Capnp.Gen.Capnp.Schema.New.Brand
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "brand" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type'struct Capnp.Gen.Capnp.Schema.New.Brand
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "capnpVersion" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest Capnp.Gen.Capnp.Schema.New.CapnpVersion
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "codeOrder" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Enumerant GHC.Word.Word16
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "codeOrder" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Field GHC.Word.Word16
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "codeOrder" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Method GHC.Word.Word16
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "dataWordCount" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'struct GHC.Word.Word16
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "defaultValue" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Field'slot Capnp.Gen.Capnp.Schema.New.Value
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "discriminantCount" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'struct GHC.Word.Word16
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "discriminantOffset" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'struct GHC.Word.Word32
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "discriminantValue" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Field GHC.Word.Word16
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "displayName" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node Capnp.New.Basics.Text
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "displayNamePrefixLength" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node GHC.Word.Word32
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "docComment" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'SourceInfo Capnp.New.Basics.Text
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "docComment" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'SourceInfo'Member Capnp.New.Basics.Text
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "elementType" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type'list Capnp.Gen.Capnp.Schema.New.Type
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "enumerants" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'enum (Capnp.Repr.List Capnp.Gen.Capnp.Schema.New.Enumerant)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "fields" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'struct (Capnp.Repr.List Capnp.Gen.Capnp.Schema.New.Field)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "filename" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile Capnp.New.Basics.Text
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "hadExplicitDefault" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Field'slot GHC.Types.Bool
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "id" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Annotation GHC.Word.Word64
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "id" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile GHC.Word.Word64
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "id" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile'Import GHC.Word.Word64
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "id" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node GHC.Word.Word64
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "id" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'NestedNode GHC.Word.Word64
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "id" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'SourceInfo GHC.Word.Word64
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "id" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Superclass GHC.Word.Word64
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "implicitParameters" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Method (Capnp.Repr.List Capnp.Gen.Capnp.Schema.New.Node'Parameter)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "imports" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile (Capnp.Repr.List Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile'Import)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "isGeneric" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node GHC.Types.Bool
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "isGroup" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'struct GHC.Types.Bool
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "major" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.CapnpVersion GHC.Word.Word16
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "members" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'SourceInfo (Capnp.Repr.List Capnp.Gen.Capnp.Schema.New.Node'SourceInfo'Member)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "methods" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'interface (Capnp.Repr.List Capnp.Gen.Capnp.Schema.New.Method)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "micro" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.CapnpVersion GHC.Word.Word8
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "minor" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.CapnpVersion GHC.Word.Word8
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "name" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile'Import Capnp.New.Basics.Text
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "name" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Enumerant Capnp.New.Basics.Text
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "name" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Field Capnp.New.Basics.Text
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "name" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Method Capnp.New.Basics.Text
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "name" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'NestedNode Capnp.New.Basics.Text
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "name" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'Parameter Capnp.New.Basics.Text
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "nestedNodes" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node (Capnp.Repr.List Capnp.Gen.Capnp.Schema.New.Node'NestedNode)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "nodes" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest (Capnp.Repr.List Capnp.Gen.Capnp.Schema.New.Node)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "offset" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Field'slot GHC.Word.Word32
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "ordinal" 'Capnp.Fields.Group Capnp.Gen.Capnp.Schema.New.Field Capnp.Gen.Capnp.Schema.New.Field'ordinal
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "paramBrand" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Method Capnp.Gen.Capnp.Schema.New.Brand
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "paramStructType" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Method GHC.Word.Word64
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "parameterIndex" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type'anyPointer'implicitMethodParameter GHC.Word.Word16
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "parameterIndex" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type'anyPointer'parameter GHC.Word.Word16
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "parameters" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node (Capnp.Repr.List Capnp.Gen.Capnp.Schema.New.Node'Parameter)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "pointerCount" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'struct GHC.Word.Word16
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "preferredListEncoding" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'struct Capnp.Gen.Capnp.Schema.New.ElementSize
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "requestedFiles" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest (Capnp.Repr.List Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "resultBrand" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Method Capnp.Gen.Capnp.Schema.New.Brand
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "resultStructType" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Method GHC.Word.Word64
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "scopeId" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Brand'Scope GHC.Word.Word64
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "scopeId" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node GHC.Word.Word64
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "scopeId" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type'anyPointer'parameter GHC.Word.Word64
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "scopes" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Brand (Capnp.Repr.List Capnp.Gen.Capnp.Schema.New.Brand'Scope)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "sourceInfo" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest (Capnp.Repr.List Capnp.Gen.Capnp.Schema.New.Node'SourceInfo)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "superclasses" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'interface (Capnp.Repr.List Capnp.Gen.Capnp.Schema.New.Superclass)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "targetsAnnotation" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'annotation GHC.Types.Bool
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "targetsConst" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'annotation GHC.Types.Bool
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "targetsEnum" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'annotation GHC.Types.Bool
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "targetsEnumerant" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'annotation GHC.Types.Bool
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "targetsField" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'annotation GHC.Types.Bool
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "targetsFile" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'annotation GHC.Types.Bool
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "targetsGroup" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'annotation GHC.Types.Bool
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "targetsInterface" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'annotation GHC.Types.Bool
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "targetsMethod" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'annotation GHC.Types.Bool
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "targetsParam" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'annotation GHC.Types.Bool
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "targetsStruct" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'annotation GHC.Types.Bool
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "targetsUnion" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'annotation GHC.Types.Bool
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "typeId" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Field'group GHC.Word.Word64
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "typeId" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type'enum GHC.Word.Word64
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "typeId" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type'interface GHC.Word.Word64
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "typeId" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type'struct GHC.Word.Word64
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "type_" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Field'slot Capnp.Gen.Capnp.Schema.New.Type
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "type_" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'annotation Capnp.Gen.Capnp.Schema.New.Type
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "type_" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'const Capnp.Gen.Capnp.Schema.New.Type
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "value" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Annotation Capnp.Gen.Capnp.Schema.New.Value
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasField "value" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node'const Capnp.Gen.Capnp.Schema.New.Value
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasUnion Capnp.Gen.Capnp.Schema.New.Brand'Binding
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasUnion Capnp.Gen.Capnp.Schema.New.Brand'Scope
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasUnion Capnp.Gen.Capnp.Schema.New.Field
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasUnion Capnp.Gen.Capnp.Schema.New.Field'ordinal
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasUnion Capnp.Gen.Capnp.Schema.New.Node
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasUnion Capnp.Gen.Capnp.Schema.New.Type
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasUnion Capnp.Gen.Capnp.Schema.New.Type'anyPointer
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasUnion Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasUnion Capnp.Gen.Capnp.Schema.New.Value
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "annotation" 'Capnp.Fields.Group Capnp.Gen.Capnp.Schema.New.Node Capnp.Gen.Capnp.Schema.New.Node'annotation
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "anyKind" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained ()
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "anyPointer" 'Capnp.Fields.Group Capnp.Gen.Capnp.Schema.New.Type Capnp.Gen.Capnp.Schema.New.Type'anyPointer
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "anyPointer" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Value Capnp.New.Basics.AnyPointer
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "bind" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Brand'Scope (Capnp.Repr.List Capnp.Gen.Capnp.Schema.New.Brand'Binding)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "bool" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type ()
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "bool" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Value GHC.Types.Bool
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "capability" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained ()
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "const" 'Capnp.Fields.Group Capnp.Gen.Capnp.Schema.New.Node Capnp.Gen.Capnp.Schema.New.Node'const
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "data_" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type ()
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "data_" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Value Capnp.New.Basics.Data
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "enum" 'Capnp.Fields.Group Capnp.Gen.Capnp.Schema.New.Node Capnp.Gen.Capnp.Schema.New.Node'enum
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "enum" 'Capnp.Fields.Group Capnp.Gen.Capnp.Schema.New.Type Capnp.Gen.Capnp.Schema.New.Type'enum
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "enum" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Value GHC.Word.Word16
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "explicit" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Field'ordinal GHC.Word.Word16
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "file" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Node ()
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "float32" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type ()
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "float32" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Value GHC.Types.Float
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "float64" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type ()
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "float64" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Value GHC.Types.Double
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "group" 'Capnp.Fields.Group Capnp.Gen.Capnp.Schema.New.Field Capnp.Gen.Capnp.Schema.New.Field'group
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "implicit" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Field'ordinal ()
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "implicitMethodParameter" 'Capnp.Fields.Group Capnp.Gen.Capnp.Schema.New.Type'anyPointer Capnp.Gen.Capnp.Schema.New.Type'anyPointer'implicitMethodParameter
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "inherit" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Brand'Scope ()
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "int16" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type ()
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "int16" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Value GHC.Int.Int16
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "int32" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type ()
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "int32" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Value GHC.Int.Int32
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "int64" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type ()
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "int64" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Value GHC.Int.Int64
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "int8" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type ()
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "int8" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Value GHC.Int.Int8
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "interface" 'Capnp.Fields.Group Capnp.Gen.Capnp.Schema.New.Node Capnp.Gen.Capnp.Schema.New.Node'interface
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "interface" 'Capnp.Fields.Group Capnp.Gen.Capnp.Schema.New.Type Capnp.Gen.Capnp.Schema.New.Type'interface
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "interface" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Value ()
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "list" 'Capnp.Fields.Group Capnp.Gen.Capnp.Schema.New.Type Capnp.Gen.Capnp.Schema.New.Type'list
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "list" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained ()
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "list" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Value Capnp.New.Basics.AnyPointer
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "parameter" 'Capnp.Fields.Group Capnp.Gen.Capnp.Schema.New.Type'anyPointer Capnp.Gen.Capnp.Schema.New.Type'anyPointer'parameter
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "slot" 'Capnp.Fields.Group Capnp.Gen.Capnp.Schema.New.Field Capnp.Gen.Capnp.Schema.New.Field'slot
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "struct" 'Capnp.Fields.Group Capnp.Gen.Capnp.Schema.New.Node Capnp.Gen.Capnp.Schema.New.Node'struct
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "struct" 'Capnp.Fields.Group Capnp.Gen.Capnp.Schema.New.Type Capnp.Gen.Capnp.Schema.New.Type'struct
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "struct" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained ()
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "struct" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Value Capnp.New.Basics.AnyPointer
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "text" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type ()
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "text" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Value Capnp.New.Basics.Text
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "type_" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Brand'Binding Capnp.Gen.Capnp.Schema.New.Type
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "uint16" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type ()
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "uint16" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Value GHC.Word.Word16
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "uint32" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type ()
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "uint32" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Value GHC.Word.Word32
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "uint64" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type ()
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "uint64" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Value GHC.Word.Word64
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "uint8" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type ()
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "uint8" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Value GHC.Word.Word8
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "unbound" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Brand'Binding ()
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "unconstrained" 'Capnp.Fields.Group Capnp.Gen.Capnp.Schema.New.Type'anyPointer Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "void" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Type ()
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.Fields.HasVariant "void" 'Capnp.Fields.Slot Capnp.Gen.Capnp.Schema.New.Value ()
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Annotation
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Brand
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Brand'Binding
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Brand'Scope
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.CapnpVersion
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile'Import
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Enumerant
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Field
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Field'group
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Field'ordinal
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Field'slot
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Method
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Node
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Node'NestedNode
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Node'Parameter
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Node'SourceInfo
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Node'SourceInfo'Member
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Node'annotation
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Node'const
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Node'enum
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Node'interface
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Node'struct
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Superclass
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Type
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Type'anyPointer
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Type'anyPointer'implicitMethodParameter
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Type'anyPointer'parameter
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Type'enum
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Type'interface
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Type'list
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Type'struct
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Schema.New.Value
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Annotation
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Brand
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Brand'Binding
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Brand'Scope
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.CapnpVersion
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile'Import
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.ElementSize
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Enumerant
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Field
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Field'group
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Field'ordinal
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Field'slot
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Method
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Node
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Node'NestedNode
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Node'Parameter
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Node'SourceInfo
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Node'SourceInfo'Member
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Node'annotation
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Node'const
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Node'enum
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Node'interface
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Node'struct
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Superclass
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Type
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Type'anyPointer
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Type'anyPointer'implicitMethodParameter
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Type'anyPointer'parameter
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Type'enum
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Type'interface
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Type'list
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Type'struct
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Schema.New.Value
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Annotation (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Annotation)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Brand (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Brand)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Brand'Binding (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Brand'Binding)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Brand'Scope (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Brand'Scope)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.CapnpVersion (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CapnpVersion)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile'Import (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile'Import)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Enumerant (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Enumerant)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Field (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Field'group (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field'group)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Field'ordinal (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field'ordinal)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Field'slot (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field'slot)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Method (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Method)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Node (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Node'NestedNode (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'NestedNode)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Node'Parameter (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'Parameter)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Node'SourceInfo (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'SourceInfo)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Node'SourceInfo'Member (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'SourceInfo'Member)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Node'annotation (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'annotation)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Node'const (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'const)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Node'enum (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'enum)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Node'interface (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'interface)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Node'struct (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'struct)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Superclass (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Superclass)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Type (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Type'anyPointer (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Type'anyPointer'implicitMethodParameter (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer'implicitMethodParameter)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Type'anyPointer'parameter (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer'parameter)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Type'enum (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'enum)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Type'interface (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'interface)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Type'list (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'list)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Type'struct (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'struct)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Schema.New.Value (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Value)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Annotation (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Annotation)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Brand (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Brand)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Brand'Binding (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Brand'Binding)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Brand'Scope (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Brand'Scope)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.CapnpVersion (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CapnpVersion)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile'Import (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile'Import)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.ElementSize Capnp.Gen.Capnp.Schema.New.ElementSize
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Enumerant (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Enumerant)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Field (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Field'group (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field'group)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Field'ordinal (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field'ordinal)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Field'slot (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field'slot)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Method (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Method)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Node (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Node'NestedNode (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'NestedNode)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Node'Parameter (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'Parameter)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Node'SourceInfo (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'SourceInfo)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Node'SourceInfo'Member (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'SourceInfo'Member)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Node'annotation (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'annotation)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Node'const (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'const)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Node'enum (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'enum)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Node'interface (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'interface)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Node'struct (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'struct)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Superclass (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Superclass)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Type (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Type'anyPointer (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Type'anyPointer'implicitMethodParameter (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer'implicitMethodParameter)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Type'anyPointer'parameter (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer'parameter)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Type'enum (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'enum)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Type'interface (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'interface)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Type'list (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'list)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Type'struct (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'struct)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Schema.New.Value (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Value)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Brand'Binding) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Brand'Binding))
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Brand'Scope) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Brand'Scope))
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Field'ordinal) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Field'ordinal))
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Field) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Field))
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Node) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Node))
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained))
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Type'anyPointer) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Type'anyPointer))
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Type) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Type))
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Value) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Value))
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Annotation (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Annotation)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Brand (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Brand)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Brand'Binding (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Brand'Binding)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Brand'Scope (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Brand'Scope)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.CapnpVersion (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CapnpVersion)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile'Import (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile'Import)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Enumerant (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Enumerant)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Field (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Field'group (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field'group)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Field'ordinal (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field'ordinal)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Field'slot (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field'slot)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Method (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Method)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Node (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Node'NestedNode (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'NestedNode)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Node'Parameter (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'Parameter)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Node'SourceInfo (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'SourceInfo)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Node'SourceInfo'Member (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'SourceInfo'Member)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Node'annotation (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'annotation)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Node'const (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'const)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Node'enum (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'enum)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Node'interface (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'interface)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Node'struct (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'struct)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Superclass (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Superclass)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Type (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Type'anyPointer (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Type'anyPointer'implicitMethodParameter (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer'implicitMethodParameter)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Type'anyPointer'parameter (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer'parameter)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Type'enum (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'enum)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Type'interface (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'interface)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Type'list (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'list)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Type'struct (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'struct)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Schema.New.Value (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Value)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Brand'Binding) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Brand'Binding))
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Brand'Scope) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Brand'Scope))
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Field'ordinal) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Field'ordinal))
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Field) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Field))
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Node) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Node))
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained))
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Type'anyPointer) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Type'anyPointer))
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Type) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Type))
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Value) (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Value))
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Annotation (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Annotation)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Brand (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Brand)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Brand'Binding (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Brand'Binding)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Brand'Scope (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Brand'Scope)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.CapnpVersion (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CapnpVersion)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile'Import (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile'Import)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.ElementSize Capnp.Gen.Capnp.Schema.New.ElementSize
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Enumerant (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Enumerant)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Field (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Field'group (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field'group)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Field'ordinal (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field'ordinal)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Field'slot (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field'slot)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Method (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Method)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Node (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Node'NestedNode (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'NestedNode)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Node'Parameter (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'Parameter)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Node'SourceInfo (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'SourceInfo)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Node'SourceInfo'Member (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'SourceInfo'Member)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Node'annotation (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'annotation)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Node'const (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'const)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Node'enum (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'enum)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Node'interface (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'interface)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Node'struct (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'struct)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Superclass (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Superclass)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Type (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Type'anyPointer (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Type'anyPointer'implicitMethodParameter (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer'implicitMethodParameter)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Type'anyPointer'parameter (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer'parameter)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Type'enum (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'enum)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Type'interface (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'interface)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Type'list (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'list)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Type'struct (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'struct)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Schema.New.Value (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Value)
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Annotation
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Brand
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Brand'Binding
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Brand'Scope
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.CapnpVersion
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile'Import
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Enumerant
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Field
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Field'group
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Field'ordinal
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Field'slot
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Method
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Node
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Node'NestedNode
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Node'Parameter
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Node'SourceInfo
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Node'SourceInfo'Member
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Node'annotation
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Node'const
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Node'enum
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Node'interface
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Node'struct
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Superclass
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Type
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Type'anyPointer
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Type'anyPointer'implicitMethodParameter
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Type'anyPointer'parameter
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Type'enum
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Type'interface
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Type'list
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Type'struct
+ Capnp.Gen.Capnp.Schema.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Schema.New.Value
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Brand'Binding))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Brand'Scope))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Field'ordinal))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Field))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Node))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Type'anyPointer))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Type))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Value))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Annotation)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Brand'Binding)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Brand'Scope)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Brand)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CapnpVersion)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile'Import)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Enumerant)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field'group)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field'ordinal)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field'slot)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Method)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'NestedNode)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'Parameter)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'SourceInfo'Member)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'SourceInfo)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'annotation)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'const)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'enum)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'interface)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'struct)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Superclass)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer'implicitMethodParameter)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer'parameter)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'enum)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'interface)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'list)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'struct)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Value)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Classes.Eq Capnp.Gen.Capnp.Schema.New.ElementSize
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Enum.Enum Capnp.Gen.Capnp.Schema.New.ElementSize
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Brand'Binding))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Brand'Scope))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Field'ordinal))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Field))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Node))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Type'anyPointer))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Type))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Value))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Annotation)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Brand'Binding)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Brand'Scope)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Brand)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CapnpVersion)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile'Import)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Enumerant)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field'group)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field'ordinal)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field'slot)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Method)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'NestedNode)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'Parameter)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'SourceInfo'Member)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'SourceInfo)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'annotation)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'const)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'enum)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'interface)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'struct)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Superclass)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer'implicitMethodParameter)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer'parameter)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'enum)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'interface)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'list)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'struct)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Value)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Brand'Binding))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Brand'Scope))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Field'ordinal))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Field))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Node))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Type'anyPointer))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Type))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed (Capnp.Fields.Which Capnp.Gen.Capnp.Schema.New.Value))
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Annotation)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Brand'Binding)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Brand'Scope)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Brand)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CapnpVersion)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile'Import)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest'RequestedFile)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.CodeGeneratorRequest)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Enumerant)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field'group)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field'ordinal)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field'slot)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Field)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Method)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'NestedNode)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'Parameter)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'SourceInfo'Member)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'SourceInfo)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'annotation)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'const)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'enum)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'interface)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node'struct)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Node)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Superclass)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer'implicitMethodParameter)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer'parameter)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer'unconstrained)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'anyPointer)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'enum)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'interface)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'list)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type'struct)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Type)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Schema.New.Value)
+ Capnp.Gen.Capnp.Schema.New: instance GHC.Show.Show Capnp.Gen.Capnp.Schema.New.ElementSize
+ Capnp.Gen.Capnp.Stream.New: data StreamResult
+ Capnp.Gen.Capnp.Stream.New: instance Capnp.New.Classes.Allocate Capnp.Gen.Capnp.Stream.New.StreamResult
+ Capnp.Gen.Capnp.Stream.New: instance Capnp.New.Classes.AllocateList Capnp.Gen.Capnp.Stream.New.StreamResult
+ Capnp.Gen.Capnp.Stream.New: instance Capnp.New.Classes.EstimateAlloc Capnp.Gen.Capnp.Stream.New.StreamResult (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Stream.New.StreamResult)
+ Capnp.Gen.Capnp.Stream.New: instance Capnp.New.Classes.EstimateListAlloc Capnp.Gen.Capnp.Stream.New.StreamResult (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Stream.New.StreamResult)
+ Capnp.Gen.Capnp.Stream.New: instance Capnp.New.Classes.Marshal Capnp.Gen.Capnp.Stream.New.StreamResult (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Stream.New.StreamResult)
+ Capnp.Gen.Capnp.Stream.New: instance Capnp.New.Classes.Parse Capnp.Gen.Capnp.Stream.New.StreamResult (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Stream.New.StreamResult)
+ Capnp.Gen.Capnp.Stream.New: instance Capnp.New.Classes.TypedStruct Capnp.Gen.Capnp.Stream.New.StreamResult
+ Capnp.Gen.Capnp.Stream.New: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Stream.New.StreamResult)
+ Capnp.Gen.Capnp.Stream.New: instance GHC.Generics.Generic (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Stream.New.StreamResult)
+ Capnp.Gen.Capnp.Stream.New: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.Gen.Capnp.Stream.New.StreamResult)
+ Capnp.GenHelpers.New: Const :: Mutability
+ Capnp.GenHelpers.New: Mut :: Type -> Mutability
+ Capnp.GenHelpers.New: data Mutability
+ Capnp.GenHelpers.New: dataField :: forall b a sz. (ReprFor b ~ 'Data sz, IsWord (UntypedData sz)) => BitCount -> Word16 -> BitCount -> Word64 -> Field 'Slot a b
+ Capnp.GenHelpers.New: encodeCap :: (IsCap a, RWCtx m s) => Message ('Mut s) -> Client a -> m (Raw ('Mut s) a)
+ Capnp.GenHelpers.New: encodeEnum :: forall a m s. (ReprFor a ~ 'Data 'Sz16, Enum a, RWCtx m s) => Message ('Mut s) -> a -> m (Raw ('Mut s) a)
+ Capnp.GenHelpers.New: encodeField :: forall a b m s bp. (IsStruct a, Parse b bp, RWCtx m s) => Field 'Slot a b -> bp -> Raw ('Mut s) a -> m ()
+ Capnp.GenHelpers.New: encodeVariant :: forall a b m s bp. (HasUnion a, Parse b bp, RWCtx m s) => Variant 'Slot a b -> bp -> Raw ('Mut s) a -> m ()
+ Capnp.GenHelpers.New: getPtrConst :: FromPtr 'Const a => ByteString -> a
+ Capnp.GenHelpers.New: groupField :: ReprFor b ~ 'Ptr ('Just 'Struct) => Field 'Group a b
+ Capnp.GenHelpers.New: initVariant :: forall a b m s. (HasUnion a, RWCtx m s) => Variant 'Group a b -> Raw ('Mut s) a -> m (Raw ('Mut s) b)
+ Capnp.GenHelpers.New: newStruct :: forall a m s. (RWCtx m s, TypedStruct a) => () -> Message ('Mut s) -> m (Raw ('Mut s) a)
+ Capnp.GenHelpers.New: parseCap :: (IsCap a, ReadCtx m 'Const) => Raw 'Const a -> m (Client a)
+ Capnp.GenHelpers.New: parseEnum :: (ReprFor a ~ 'Data 'Sz16, Enum a, Applicative m) => Raw 'Const a -> m a
+ Capnp.GenHelpers.New: parseField :: (IsStruct a, Parse b bp, ReadCtx m 'Const) => Field k a b -> Raw 'Const a -> m bp
+ Capnp.GenHelpers.New: ptrField :: forall a b. IsPtr b => Word16 -> Field 'Slot a b
+ Capnp.GenHelpers.New: readField :: forall k a b mut m. (IsStruct a, ReadCtx m mut) => Field k a b -> Raw mut a -> m (Raw mut b)
+ Capnp.GenHelpers.New: readVariant :: forall k a b mut m. (IsStruct a, ReadCtx m mut) => Variant k a b -> Raw mut a -> m (Raw mut b)
+ Capnp.GenHelpers.New: structUnion :: HasUnion a => Raw mut a -> Raw mut (Which a)
+ Capnp.GenHelpers.New: type TypeParam a = (IsPtr a, Parse a (Parsed a))
+ Capnp.GenHelpers.New: unionStruct :: HasUnion a => Raw mut (Which a) -> Raw mut a
+ Capnp.GenHelpers.New: unionWhich :: forall a mut m. (ReadCtx m mut, HasUnion a) => Raw mut (Which a) -> m (RawWhich mut a)
+ Capnp.GenHelpers.New: voidField :: ReprFor b ~ 'Data 'Sz0 => Field 'Slot a b
+ Capnp.IO: getParsed :: (IsStruct a, Parse a pa) => WordCount -> IO pa
+ Capnp.IO: getRaw :: IsStruct a => WordCount -> IO (Raw 'Const a)
+ Capnp.IO: hGetParsed :: forall a pa. (IsStruct a, Parse a pa) => Handle -> WordCount -> IO pa
+ Capnp.IO: hGetRaw :: IsStruct a => Handle -> WordCount -> IO (Raw 'Const a)
+ Capnp.IO: hPutParsed :: (IsStruct a, Parse a pa) => Handle -> pa -> IO ()
+ Capnp.IO: putParsed :: (IsStruct a, Parse a pa) => pa -> IO ()
+ Capnp.IO: sGetParsed :: forall a pa. (IsStruct a, Parse a pa) => Socket -> WordCount -> IO pa
+ Capnp.IO: sGetRaw :: IsStruct a => Socket -> WordCount -> IO (Raw 'Const a)
+ Capnp.IO: sPutParsed :: (IsStruct a, Parse a pa) => Socket -> pa -> IO ()
+ Capnp.New: -- generated struct types (in this case <tt>a</tt>), this is typically
+ Capnp.New: -- length for a list. May be () if no extra info is needed.
+ Capnp.New: -- type with other <tt>Raw</tt> values as arguments.
+ Capnp.New: -- type.
+ Capnp.New: -- uninhabitied, and used to define instances and/or act as a phantom
+ Capnp.New: -- | Concrete view into a union embedded in a message. This will be a sum
+ Capnp.New: Client :: Client -> Client a
+ Capnp.New: Const :: Mutability
+ Capnp.New: Method :: !Word64 -> !Word16 -> Method c p r
+ Capnp.New: Mut :: Type -> Mutability
+ Capnp.New: Pipeline :: Pipeline -> Pipeline a
+ Capnp.New: [$sel:interfaceId:Method] :: Method c p r -> !Word64
+ Capnp.New: [$sel:methodId:Method] :: Method c p r -> !Word16
+ Capnp.New: asClient :: (AsClient f, MonadSTM m) => IsCap c => f c -> m (Client c)
+ Capnp.New: bsToMsg :: MonadThrow m => ByteString -> m (Message 'Const)
+ Capnp.New: bsToValue :: (MonadThrow m, FromStruct 'Const a) => ByteString -> m a
+ Capnp.New: callB :: (AsClient f, IsCap c, IsStruct p, MonadSTM m) => Method c p r -> (forall s. PureBuilder s (Raw ('Mut s) p)) -> f c -> m (Pipeline r)
+ Capnp.New: callP :: forall c p r f m pp. (AsClient f, IsCap c, IsStruct p, Parse p pp, MonadSTM m, MonadThrow m) => Method c p r -> pp -> f c -> m (Pipeline r)
+ Capnp.New: callR :: (AsClient f, IsCap c, IsStruct p, MonadSTM m) => Method c p r -> Raw 'Const p -> f c -> m (Pipeline r)
+ Capnp.New: class Allocate a where {
+ Capnp.New: class AllocateList a where {
+ Capnp.New: class AsClient f
+ Capnp.New: class (Parse t p, Allocate t) => EstimateAlloc t p
+ Capnp.New: class (Parse a ap, Allocate (List a)) => EstimateListAlloc a ap
+ Capnp.New: class IsStruct a => HasField (name :: Symbol) k a b | a name -> k b
+ Capnp.New: class (IsCap c, IsStruct p, IsStruct r) => HasMethod (name :: Symbol) c p r | name c -> p r
+ Capnp.New: class IsStruct a => HasUnion a where {
+ Capnp.New: class HasUnion a => HasVariant (name :: Symbol) k a b | a name -> k b
+ Capnp.New: class IsWord a
+ Capnp.New: class Parse t p => Marshal t p
+ Capnp.New: class Monad m => MonadLimit m
+ Capnp.New: class Monad m => MonadReadMessage mut m
+ Capnp.New: class Parse t p | t -> p, p -> t
+ Capnp.New: class (IsStruct a, Allocate a, AllocHint a ~ ()) => TypedStruct a
+ Capnp.New: createPure :: (MonadThrow m, Thaw a) => WordCount -> (forall s. PureBuilder s (Mutable s a)) -> m a
+ Capnp.New: data Field (k :: FieldKind) a b
+ Capnp.New: data FieldKind
+ Capnp.New: data LimitT m a
+ Capnp.New: data List a
+ Capnp.New: data Message (mut :: Mutability)
+ Capnp.New: data Method c p r
+ Capnp.New: data Mutability
+ Capnp.New: data PureBuilder s a
+ Capnp.New: data Raw (mut :: Mutability) (a :: Type)
+ Capnp.New: data Segment (mut :: Mutability)
+ Capnp.New: data family RawWhich (mut :: Mutability) a;
+ Capnp.New: def :: Default a => a
+ Capnp.New: defaultLimit :: WordCount
+ Capnp.New: encode :: (Parse t p, RWCtx m s, EstimateAlloc t p, Marshal t p) => Message ('Mut s) -> p -> m (Raw ('Mut s) t)
+ Capnp.New: encodeField :: forall a b m s bp. (IsStruct a, Parse b bp, RWCtx m s) => Field 'Slot a b -> bp -> Raw ('Mut s) a -> m ()
+ Capnp.New: encodeVariant :: forall a b m s bp. (HasUnion a, Parse b bp, RWCtx m s) => Variant 'Slot a b -> bp -> Raw ('Mut s) a -> m ()
+ Capnp.New: estimateAlloc :: (EstimateAlloc t p, AllocHint t ~ ()) => p -> AllocHint t
+ Capnp.New: estimateListAlloc :: (EstimateListAlloc a ap, AllocHint (List a) ~ Int) => Vector ap -> AllocHint (List a)
+ Capnp.New: evalLimitT :: MonadThrow m => WordCount -> LimitT m a -> m a
+ Capnp.New: execLimitT :: MonadThrow m => WordCount -> LimitT m a -> m WordCount
+ Capnp.New: fieldByLabel :: HasField name k a b => Field k a b
+ Capnp.New: fromByteString :: ByteString -> Segment 'Const
+ Capnp.New: fromWord :: IsWord a => Word64 -> a
+ Capnp.New: getField :: (IsStruct a, ReprFor b ~ 'Data sz, Parse b bp) => Field 'Slot a b -> Raw 'Const a -> bp
+ Capnp.New: getMsg :: WordCount -> IO (Message 'Const)
+ Capnp.New: getParsed :: (IsStruct a, Parse a pa) => WordCount -> IO pa
+ Capnp.New: getRaw :: IsStruct a => WordCount -> IO (Raw 'Const a)
+ Capnp.New: getValue :: FromStruct 'Const a => WordCount -> IO a
+ Capnp.New: hGetMsg :: Handle -> WordCount -> IO (Message 'Const)
+ Capnp.New: hGetParsed :: forall a pa. (IsStruct a, Parse a pa) => Handle -> WordCount -> IO pa
+ Capnp.New: hGetRaw :: IsStruct a => Handle -> WordCount -> IO (Raw 'Const a)
+ Capnp.New: hGetValue :: FromStruct 'Const a => Handle -> WordCount -> IO a
+ Capnp.New: hPutMsg :: Handle -> Message 'Const -> IO ()
+ Capnp.New: hPutParsed :: (IsStruct a, Parse a pa) => Handle -> pa -> IO ()
+ Capnp.New: hPutValue :: (Cerialize RealWorld a, ToStruct ('Mut RealWorld) (Cerial ('Mut RealWorld) a)) => Handle -> a -> IO ()
+ Capnp.New: hasField :: (ReadCtx m mut, IsStruct a, IsPtr b) => Field 'Slot a b -> Raw mut a -> m Bool
+ Capnp.New: index :: forall a m mut. (ReadCtx m mut, Element (ReprFor a)) => Int -> Raw mut (List a) -> m (Raw mut a)
+ Capnp.New: initVariant :: forall a b m s. (HasUnion a, RWCtx m s) => Variant 'Group a b -> Raw ('Mut s) a -> m (Raw ('Mut s) b)
+ Capnp.New: internalGetCap :: MonadReadMessage mut m => Message mut -> Int -> m Client
+ Capnp.New: internalGetSeg :: MonadReadMessage mut m => Message mut -> Int -> m (Segment mut)
+ Capnp.New: internalWhich :: (HasUnion a, ReadCtx m mut) => Word16 -> Raw mut a -> m (RawWhich mut a)
+ Capnp.New: invoice :: MonadLimit m => WordCount -> m ()
+ Capnp.New: lbsToMsg :: MonadThrow m => ByteString -> m (Message 'Const)
+ Capnp.New: lbsToValue :: (MonadThrow m, FromStruct 'Const a) => ByteString -> m a
+ Capnp.New: length :: Raw mut (List a) -> Int
+ Capnp.New: marshalInto :: (Marshal t p, RWCtx m s) => Raw ('Mut s) t -> p -> m ()
+ Capnp.New: methodByLabel :: HasMethod name c p r => Method c p r
+ Capnp.New: msgToBS :: Message 'Const -> ByteString
+ Capnp.New: msgToBuilder :: Message 'Const -> Builder
+ Capnp.New: msgToLBS :: Message 'Const -> ByteString
+ Capnp.New: msgToParsed :: forall a m pa. (ReadCtx m 'Const, IsStruct a, Parse a pa) => Message 'Const -> m pa
+ Capnp.New: msgToRaw :: forall a m mut. (ReadCtx m mut, IsStruct a) => Message mut -> m (Raw mut a)
+ Capnp.New: msgToValue :: (MonadThrow m, MonadReadMessage mut (LimitT m), MonadReadMessage mut m, FromStruct mut a) => Message mut -> m a
+ Capnp.New: new :: (Allocate a, ReprFor a ~ 'Ptr ('Just pr), Allocate pr, AllocHint a ~ AllocHint pr, RWCtx m s) => AllocHint a -> Message ('Mut s) -> m (Raw ('Mut s) a)
+ Capnp.New: newField :: forall a b m s. (IsStruct a, Allocate b, RWCtx m s) => Field 'Slot a b -> AllocHint b -> Raw ('Mut s) a -> m (Raw ('Mut s) b)
+ Capnp.New: newFromRepr :: forall a r m s. (Allocate r, 'Ptr ('Just r) ~ ReprFor a, RWCtx m s) => AllocHint r -> Message ('Mut s) -> m (Raw ('Mut s) a)
+ Capnp.New: newList :: forall m s lr r. (AllocateList a, RWCtx m s, lr ~ ListReprFor (ReprFor a), r ~ 'List ('Just lr), Allocate r, AllocHint r ~ ListAllocHint a) => ListAllocHint a -> Message ('Mut s) -> m (Raw ('Mut s) (List a))
+ Capnp.New: newMessage :: WriteCtx m s => Maybe WordCount -> m (Message ('Mut s))
+ Capnp.New: newRoot :: forall a m s. (RWCtx m s, IsStruct a, Allocate a) => AllocHint a -> Message ('Mut s) -> m (Raw ('Mut s) a)
+ Capnp.New: newTypedStruct :: forall a m s. (TypedStruct a, RWCtx m s) => Message ('Mut s) -> m (Raw ('Mut s) a)
+ Capnp.New: newTypedStructList :: forall a m s. (TypedStruct a, RWCtx m s) => Int -> Message ('Mut s) -> m (Raw ('Mut s) (List a))
+ Capnp.New: newtype Client a
+ Capnp.New: newtype Pipeline a
+ Capnp.New: numCaps :: MonadReadMessage mut m => Message mut -> m Int
+ Capnp.New: numSegs :: MonadReadMessage mut m => Message mut -> m Int
+ Capnp.New: numStructPtrs :: TypedStruct a => Word16
+ Capnp.New: numStructWords :: TypedStruct a => Word16
+ Capnp.New: numWords :: MonadReadMessage mut m => Segment mut -> m WordCount
+ Capnp.New: parse :: (Parse t p, ReadCtx m 'Const) => Raw 'Const t -> m p
+ Capnp.New: parseField :: (IsStruct a, Parse b bp, ReadCtx m 'Const) => Field k a b -> Raw 'Const a -> m bp
+ Capnp.New: parsedToBS :: forall a m pa s. (RWCtx m s, IsStruct a, Parse a pa) => pa -> m ByteString
+ Capnp.New: parsedToBuilder :: forall a m pa s. (RWCtx m s, IsStruct a, Parse a pa) => pa -> m Builder
+ Capnp.New: parsedToLBS :: forall a m pa s. (RWCtx m s, IsStruct a, Parse a pa) => pa -> m ByteString
+ Capnp.New: parsedToMsg :: forall a m pa s. (RWCtx m s, IsStruct a, Parse a pa) => pa -> m (Message ('Mut s))
+ Capnp.New: parsedToRaw :: forall a m pa s. (RWCtx m s, IsStruct a, Parse a pa) => pa -> m (Raw ('Mut s) a)
+ Capnp.New: pipe :: (IsStruct a, ReprFor b ~ 'Ptr pr) => Field k a b -> Pipeline a -> Pipeline b
+ Capnp.New: pipelineClient :: (IsCap a, MonadSTM m) => Pipeline a -> m (Client a)
+ Capnp.New: putMsg :: Message 'Const -> IO ()
+ Capnp.New: putParsed :: (IsStruct a, Parse a pa) => pa -> IO ()
+ Capnp.New: putValue :: (Cerialize RealWorld a, ToStruct ('Mut RealWorld) (Cerial ('Mut RealWorld) a)) => a -> IO ()
+ Capnp.New: read :: MonadReadMessage mut m => Segment mut -> WordCount -> m Word64
+ Capnp.New: readField :: forall k a b mut m. (IsStruct a, ReadCtx m mut) => Field k a b -> Raw mut a -> m (Raw mut b)
+ Capnp.New: runLimitT :: MonadThrow m => WordCount -> LimitT m a -> m (a, WordCount)
+ Capnp.New: sGetMsg :: Socket -> WordCount -> IO (Message 'Const)
+ Capnp.New: sGetParsed :: forall a pa. (IsStruct a, Parse a pa) => Socket -> WordCount -> IO pa
+ Capnp.New: sGetRaw :: IsStruct a => Socket -> WordCount -> IO (Raw 'Const a)
+ Capnp.New: sGetValue :: FromStruct 'Const a => Socket -> WordCount -> IO a
+ Capnp.New: sPutMsg :: Socket -> Message 'Const -> IO ()
+ Capnp.New: sPutParsed :: (IsStruct a, Parse a pa) => Socket -> pa -> IO ()
+ Capnp.New: sPutValue :: (Cerialize RealWorld a, ToStruct ('Mut RealWorld) (Cerial ('Mut RealWorld) a)) => Socket -> a -> IO ()
+ Capnp.New: setField :: forall a b m s. (IsStruct a, RWCtx m s) => Field 'Slot a b -> Raw ('Mut s) b -> Raw ('Mut s) a -> m ()
+ Capnp.New: setIndex :: forall a m s. (RWCtx m s, Element (ReprFor a)) => Raw ('Mut s) a -> Int -> Raw ('Mut s) (List a) -> m ()
+ Capnp.New: setVariant :: forall a b m s. (HasUnion a, RWCtx m s) => Variant 'Slot a b -> Raw ('Mut s) a -> Raw ('Mut s) b -> m ()
+ Capnp.New: slice :: MonadReadMessage mut m => WordCount -> WordCount -> Segment mut -> m (Segment mut)
+ Capnp.New: structSizes :: forall a. TypedStruct a => (Word16, Word16)
+ Capnp.New: structUnion :: HasUnion a => Raw mut a -> Raw mut (Which a)
+ Capnp.New: structWhich :: forall a mut m. (ReadCtx m mut, HasUnion a) => Raw mut a -> m (RawWhich mut a)
+ Capnp.New: toByteString :: Segment 'Const -> ByteString
+ Capnp.New: toWord :: IsWord a => a -> Word64
+ Capnp.New: type MarshalElement a ap = (Parse a ap, EstimateListAlloc a ap, Element (ReprFor a), MarshalElementByRepr (ListReprFor (ReprFor a)), MarshalElementReprConstraints (ListReprFor (ReprFor a)) a ap)
+ Capnp.New: type Parsed a = ParsedByRepr (ReprFor a) a
+ Capnp.New: type TypeParam a = (IsPtr a, Parse a (Parsed a))
+ Capnp.New: type family AllocHint a;
+ Capnp.New: unionField :: HasUnion a => Field 'Slot a Word16
+ Capnp.New: unionStruct :: HasUnion a => Raw mut (Which a) -> Raw mut a
+ Capnp.New: unionWhich :: forall a mut m. (ReadCtx m mut, HasUnion a) => Raw mut (Which a) -> m (RawWhich mut a)
+ Capnp.New: valueToBS :: (MonadLimit m, WriteCtx m s, Cerialize s a, ToStruct ('Mut s) (Cerial ('Mut s) a)) => a -> m ByteString
+ Capnp.New: valueToBuilder :: (MonadLimit m, WriteCtx m s, Cerialize s a, ToStruct ('Mut s) (Cerial ('Mut s) a)) => a -> m Builder
+ Capnp.New: valueToLBS :: (MonadLimit m, WriteCtx m s, Cerialize s a, ToStruct ('Mut s) (Cerial ('Mut s) a)) => a -> m ByteString
+ Capnp.New: valueToMsg :: (MonadLimit m, WriteCtx m s, Cerialize s a, ToStruct ('Mut s) (Cerial ('Mut s) a)) => a -> m (Message ('Mut s))
+ Capnp.New: variantByLabel :: HasVariant name k a b => Variant k a b
+ Capnp.New: waitPipeline :: forall a m pr. ('Ptr pr ~ ReprFor a, IsPtrRepr pr, MonadSTM m) => Pipeline a -> m (Raw 'Const a)
+ Capnp.New: }
+ Capnp.New.Accessors: encodeField :: forall a b m s bp. (IsStruct a, Parse b bp, RWCtx m s) => Field 'Slot a b -> bp -> Raw ('Mut s) a -> m ()
+ Capnp.New.Accessors: encodeVariant :: forall a b m s bp. (HasUnion a, Parse b bp, RWCtx m s) => Variant 'Slot a b -> bp -> Raw ('Mut s) a -> m ()
+ Capnp.New.Accessors: getField :: (IsStruct a, ReprFor b ~ 'Data sz, Parse b bp) => Field 'Slot a b -> Raw 'Const a -> bp
+ Capnp.New.Accessors: hasField :: (ReadCtx m mut, IsStruct a, IsPtr b) => Field 'Slot a b -> Raw mut a -> m Bool
+ Capnp.New.Accessors: initVariant :: forall a b m s. (HasUnion a, RWCtx m s) => Variant 'Group a b -> Raw ('Mut s) a -> m (Raw ('Mut s) b)
+ Capnp.New.Accessors: newField :: forall a b m s. (IsStruct a, Allocate b, RWCtx m s) => Field 'Slot a b -> AllocHint b -> Raw ('Mut s) a -> m (Raw ('Mut s) b)
+ Capnp.New.Accessors: parseField :: (IsStruct a, Parse b bp, ReadCtx m 'Const) => Field k a b -> Raw 'Const a -> m bp
+ Capnp.New.Accessors: readField :: forall k a b mut m. (IsStruct a, ReadCtx m mut) => Field k a b -> Raw mut a -> m (Raw mut b)
+ Capnp.New.Accessors: setField :: forall a b m s. (IsStruct a, RWCtx m s) => Field 'Slot a b -> Raw ('Mut s) b -> Raw ('Mut s) a -> m ()
+ Capnp.New.Accessors: setVariant :: forall a b m s. (HasUnion a, RWCtx m s) => Variant 'Slot a b -> Raw ('Mut s) a -> Raw ('Mut s) b -> m ()
+ Capnp.New.Accessors: structUnion :: HasUnion a => Raw mut a -> Raw mut (Which a)
+ Capnp.New.Accessors: structWhich :: forall a mut m. (ReadCtx m mut, HasUnion a) => Raw mut a -> m (RawWhich mut a)
+ Capnp.New.Accessors: unionStruct :: HasUnion a => Raw mut (Which a) -> Raw mut a
+ Capnp.New.Accessors: unionWhich :: forall a mut m. (ReadCtx m mut, HasUnion a) => Raw mut (Which a) -> m (RawWhich mut a)
+ Capnp.New.Basics: data AnyList
+ Capnp.New.Basics: data AnyPointer
+ Capnp.New.Basics: data AnyStruct
+ Capnp.New.Basics: data Capability
+ Capnp.New.Basics: data Data
+ Capnp.New.Basics: data Text
+ Capnp.New.Basics: instance Capnp.New.Classes.Allocate Capnp.New.Basics.AnyStruct
+ Capnp.New.Basics: instance Capnp.New.Classes.Allocate Capnp.New.Basics.Data
+ Capnp.New.Basics: instance Capnp.New.Classes.Allocate Capnp.New.Basics.Text
+ Capnp.New.Basics: instance Capnp.New.Classes.AllocateList Capnp.New.Basics.AnyPointer
+ Capnp.New.Basics: instance Capnp.New.Classes.AllocateList Capnp.New.Basics.AnyStruct
+ Capnp.New.Basics: instance Capnp.New.Classes.AllocateList Capnp.New.Basics.Data
+ Capnp.New.Basics: instance Capnp.New.Classes.AllocateList Capnp.New.Basics.Text
+ Capnp.New.Basics: instance Capnp.New.Classes.EstimateAlloc Capnp.New.Basics.AnyStruct (Capnp.New.Classes.Parsed Capnp.New.Basics.AnyStruct)
+ Capnp.New.Basics: instance Capnp.New.Classes.EstimateAlloc Capnp.New.Basics.Data Data.ByteString.Internal.ByteString
+ Capnp.New.Basics: instance Capnp.New.Classes.EstimateListAlloc Capnp.New.Basics.AnyPointer (Capnp.New.Classes.Parsed Capnp.New.Basics.AnyPointer)
+ Capnp.New.Basics: instance Capnp.New.Classes.EstimateListAlloc Capnp.New.Basics.AnyStruct (Capnp.New.Classes.Parsed Capnp.New.Basics.AnyStruct)
+ Capnp.New.Basics: instance Capnp.New.Classes.EstimateListAlloc Capnp.New.Basics.Data Data.ByteString.Internal.ByteString
+ Capnp.New.Basics: instance Capnp.New.Classes.EstimateListAlloc Capnp.New.Basics.Text Data.Text.Internal.Text
+ Capnp.New.Basics: instance Capnp.New.Classes.Marshal Capnp.New.Basics.AnyStruct (Capnp.New.Classes.Parsed Capnp.New.Basics.AnyStruct)
+ Capnp.New.Basics: instance Capnp.New.Classes.Marshal Capnp.New.Basics.Data Data.ByteString.Internal.ByteString
+ Capnp.New.Basics: instance Capnp.New.Classes.Parse Capnp.New.Basics.AnyList (Capnp.New.Classes.Parsed Capnp.New.Basics.AnyList)
+ Capnp.New.Basics: instance Capnp.New.Classes.Parse Capnp.New.Basics.AnyPointer (Capnp.New.Classes.Parsed Capnp.New.Basics.AnyPointer)
+ Capnp.New.Basics: instance Capnp.New.Classes.Parse Capnp.New.Basics.AnyStruct (Capnp.New.Classes.Parsed Capnp.New.Basics.AnyStruct)
+ Capnp.New.Basics: instance Capnp.New.Classes.Parse Capnp.New.Basics.Capability Capnp.Rpc.Untyped.Client
+ Capnp.New.Basics: instance Capnp.New.Classes.Parse Capnp.New.Basics.Data Data.ByteString.Internal.ByteString
+ Capnp.New.Basics: instance Capnp.New.Classes.Parse Capnp.New.Basics.Text Data.Text.Internal.Text
+ Capnp.New.Basics: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.New.Basics.AnyList)
+ Capnp.New.Basics: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.New.Basics.AnyPointer)
+ Capnp.New.Basics: instance GHC.Classes.Eq (Capnp.New.Classes.Parsed Capnp.New.Basics.AnyStruct)
+ Capnp.New.Basics: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.New.Basics.AnyList)
+ Capnp.New.Basics: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.New.Basics.AnyPointer)
+ Capnp.New.Basics: instance GHC.Show.Show (Capnp.New.Classes.Parsed Capnp.New.Basics.AnyStruct)
+ Capnp.New.Basics: type ParsedList a = Vector a
+ Capnp.New.Classes: -- length for a list. May be () if no extra info is needed.
+ Capnp.New.Classes: -- | Extra information needed to allocate a list of <tt>a</tt>s.
+ Capnp.New.Classes: class Allocate a where {
+ Capnp.New.Classes: class AllocateList a where {
+ Capnp.New.Classes: class (Parse t p, Allocate t) => EstimateAlloc t p
+ Capnp.New.Classes: class (Parse a ap, Allocate (List a)) => EstimateListAlloc a ap
+ Capnp.New.Classes: class IsWord a
+ Capnp.New.Classes: class Parse t p => Marshal t p
+ Capnp.New.Classes: class Parse t p | t -> p, p -> t
+ Capnp.New.Classes: class (IsStruct a, Allocate a, AllocHint a ~ ()) => TypedStruct a
+ Capnp.New.Classes: data family Parsed a
+ Capnp.New.Classes: encode :: (Parse t p, RWCtx m s, EstimateAlloc t p, Marshal t p) => Message ('Mut s) -> p -> m (Raw ('Mut s) t)
+ Capnp.New.Classes: estimateAlloc :: (EstimateAlloc t p, AllocHint t ~ ()) => p -> AllocHint t
+ Capnp.New.Classes: estimateListAlloc :: (EstimateListAlloc a ap, AllocHint (List a) ~ Int) => Vector ap -> AllocHint (List a)
+ Capnp.New.Classes: fromWord :: IsWord a => Word64 -> a
+ Capnp.New.Classes: instance (Capnp.New.Classes.Parse (Capnp.Repr.List a) (Data.Vector.Vector ap), Capnp.New.Classes.Allocate (Capnp.Repr.List a)) => Capnp.New.Classes.EstimateListAlloc (Capnp.Repr.List a) (Data.Vector.Vector ap)
+ Capnp.New.Classes: instance (Data.Default.Class.Default (Capnp.Repr.Raw 'Capnp.Message.Const a), Capnp.New.Classes.Parse a (Capnp.New.Classes.Parsed a)) => Data.Default.Class.Default (Capnp.New.Classes.Parsed a)
+ Capnp.New.Classes: instance Capnp.New.Classes.AllocateList ()
+ Capnp.New.Classes: instance Capnp.New.Classes.AllocateList (Capnp.Repr.List a)
+ Capnp.New.Classes: instance Capnp.New.Classes.AllocateList GHC.Int.Int16
+ Capnp.New.Classes: instance Capnp.New.Classes.AllocateList GHC.Int.Int32
+ Capnp.New.Classes: instance Capnp.New.Classes.AllocateList GHC.Int.Int64
+ Capnp.New.Classes: instance Capnp.New.Classes.AllocateList GHC.Int.Int8
+ Capnp.New.Classes: instance Capnp.New.Classes.AllocateList GHC.Types.Bool
+ Capnp.New.Classes: instance Capnp.New.Classes.AllocateList GHC.Types.Double
+ Capnp.New.Classes: instance Capnp.New.Classes.AllocateList GHC.Types.Float
+ Capnp.New.Classes: instance Capnp.New.Classes.AllocateList GHC.Word.Word16
+ Capnp.New.Classes: instance Capnp.New.Classes.AllocateList GHC.Word.Word32
+ Capnp.New.Classes: instance Capnp.New.Classes.AllocateList GHC.Word.Word64
+ Capnp.New.Classes: instance Capnp.New.Classes.AllocateList GHC.Word.Word8
+ Capnp.New.Classes: instance Capnp.New.Classes.AllocateList a => Capnp.New.Classes.Allocate (Capnp.Repr.List a)
+ Capnp.New.Classes: instance Capnp.New.Classes.EstimateListAlloc () ()
+ Capnp.New.Classes: instance Capnp.New.Classes.EstimateListAlloc GHC.Int.Int16 GHC.Int.Int16
+ Capnp.New.Classes: instance Capnp.New.Classes.EstimateListAlloc GHC.Int.Int32 GHC.Int.Int32
+ Capnp.New.Classes: instance Capnp.New.Classes.EstimateListAlloc GHC.Int.Int64 GHC.Int.Int64
+ Capnp.New.Classes: instance Capnp.New.Classes.EstimateListAlloc GHC.Int.Int8 GHC.Int.Int8
+ Capnp.New.Classes: instance Capnp.New.Classes.EstimateListAlloc GHC.Types.Bool GHC.Types.Bool
+ Capnp.New.Classes: instance Capnp.New.Classes.EstimateListAlloc GHC.Types.Double GHC.Types.Double
+ Capnp.New.Classes: instance Capnp.New.Classes.EstimateListAlloc GHC.Types.Float GHC.Types.Float
+ Capnp.New.Classes: instance Capnp.New.Classes.EstimateListAlloc GHC.Word.Word16 GHC.Word.Word16
+ Capnp.New.Classes: instance Capnp.New.Classes.EstimateListAlloc GHC.Word.Word32 GHC.Word.Word32
+ Capnp.New.Classes: instance Capnp.New.Classes.EstimateListAlloc GHC.Word.Word64 GHC.Word.Word64
+ Capnp.New.Classes: instance Capnp.New.Classes.EstimateListAlloc GHC.Word.Word8 GHC.Word.Word8
+ Capnp.New.Classes: instance Capnp.New.Classes.MarshalElement a ap => Capnp.New.Classes.EstimateAlloc (Capnp.Repr.List a) (Data.Vector.Vector ap)
+ Capnp.New.Classes: instance Capnp.New.Classes.MarshalElement a ap => Capnp.New.Classes.Marshal (Capnp.Repr.List a) (Data.Vector.Vector ap)
+ Capnp.New.Classes: instance Capnp.New.Classes.MarshalElement a ap => Capnp.New.Classes.Parse (Capnp.Repr.List a) (Data.Vector.Vector ap)
+ Capnp.New.Classes: instance Capnp.New.Classes.MarshalElementByRepr 'Capnp.Repr.ListComposite
+ Capnp.New.Classes: instance Capnp.New.Classes.MarshalElementByRepr ('Capnp.Repr.ListNormal l)
+ Capnp.New.Classes: instance Capnp.New.Classes.Parse () ()
+ Capnp.New.Classes: instance Capnp.New.Classes.Parse GHC.Int.Int16 GHC.Int.Int16
+ Capnp.New.Classes: instance Capnp.New.Classes.Parse GHC.Int.Int32 GHC.Int.Int32
+ Capnp.New.Classes: instance Capnp.New.Classes.Parse GHC.Int.Int64 GHC.Int.Int64
+ Capnp.New.Classes: instance Capnp.New.Classes.Parse GHC.Int.Int8 GHC.Int.Int8
+ Capnp.New.Classes: instance Capnp.New.Classes.Parse GHC.Types.Bool GHC.Types.Bool
+ Capnp.New.Classes: instance Capnp.New.Classes.Parse GHC.Types.Double GHC.Types.Double
+ Capnp.New.Classes: instance Capnp.New.Classes.Parse GHC.Types.Float GHC.Types.Float
+ Capnp.New.Classes: instance Capnp.New.Classes.Parse GHC.Word.Word16 GHC.Word.Word16
+ Capnp.New.Classes: instance Capnp.New.Classes.Parse GHC.Word.Word32 GHC.Word.Word32
+ Capnp.New.Classes: instance Capnp.New.Classes.Parse GHC.Word.Word64 GHC.Word.Word64
+ Capnp.New.Classes: instance Capnp.New.Classes.Parse GHC.Word.Word8 GHC.Word.Word8
+ Capnp.New.Classes: marshalInto :: (Marshal t p, RWCtx m s) => Raw ('Mut s) t -> p -> m ()
+ Capnp.New.Classes: new :: (Allocate a, ReprFor a ~ 'Ptr ('Just pr), Allocate pr, AllocHint a ~ AllocHint pr, RWCtx m s) => AllocHint a -> Message ('Mut s) -> m (Raw ('Mut s) a)
+ Capnp.New.Classes: newFromRepr :: forall a r m s. (Allocate r, 'Ptr ('Just r) ~ ReprFor a, RWCtx m s) => AllocHint r -> Message ('Mut s) -> m (Raw ('Mut s) a)
+ Capnp.New.Classes: newList :: forall m s lr r. (AllocateList a, RWCtx m s, lr ~ ListReprFor (ReprFor a), r ~ 'List ('Just lr), Allocate r, AllocHint r ~ ListAllocHint a) => ListAllocHint a -> Message ('Mut s) -> m (Raw ('Mut s) (List a))
+ Capnp.New.Classes: newRoot :: forall a m s. (RWCtx m s, IsStruct a, Allocate a) => AllocHint a -> Message ('Mut s) -> m (Raw ('Mut s) a)
+ Capnp.New.Classes: newTypedStruct :: forall a m s. (TypedStruct a, RWCtx m s) => Message ('Mut s) -> m (Raw ('Mut s) a)
+ Capnp.New.Classes: newTypedStructList :: forall a m s. (TypedStruct a, RWCtx m s) => Int -> Message ('Mut s) -> m (Raw ('Mut s) (List a))
+ Capnp.New.Classes: numStructPtrs :: TypedStruct a => Word16
+ Capnp.New.Classes: numStructWords :: TypedStruct a => Word16
+ Capnp.New.Classes: parse :: (Parse t p, ReadCtx m 'Const) => Raw 'Const t -> m p
+ Capnp.New.Classes: structSizes :: forall a. TypedStruct a => (Word16, Word16)
+ Capnp.New.Classes: toWord :: IsWord a => a -> Word64
+ Capnp.New.Classes: type MarshalElement a ap = (Parse a ap, EstimateListAlloc a ap, Element (ReprFor a), MarshalElementByRepr (ListReprFor (ReprFor a)), MarshalElementReprConstraints (ListReprFor (ReprFor a)) a ap)
+ Capnp.New.Classes: type family ListAllocHint a;
+ Capnp.New.Classes: }
+ Capnp.New.Constraints: type TypeParam a = (IsPtr a, Parse a (Parsed a))
+ Capnp.Repr: --
+ Capnp.Repr: -- </ul>
+ Capnp.Repr: -- <li>For lists, the length, and for composite lists, the struct sizes
+ Capnp.Repr: -- <ul>
+ Capnp.Repr: -- as well.</li>
+ Capnp.Repr: -- | Extra information needed to allocate a value:
+ Capnp.Repr: Cap :: PtrRepr
+ Capnp.Repr: Data :: DataSz -> Repr
+ Capnp.Repr: List :: Maybe ListRepr -> PtrRepr
+ Capnp.Repr: Ptr :: Maybe PtrRepr -> Repr
+ Capnp.Repr: Raw :: Untyped mut (ReprFor a) -> Raw (mut :: Mutability) (a :: Type)
+ Capnp.Repr: Struct :: PtrRepr
+ Capnp.Repr: Sz0 :: DataSz
+ Capnp.Repr: Sz1 :: DataSz
+ Capnp.Repr: Sz16 :: DataSz
+ Capnp.Repr: Sz32 :: DataSz
+ Capnp.Repr: Sz64 :: DataSz
+ Capnp.Repr: Sz8 :: DataSz
+ Capnp.Repr: [ListComposite] :: ListRepr
+ Capnp.Repr: [ListData] :: DataSz -> NormalListRepr
+ Capnp.Repr: [ListNormal] :: NormalListRepr -> ListRepr
+ Capnp.Repr: [ListPtr] :: NormalListRepr
+ Capnp.Repr: [fromRaw] :: Raw (mut :: Mutability) (a :: Type) -> Untyped mut (ReprFor a)
+ Capnp.Repr: alloc :: (Allocate r, RWCtx m s) => Message ('Mut s) -> AllocHint r -> m (UntypedSomePtr ('Mut s) r)
+ Capnp.Repr: class Allocate (r :: PtrRepr) where {
+ Capnp.Repr: class Element (r :: Repr)
+ Capnp.Repr: class IsListPtrRepr (r :: ListRepr)
+ Capnp.Repr: class IsPtrRepr (r :: Maybe PtrRepr)
+ Capnp.Repr: data DataSz
+ Capnp.Repr: data List a
+ Capnp.Repr: data ListRepr
+ Capnp.Repr: data NormalListRepr
+ Capnp.Repr: data PtrRepr
+ Capnp.Repr: data Repr
+ Capnp.Repr: fromElement :: forall m mut. (Element r, ReadCtx m mut) => Message mut -> Untyped mut (ElemRepr (ListReprFor r)) -> m (Untyped mut r)
+ Capnp.Repr: fromPtr :: (IsPtrRepr r, ReadCtx m mut) => Message mut -> Maybe (Ptr mut) -> m (Untyped mut ('Ptr r))
+ Capnp.Repr: index :: forall a m mut. (ReadCtx m mut, Element (ReprFor a)) => Int -> Raw mut (List a) -> m (Raw mut a)
+ Capnp.Repr: instance (Capnp.Repr.IsPtrRepr r, Capnp.Repr.ReprFor a GHC.Types.~ 'Capnp.Repr.Ptr r) => Capnp.Classes.FromPtr mut (Capnp.Repr.Raw mut a)
+ Capnp.Repr: instance (Capnp.Repr.IsPtrRepr r, Capnp.Repr.ReprFor a GHC.Types.~ 'Capnp.Repr.Ptr r) => Capnp.Classes.ToPtr s (Capnp.Repr.Raw ('Capnp.Message.Mut s) a)
+ Capnp.Repr: instance (Capnp.Repr.ReprFor a GHC.Types.~ 'Capnp.Repr.Ptr ('GHC.Maybe.Just 'Capnp.Repr.Struct)) => Capnp.Classes.FromStruct mut (Capnp.Repr.Raw mut a)
+ Capnp.Repr: instance (Capnp.Repr.ReprFor a GHC.Types.~ 'Capnp.Repr.Ptr ('GHC.Maybe.Just 'Capnp.Repr.Struct)) => Capnp.Classes.ToStruct mut (Capnp.Repr.Raw mut a)
+ Capnp.Repr: instance Capnp.Repr.Allocate 'Capnp.Repr.Cap
+ Capnp.Repr: instance Capnp.Repr.Allocate 'Capnp.Repr.Struct
+ Capnp.Repr: instance Capnp.Repr.Allocate ('Capnp.Repr.List ('GHC.Maybe.Just 'Capnp.Repr.ListComposite))
+ Capnp.Repr: instance Capnp.Repr.AllocateNormalList 'Capnp.Repr.ListPtr
+ Capnp.Repr: instance Capnp.Repr.AllocateNormalList ('Capnp.Repr.ListData 'Capnp.Repr.Sz0)
+ Capnp.Repr: instance Capnp.Repr.AllocateNormalList ('Capnp.Repr.ListData 'Capnp.Repr.Sz1)
+ Capnp.Repr: instance Capnp.Repr.AllocateNormalList ('Capnp.Repr.ListData 'Capnp.Repr.Sz16)
+ Capnp.Repr: instance Capnp.Repr.AllocateNormalList ('Capnp.Repr.ListData 'Capnp.Repr.Sz32)
+ Capnp.Repr: instance Capnp.Repr.AllocateNormalList ('Capnp.Repr.ListData 'Capnp.Repr.Sz64)
+ Capnp.Repr: instance Capnp.Repr.AllocateNormalList ('Capnp.Repr.ListData 'Capnp.Repr.Sz8)
+ Capnp.Repr: instance Capnp.Repr.AllocateNormalList r => Capnp.Repr.Allocate ('Capnp.Repr.List ('GHC.Maybe.Just ('Capnp.Repr.ListNormal r)))
+ Capnp.Repr: instance Capnp.Repr.Element ('Capnp.Repr.Data sz)
+ Capnp.Repr: instance Capnp.Repr.Element ('Capnp.Repr.Ptr 'GHC.Maybe.Nothing)
+ Capnp.Repr: instance Capnp.Repr.Element ('Capnp.Repr.Ptr ('GHC.Maybe.Just 'Capnp.Repr.Cap))
+ Capnp.Repr: instance Capnp.Repr.Element ('Capnp.Repr.Ptr ('GHC.Maybe.Just 'Capnp.Repr.Struct))
+ Capnp.Repr: instance Capnp.Repr.IsListPtrRepr 'Capnp.Repr.ListComposite
+ Capnp.Repr: instance Capnp.Repr.IsListPtrRepr ('Capnp.Repr.ListNormal 'Capnp.Repr.ListPtr)
+ Capnp.Repr: instance Capnp.Repr.IsListPtrRepr ('Capnp.Repr.ListNormal ('Capnp.Repr.ListData 'Capnp.Repr.Sz0))
+ Capnp.Repr: instance Capnp.Repr.IsListPtrRepr ('Capnp.Repr.ListNormal ('Capnp.Repr.ListData 'Capnp.Repr.Sz1))
+ Capnp.Repr: instance Capnp.Repr.IsListPtrRepr ('Capnp.Repr.ListNormal ('Capnp.Repr.ListData 'Capnp.Repr.Sz16))
+ Capnp.Repr: instance Capnp.Repr.IsListPtrRepr ('Capnp.Repr.ListNormal ('Capnp.Repr.ListData 'Capnp.Repr.Sz32))
+ Capnp.Repr: instance Capnp.Repr.IsListPtrRepr ('Capnp.Repr.ListNormal ('Capnp.Repr.ListData 'Capnp.Repr.Sz64))
+ Capnp.Repr: instance Capnp.Repr.IsListPtrRepr ('Capnp.Repr.ListNormal ('Capnp.Repr.ListData 'Capnp.Repr.Sz8))
+ Capnp.Repr: instance Capnp.Repr.IsListPtrRepr r => Capnp.Repr.IsPtrRepr ('GHC.Maybe.Just ('Capnp.Repr.List ('GHC.Maybe.Just r)))
+ Capnp.Repr: instance Capnp.Repr.IsPtrRepr 'GHC.Maybe.Nothing
+ Capnp.Repr: instance Capnp.Repr.IsPtrRepr ('GHC.Maybe.Just 'Capnp.Repr.Cap)
+ Capnp.Repr: instance Capnp.Repr.IsPtrRepr ('GHC.Maybe.Just 'Capnp.Repr.Struct)
+ Capnp.Repr: instance Capnp.Repr.IsPtrRepr ('GHC.Maybe.Just ('Capnp.Repr.List 'GHC.Maybe.Nothing))
+ Capnp.Repr: instance Capnp.Repr.IsPtrRepr ('GHC.Maybe.Just ('Capnp.Repr.List a)) => Capnp.Repr.Element ('Capnp.Repr.Ptr ('GHC.Maybe.Just ('Capnp.Repr.List a)))
+ Capnp.Repr: instance Capnp.Untyped.HasMessage (Capnp.Repr.Untyped mut (Capnp.Repr.ReprFor a)) mut => Capnp.Untyped.HasMessage (Capnp.Repr.Raw mut a) mut
+ Capnp.Repr: instance Capnp.Untyped.MessageDefault (Capnp.Repr.Raw 'Capnp.Message.Const a) 'Capnp.Message.Const => Data.Default.Class.Default (Capnp.Repr.Raw 'Capnp.Message.Const a)
+ Capnp.Repr: instance Capnp.Untyped.MessageDefault (Capnp.Repr.Untyped mut (Capnp.Repr.ReprFor a)) mut => Capnp.Untyped.MessageDefault (Capnp.Repr.Raw mut a) mut
+ Capnp.Repr: instance GHC.Classes.Eq (Capnp.Repr.Untyped mut (Capnp.Repr.ReprFor a)) => GHC.Classes.Eq (Capnp.Repr.Raw mut a)
+ Capnp.Repr: instance GHC.Generics.Generic (Capnp.Repr.Untyped mut (Capnp.Repr.ReprFor a)) => GHC.Generics.Generic (Capnp.Repr.Raw mut a)
+ Capnp.Repr: instance GHC.Read.Read (Capnp.Repr.Untyped mut (Capnp.Repr.ReprFor a)) => GHC.Read.Read (Capnp.Repr.Raw mut a)
+ Capnp.Repr: instance GHC.Show.Show (Capnp.Repr.Untyped mut (Capnp.Repr.ReprFor a)) => GHC.Show.Show (Capnp.Repr.Raw mut a)
+ Capnp.Repr: instance GHC.Show.Show Capnp.Repr.DataSz
+ Capnp.Repr: instance GHC.Show.Show Capnp.Repr.ListRepr
+ Capnp.Repr: instance GHC.Show.Show Capnp.Repr.NormalListRepr
+ Capnp.Repr: instance GHC.Show.Show Capnp.Repr.PtrRepr
+ Capnp.Repr: instance GHC.Show.Show Capnp.Repr.Repr
+ Capnp.Repr: length :: Raw mut (List a) -> Int
+ Capnp.Repr: newtype Raw (mut :: Mutability) (a :: Type)
+ Capnp.Repr: rFromList :: (IsListPtrRepr r, ReadCtx m mut) => List mut -> m (UntypedSomeList mut r)
+ Capnp.Repr: rFromListMsg :: (IsListPtrRepr r, ReadCtx m mut) => Message mut -> m (UntypedSomeList mut r)
+ Capnp.Repr: rToList :: IsListPtrRepr r => UntypedSomeList mut r -> List mut
+ Capnp.Repr: setIndex :: forall a m s. (RWCtx m s, Element (ReprFor a)) => Raw ('Mut s) a -> Int -> Raw ('Mut s) (List a) -> m ()
+ Capnp.Repr: toElement :: Element r => Untyped mut r -> Untyped mut (ElemRepr (ListReprFor r))
+ Capnp.Repr: toPtr :: IsPtrRepr r => Untyped mut ('Ptr r) -> Maybe (Ptr mut)
+ Capnp.Repr: type IsCap a = ReprFor a ~ 'Ptr ('Just 'Cap)
+ Capnp.Repr: type IsPtr a = (ReprFor a ~ 'Ptr (PtrReprFor (ReprFor a)), IsPtrRepr (PtrReprFor (ReprFor a)))
+ Capnp.Repr: type IsStruct a = ReprFor a ~ 'Ptr ('Just 'Struct)
+ Capnp.Repr: type family AllocHint r;
+ Capnp.Repr: }
+ Capnp.Repr.Methods: Client :: Client -> Client a
+ Capnp.Repr.Methods: Method :: !Word64 -> !Word16 -> Method c p r
+ Capnp.Repr.Methods: Pipeline :: Pipeline -> Pipeline a
+ Capnp.Repr.Methods: [$sel:interfaceId:Method] :: Method c p r -> !Word64
+ Capnp.Repr.Methods: [$sel:methodId:Method] :: Method c p r -> !Word16
+ Capnp.Repr.Methods: asClient :: (AsClient f, MonadSTM m) => IsCap c => f c -> m (Client c)
+ Capnp.Repr.Methods: callB :: (AsClient f, IsCap c, IsStruct p, MonadSTM m) => Method c p r -> (forall s. PureBuilder s (Raw ('Mut s) p)) -> f c -> m (Pipeline r)
+ Capnp.Repr.Methods: callP :: forall c p r f m pp. (AsClient f, IsCap c, IsStruct p, Parse p pp, MonadSTM m, MonadThrow m) => Method c p r -> pp -> f c -> m (Pipeline r)
+ Capnp.Repr.Methods: callR :: (AsClient f, IsCap c, IsStruct p, MonadSTM m) => Method c p r -> Raw 'Const p -> f c -> m (Pipeline r)
+ Capnp.Repr.Methods: class AsClient f
+ Capnp.Repr.Methods: class (IsCap c, IsStruct p, IsStruct r) => HasMethod (name :: Symbol) c p r | name c -> p r
+ Capnp.Repr.Methods: data Method c p r
+ Capnp.Repr.Methods: instance (Capnp.Repr.ReprFor a GHC.Types.~ 'Capnp.Repr.Ptr ('GHC.Maybe.Just 'Capnp.Repr.Cap)) => Capnp.Rpc.Untyped.IsClient (Capnp.Repr.Methods.Client a)
+ Capnp.Repr.Methods: instance Capnp.Repr.Methods.AsClient Capnp.Repr.Methods.Client
+ Capnp.Repr.Methods: instance Capnp.Repr.Methods.AsClient Capnp.Repr.Methods.Pipeline
+ Capnp.Repr.Methods: instance Capnp.Repr.Methods.HasMethod name c p r => GHC.OverloadedLabels.IsLabel name (Capnp.Repr.Methods.Method c p r)
+ Capnp.Repr.Methods: instance GHC.Classes.Eq (Capnp.Repr.Methods.Client a)
+ Capnp.Repr.Methods: instance GHC.Show.Show (Capnp.Repr.Methods.Client a)
+ Capnp.Repr.Methods: methodByLabel :: HasMethod name c p r => Method c p r
+ Capnp.Repr.Methods: newtype Client a
+ Capnp.Repr.Methods: newtype Pipeline a
+ Capnp.Repr.Methods: pipe :: (IsStruct a, ReprFor b ~ 'Ptr pr) => Field k a b -> Pipeline a -> Pipeline b
+ Capnp.Repr.Methods: pipelineClient :: (IsCap a, MonadSTM m) => Pipeline a -> m (Client a)
+ Capnp.Repr.Methods: waitPipeline :: forall a m pr. ('Ptr pr ~ ReprFor a, IsPtrRepr pr, MonadSTM m) => Pipeline a -> m (Raw 'Const a)
+ Capnp.Repr.Parsed: type Parsed a = ParsedByRepr (ReprFor a) a
+ Capnp.Rpc.Promise: newReadyPromise :: MonadSTM m => a -> m (Promise a)
+ Capnp.Rpc.Untyped: waitPipeline :: MonadSTM m => Pipeline -> m RawMPtr
+ Capnp.TraversalLimit: instance Control.Monad.Catch.MonadCatch m => Control.Monad.Catch.MonadCatch (Capnp.TraversalLimit.LimitT m)
+ Capnp.Untyped: copyCap :: RWCtx m s => Message ('Mut s) -> Cap ('Mut s) -> m (Cap ('Mut s))
+ Capnp.Untyped: copyList :: RWCtx m s => Message ('Mut s) -> List ('Mut s) -> m (List ('Mut s))
+ Capnp.Untyped: copyListOf :: RWCtx m s => ListOf ('Mut s) a -> ListOf ('Mut s) a -> m ()
+ Capnp.Untyped: copyPtr :: RWCtx m s => Message ('Mut s) -> Maybe (Ptr ('Mut s)) -> m (Maybe (Ptr ('Mut s)))
- Capnp.Message: maxSegmentSize :: Int
+ Capnp.Message: maxSegmentSize :: WordCount
- Capnp.Message: newSegment :: WriteCtx m s => Message ('Mut s) -> Int -> m (Int, Segment ('Mut s))
+ Capnp.Message: newSegment :: WriteCtx m s => Message ('Mut s) -> WordCount -> m (Int, Segment ('Mut s))

Files

.gitignore view
@@ -27,3 +27,9 @@ # dependencies between it and the rest of the library. /examples/Capnp /tests/Capnp++# I sometimes leave notes for myself in my working directory:+/NOTES++# Benchmark outputs:+*.html
CHANGELOG.md view
@@ -1,7 +1,45 @@++# 0.11.0.0++* This release introduces some experimental new APIs; see the blog post+  for details: <https://zenhack.net/2021/07/30/new-haskell-capnp-release-reworked-apis.html>+  * The new APIs include support for RPC pipelining, which is not+    possible with the old APIs.+* The traversal limit is tracked at a coarser granularity. This results+  in a modest performance improvement, and may result in slightly+  different (but similar) amounts of the limit being used for a given+  computation than with the old implementation.+* Bounds on pointers are checked a bit earlier (when the pointer is+  read, rather than when its referent is accessed). As a result, some+  malformed messages may trigger bounds check errors which did not+  previously, because the offending portion of the message was not+  read.+* The limit on how many capabilities can be attached to a single message+  has been increased.+* `LimitT m` now has an instance of `MonadCatch` if `m` has an instance.+* Some harmless warnings triggered by the generated code are now+  silenced.+* `Capnp.Rpc.Promise` exposes a new function `newReadyPromise`, which+  can be used to create an already-fulfilled promise.+* Fixed a race condition where if the supervisor for a client is killed+  before the server has finished spawning, the shutdown method might+  not be run.+* `Capnp.Rpc.Server.runServer` no longer calls handleStop on exit.+  Most users of the library will not be affected, as this function is+  mostly a low-level implementation detail that is called by higher+  level functionality.+* In `Capnp.Message` some uses of the type `Int` in the API have been+  strengthened to type `WordCount`.++# 0.10.0.1++* Fix a bug causing spurious exceptions when creating very large+  messages.+ # 0.10.0.0  * The parametrization of messages has been reworked. Most things that-  per parametrized over a message type are now parametrized over a+  were parametrized over a message type are now parametrized over a   type parameter of kind `Mutability` (defined in `Capnp.Message`).   * The Message type class has been replaced with a type `Message` of     kind `Mutability -> *`, and a type class `MonadReadMessage` for
README.md view
@@ -29,11 +29,6 @@ * The implementation is *not* robust against resource exhaustion   attacks; for now users are strongly discouraged from using it to do   RPC with untrusted peers.-* While most of the machinery for it is in place, the API does not-  currently expose a way to do field projection on remote promises.-  As a consequence, actually pipelining method calls is not currently-  possible, so the library is currently best suited to environments-  which are already low-latency.  The API is considered unstable. It will likely see changes, for the sake of polish, consistency, etc. as well as to improve performance and@@ -45,7 +40,7 @@ [issue27]: https://github.com/zenhack/haskell-capnp/issues/27 [issue28]: https://github.com/zenhack/haskell-capnp/issues/28 -[ci-img]: https://gitlab.com/isd/haskell-capnp/badges/master/build.svg+[ci-img]: https://gitlab.com/isd/haskell-capnp/badges/master/pipeline.svg [ci]: https://gitlab.com/isd/haskell-capnp/pipelines  [hackage-img]: https://img.shields.io/hackage/v/capnp.svg
+ bench/Main.hs view
@@ -0,0 +1,57 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE QuasiQuotes       #-}+module Main (main) where+++import qualified Capnp                     as C+import qualified Capnp.Untyped             as U+import           Control.DeepSeq           (NFData(..))+import           Control.Monad             (unless)+import           Criterion.Main+import qualified Data.ByteString           as BS+import           System.Exit               (ExitCode(..))+import qualified System.Process.ByteString as PB++-- Get the raw bytes of a CodeGeneratorRequest for all of the bundled+-- capnproto core schema. Useful as a source of generic test data.+getCGRBytes :: IO BS.ByteString+getCGRBytes = do+    (exit, cgrBytes, _) <- PB.readProcessWithExitCode "capnp"+        [ "compile", "-o-"+        , "-I", "core-schema/"+        , "--src-prefix=core-schema/"+        , "core-schema/capnp/schema.capnp"+        , "core-schema/capnp/stream.capnp"+        , "core-schema/capnp/rpc-twoparty.capnp"+        , "core-schema/capnp/persistent.capnp"+        , "core-schema/capnp/rpc.capnp"+        , "core-schema/capnp/compat/json.capnp"+        , "core-schema/capnp/c++.capnp"+        ]+        ""+    unless (exit == ExitSuccess) $ error "capnp compile failed"+    pure cgrBytes++instance NFData (C.Message mut) where+    rnf = (`seq` ())++main :: IO ()+main = do+    cgrBytes <- getCGRBytes+    msg <- C.bsToMsg cgrBytes+    let whnfLTIO = whnfIO . C.evalLimitT maxBound+    defaultMain+        [ bench "canonicalize" $ whnfLTIO $ do+            root <- U.rootPtr msg+            C.canonicalize root+        , env+            (C.evalLimitT maxBound $ do+                mutMsg <- C.thaw msg+                newMsg <- C.newMessage Nothing+                pure (mutMsg, newMsg)+            )+            (\ ~(mutMsg, newMsg) -> bench "copy" $ whnfLTIO $ do+                root <- U.rootPtr mutMsg+                U.copyPtr newMsg (Just (U.PtrStruct root))+            )+        ]
capnp.cabal view
@@ -1,8 +1,8 @@ cabal-version:            2.2 name:                     capnp-version:                  0.10.0.1+version:                  0.11.0.0 category:                 Data, Serialization, Network, Rpc-copyright:                2016-2020 haskell-capnp contributors (see CONTRIBUTORS file).+copyright:                2016-2021 haskell-capnp contributors (see CONTRIBUTORS file). author:                   Ian Denhardt maintainer:               ian@zenhack.net license:                  MIT@@ -65,6 +65,7 @@       , containers                        >= 0.5.9 && <0.7       , data-default                      ^>= 0.7.1       , exceptions                        ^>= 0.10.0+      , ghc-prim                          ^>= 0.6.1       , mtl                               ^>= 2.2.2       , primitive                         >= 0.6.3 && <0.8       , safe-exceptions                   ^>= 0.1.7@@ -104,16 +105,26 @@       , Capnp.Bits       , Capnp.Canonicalize       , Capnp.Classes+      , Capnp.New+      , Capnp.New.Accessors+      , Capnp.New.Basics+      , Capnp.New.Classes+      , Capnp.New.Constraints       , Capnp.Convert       , Capnp.Errors+      , Capnp.Fields       , Capnp.GenHelpers       , Capnp.GenHelpers.Pure       , Capnp.GenHelpers.Rpc+      , Capnp.GenHelpers.New       , Capnp.IO       , Capnp.Message       , Capnp.Pointer       , Capnp.Untyped       , Capnp.Untyped.Pure+      , Capnp.Repr+      , Capnp.Repr.Methods+      , Capnp.Repr.Parsed       , Capnp.TraversalLimit       , Capnp.Rpc       , Capnp.Rpc.Promise@@ -153,6 +164,15 @@       , Capnp.Gen.Capnp.RpcTwoparty       , Capnp.Gen.Capnp.Schema       , Capnp.Gen.Capnp.Stream++      , Capnp.Gen.Capnp.Cxx.New+      , Capnp.Gen.Capnp.Compat.Json.New+      , Capnp.Gen.Capnp.Persistent.New+      , Capnp.Gen.Capnp.Rpc.New+      , Capnp.Gen.Capnp.RpcTwoparty.New+      , Capnp.Gen.Capnp.Schema.New+      , Capnp.Gen.Capnp.Stream.New+       , Capnp.Gen.ById.Xbdf87d7bb8304e81.Pure       , Capnp.Gen.ById.X8ef99297a43a5e34.Pure       , Capnp.Gen.ById.Xb8630836983feed7.Pure@@ -160,6 +180,13 @@       , Capnp.Gen.ById.Xa184c7885cdaf2a1.Pure       , Capnp.Gen.ById.Xa93fc509624c72d9.Pure       , Capnp.Gen.ById.X86c366a91393f3f8.Pure+      , Capnp.Gen.ById.Xbdf87d7bb8304e81.New+      , Capnp.Gen.ById.X8ef99297a43a5e34.New+      , Capnp.Gen.ById.Xb8630836983feed7.New+      , Capnp.Gen.ById.Xb312981b2552a250.New+      , Capnp.Gen.ById.Xa184c7885cdaf2a1.New+      , Capnp.Gen.ById.Xa93fc509624c72d9.New+      , Capnp.Gen.ById.X86c366a91393f3f8.New       , Capnp.Gen.ById.Xbdf87d7bb8304e81       , Capnp.Gen.ById.X8ef99297a43a5e34       , Capnp.Gen.ById.Xb8630836983feed7@@ -170,7 +197,6 @@       -- END GENERATED SCHEMA MODULES     other-modules:         Internal.AppendVec-      , Internal.Finalizer       , Internal.SnocList       , Internal.Rc       , Internal.TCloseQ@@ -179,8 +205,7 @@       , Codec.Capnp     -- other-extensions:     build-depends:-        cpu                               ^>= 0.1.2-      , hashable                          >= 1.2.7 && <1.4+        hashable                          >= 1.2.7 && <1.4       , data-default-instances-vector     ^>= 0.0.1       , stm                               ^>= 2.5.0       , stm-containers                    >= 1.1.0 && <1.3@@ -188,8 +213,9 @@       , focus                             ^>= 1.0.1       , async                             ^>= 2.2.1       , network-simple                    ^>= 0.4-      , network                           ^>= 3.1-      , supervisors                       ^>= 0.2.0+      , network                           >= 3 && <3.2+      , supervisors                       ^>= 0.2.1+      , lifetimes                         ^>= 0.1       , pretty-show                       >= 1.9.5 && <1.11       , template-haskell                  ^>=2.16.0 @@ -202,6 +228,7 @@   main-is: Main.hs   other-modules:       IR.Name+      IR.New     , IR.Common     , IR.Stage1     , IR.Flat@@ -212,9 +239,11 @@     , Trans.Stage1ToFlat     , Trans.FlatToRaw     , Trans.FlatToPure+    , Trans.FlatToNew     , Trans.ToHaskellCommon     , Trans.PureToHaskell     , Trans.RawToHaskell+    , Trans.NewToHaskell     , Trans.HaskellToText     , Check   build-depends:@@ -247,28 +276,36 @@       , Examples.Rpc.CalculatorServer        -- Generated code for examples/calculator.capnp-      , Capnp.Gen.ById.X85150b117366d14b-      , Capnp.Gen.ById.X85150b117366d14b.Pure       , Capnp.Gen.Calculator       , Capnp.Gen.Calculator.Pure+      , Capnp.Gen.Calculator.New+      , Capnp.Gen.ById.X85150b117366d14b+      , Capnp.Gen.ById.X85150b117366d14b.Pure+      , Capnp.Gen.ById.X85150b117366d14b.New        -- Generated code for examples/echo.capnp       , Capnp.Gen.Echo       , Capnp.Gen.Echo.Pure+      , Capnp.Gen.Echo.New       , Capnp.Gen.ById.Xd0a87f36fa0182f5       , Capnp.Gen.ById.Xd0a87f36fa0182f5.Pure+      , Capnp.Gen.ById.Xd0a87f36fa0182f5.New        -- generated from tests/data/aircraft.capnp       , Capnp.Gen.Aircraft       , Capnp.Gen.Aircraft.Pure+      , Capnp.Gen.Aircraft.New       , Capnp.Gen.ById.X832bcc6686a26d56       , Capnp.Gen.ById.X832bcc6686a26d56.Pure+      , Capnp.Gen.ById.X832bcc6686a26d56.New        -- generated from tests/data/generics.capnp       , Capnp.Gen.Generics       , Capnp.Gen.Generics.Pure+      , Capnp.Gen.Generics.New       , Capnp.Gen.ById.Xb6421fb8e478d144       , Capnp.Gen.ById.Xb6421fb8e478d144.Pure+      , Capnp.Gen.ById.Xb6421fb8e478d144.New        -- Actual tests:       , Module.Capnp.Gen.Capnp.Schema@@ -280,6 +317,7 @@       , Module.Capnp.Bits       , Module.Capnp.Basics       , Module.Capnp.Canonicalize+      , PointerOOB       , Regression       , WalkSchemaCodeGenRequest       , SchemaQuickCheck@@ -303,3 +341,15 @@       , deepseq       , pretty-show       , supervisors+++benchmark bench+  import: shared-opts+  type: exitcode-stdio-1.0+  main-is: Main.hs+  hs-source-dirs: bench+  build-depends:+      capnp+    , criterion ^>=1.5.9+    , deepseq+    , process-extras
cmd/capnpc-haskell/Check.hs view
@@ -1,5 +1,4 @@ {-# LANGUAGE DuplicateRecordFields #-}-{-# LANGUAGE LambdaCase            #-} {-# LANGUAGE NamedFieldPuns        #-} module Check (reportIssues) where @@ -8,14 +7,14 @@  import qualified Data.Vector as V -import Capnp.Gen.Capnp.Schema.Pure+import Capnp.Gen.Capnp.Schema.New  -- | Scan the code generator request for certain issues, and warn the user -- if found. -- -- We still assume the input is *valid*, so these are issues regarding things -- that our implementation can't handle.-reportIssues :: CodeGeneratorRequest -> IO ()+reportIssues :: Parsed CodeGeneratorRequest -> IO () reportIssues CodeGeneratorRequest{nodes} =     let problemFields =             [ (displayName, name)@@ -39,8 +38,8 @@             , "for more information.\n"             ] -isPtrValue :: Value -> Bool-isPtrValue = \case+isPtrValue :: Parsed Value -> Bool+isPtrValue (Value v) = case v of     Value'void      -> False     Value'bool _    -> False     Value'int8 _    -> False
cmd/capnpc-haskell/IR/Common.hs view
@@ -7,11 +7,12 @@  import Data.Word -import qualified Capnp.Untyped.Pure as U-import           Data.Bifunctor     (Bifunctor (..))-import qualified Data.Map.Strict    as M-import qualified Data.Vector        as V-import qualified IR.Name            as Name+import qualified Capnp.New.Basics  as B+import           Capnp.Repr.Parsed (Parsed)+import           Data.Bifunctor    (Bifunctor(..))+import qualified Data.Map.Strict   as M+import qualified Data.Vector       as V+import qualified IR.Name           as Name  newtype TypeId = TypeId Word64     deriving(Show, Read, Eq, Ord)@@ -195,7 +196,7 @@ data Value b r     = VoidValue     | WordValue (WordType r) !Word64-    | PtrValue (PtrType b r) (Maybe U.Ptr)+    | PtrValue (PtrType b r) (Parsed B.AnyPointer)     deriving(Show, Eq, Functor)  instance Bifunctor Value where
cmd/capnpc-haskell/IR/Haskell.hs view
@@ -89,6 +89,11 @@         , typ  :: Type         , defs :: [InstanceDef]         }+    | DcTypeInstance Type Type+    | DcDeriveInstance+        { ctx :: [Type]+        , typ :: Type+        }     | DcClass         { ctx     :: [Type]         , name    :: Name.LocalQ@@ -108,6 +113,9 @@     -- ^ A list of type classes to include in the deriving clause.     , dataNewtype  :: !Bool     -- ^ Whether the declarationis a "newtype" or "data" declaration.+    , dataInstance :: !Bool+    -- ^ If true, this is actually an instance of a data family, rather+    -- than a stand-alone type.     }     deriving(Show, Read, Eq) @@ -158,10 +166,12 @@     | TPrim Common.PrimWord     | TUnit     | TKindAnnotated Type Type+    | TString T.Text -- type-level string literal     deriving(Show, Read, Eq)  data Exp-    = EApp Exp [Exp]+    = EVar T.Text+    | EApp Exp [Exp]     | EFApp Exp [Exp]     -- ^ "Functorial" application, i.e. f <$> x <*> y <*> z.     | EGName Name.GlobalQ@@ -176,6 +186,7 @@     | ETypeAnno Exp Type     | ELambda [Pattern] Exp     | ERecord Exp [(Name.UnQ, Exp)]+    | ELabel Name.UnQ     deriving(Show, Read, Eq)  data Do
cmd/capnpc-haskell/IR/Name.hs view
@@ -28,7 +28,7 @@     getUnQ GlobalQ{local} = getUnQ local  newtype UnQ = UnQ T.Text-    deriving(Show, Read, Eq, Ord, IsString)+    deriving(Show, Read, Eq, Ord, IsString, Semigroup)  newtype NS = NS [T.Text]     deriving(Show, Read, Eq, Ord)
+ cmd/capnpc-haskell/IR/New.hs view
@@ -0,0 +1,81 @@+{-# LANGUAGE DuplicateRecordFields #-}+module IR.New where++import qualified Capnp.Repr as R+import           Data.Word+import qualified IR.Common  as C+import qualified IR.Name    as Name++type Brand = C.ListBrand Name.CapnpQ++data File+    = File+        { fileId   :: !Word64+        , decls    :: [Decl]+        , fileName :: FilePath+        }++data Decl+    = TypeDecl+        { name          :: Name.LocalQ+        , nodeId        :: !Word64+        , params        :: [Name.UnQ]+        , repr          :: R.Repr+        , extraTypeInfo :: Maybe ExtraTypeInfo+        }+    | FieldDecl+        { containerType :: Name.LocalQ+        , typeParams    :: [Name.UnQ]+        , fieldName     :: Name.UnQ+        , fieldLocType  :: C.FieldLocType Brand Name.CapnpQ+        }+    | UnionDecl+        { name       :: Name.LocalQ+        , typeParams :: [Name.UnQ]+        , tagLoc     :: C.DataLoc+        , variants   :: [UnionVariant]+        }+    | MethodDecl+        { interfaceName :: Name.LocalQ+        , typeParams    :: [Name.UnQ]+        , interfaceId   :: !Word64+        , methodName    :: Name.UnQ+        , methodId      :: !Word16+        , paramType     :: C.CompositeType Brand Name.CapnpQ+        , resultType    :: C.CompositeType Brand Name.CapnpQ+        }+    | ParsedInstanceDecl+        { typeName        :: Name.LocalQ+        , typeParams      :: [Name.UnQ]+        , parsedInstances :: ParsedInstances+        }+    | ConstDecl+        { name  :: Name.LocalQ+        , value :: C.Value Brand Name.CapnpQ+        }++-- | Data needed for declaring a Parsed instance, and instances+-- of related classes.+data ParsedInstances+    = ParsedStruct+        { fields       :: [(Name.UnQ, C.FieldLocType Brand Name.CapnpQ)]+        , hasUnion     :: !Bool+        , dataCtorName :: Name.LocalQ+        }+    | ParsedUnion+        { variants :: [(Name.UnQ, C.FieldLocType Brand Name.CapnpQ)]+        }++data ExtraTypeInfo+    = StructTypeInfo+        { nWords :: !Word16+        , nPtrs  :: !Word16+        }+    | EnumTypeInfo [Name.UnQ]+    | InterfaceTypeInfo++data UnionVariant = UnionVariant+    { variantName  :: Name.UnQ+    , tagValue     :: !Word16+    , fieldLocType :: C.FieldLocType Brand Name.CapnpQ+    }
cmd/capnpc-haskell/Main.hs view
@@ -10,23 +10,26 @@ import qualified Data.Text.Lazy    as LT import qualified Data.Text.Lazy.IO as TIO -import Capnp                       (defaultLimit, getValue)-import Capnp.Gen.Capnp.Schema.Pure (CodeGeneratorRequest)+import Capnp                      (defaultLimit, getParsed)+import Capnp.Gen.Capnp.Schema.New (CodeGeneratorRequest)+import Capnp.Repr.Parsed          (Parsed)  import qualified Check import qualified IR.Flat             as Flat import qualified IR.Haskell          as Haskell import qualified Trans.CgrToStage1+import qualified Trans.FlatToNew import qualified Trans.FlatToPure import qualified Trans.FlatToRaw import qualified Trans.HaskellToText+import qualified Trans.NewToHaskell import qualified Trans.PureToHaskell import qualified Trans.RawToHaskell import qualified Trans.Stage1ToFlat  main :: IO () main = do-    cgr <- getValue defaultLimit+    cgr <- getParsed defaultLimit     Check.reportIssues cgr     for_ (handleCGR cgr) $ \(path, contents) -> do         createDirectoryIfMissing True (takeDirectory path)@@ -34,13 +37,17 @@             TIO.hPutStr h contents  -- | Convert a 'CodeGeneratorRequest' to a list of files to create.-handleCGR :: CodeGeneratorRequest -> [(FilePath, LT.Text)]+handleCGR :: Parsed CodeGeneratorRequest -> [(FilePath, LT.Text)] handleCGR cgr =     let flat =             Trans.Stage1ToFlat.cgrToCgr $             Trans.CgrToStage1.cgrToCgr cgr         modules =-            handleFlatRaw flat ++ handleFlatPure flat+            concatMap ($ flat)+                [ handleFlatRaw+                , handleFlatPure+                , handleFlatNew+                ]     in     map         (\mod ->@@ -50,7 +57,7 @@         )         modules -handleFlatPure, handleFlatRaw :: Flat.CodeGenReq -> [Haskell.Module]+handleFlatPure, handleFlatRaw, handleFlatNew :: Flat.CodeGenReq -> [Haskell.Module]  handleFlatPure =     concatMap Trans.PureToHaskell.fileToModules@@ -59,3 +66,7 @@ handleFlatRaw =     concatMap Trans.RawToHaskell.fileToModules     . Trans.FlatToRaw.cgrToFiles++handleFlatNew =+    concatMap Trans.NewToHaskell.fileToModules+    . Trans.FlatToNew.cgrToFiles
cmd/capnpc-haskell/Trans/CgrToStage1.hs view
@@ -17,17 +17,19 @@ import qualified Data.Text       as T import qualified Data.Vector     as V -import Capnp.Classes (toWord)+import Capnp.Classes     (toWord)+import Capnp.Fields      (HasUnion(..))+import Capnp.Repr.Parsed (Parsed) -import qualified Capnp.Gen.Capnp.Schema.Pure as Schema-import qualified Capnp.Untyped.Pure          as U-import qualified IR.Common                   as C-import qualified IR.Name                     as Name-import qualified IR.Stage1                   as Stage1+import qualified Capnp.Gen.Capnp.Schema.New as Schema+import qualified Capnp.New.Basics           as B+import qualified IR.Common                  as C+import qualified IR.Name                    as Name+import qualified IR.Stage1                  as Stage1  type NodeMap v = M.Map Word64 v -nodesToNodes :: NodeMap Schema.Node -> NodeMap Stage1.Node+nodesToNodes :: NodeMap (Parsed Schema.Node) -> NodeMap Stage1.Node nodesToNodes inMap = outMap   where     outMap = M.map translate inMap@@ -75,7 +77,8 @@                         | Schema.Superclass{id, brand} <- V.toList superclasses                         ]                     }-            Schema.Node'const Schema.Node'const'{ type_, value } -> Stage1.NodeConstant $+            Schema.Node'const Schema.Node'const'{ type_ = Schema.Type type_, value = Schema.Value value } ->+              Stage1.NodeConstant $                 let mismatch = error "ERROR: Constant's type and value do not agree"                 in case value of                     Schema.Value'void ->@@ -108,19 +111,19 @@                         C.WordValue (C.PrimWord C.PrimFloat64) (toWord v)                      Schema.Value'text v ->-                        C.PtrValue (C.PrimPtr C.PrimText) $ Just $ U.PtrList $ U.List8 $+                        C.PtrValue (C.PrimPtr C.PrimText) $ B.PtrList $ B.List8 $                             encodeUtf8 v                             & BS.unpack                             & (++ [0])                             & V.fromList                     Schema.Value'data_ v ->-                        C.PtrValue (C.PrimPtr C.PrimText) $ Just $ U.PtrList $ U.List8 $+                        C.PtrValue (C.PrimPtr C.PrimText) $ B.PtrList $ B.List8 $                             BS.unpack v                             & V.fromList                      Schema.Value'list v ->                         case type_ of-                            Schema.Type'list Schema.Type'list'{ elementType } ->+                            Schema.Type'list (Schema.Type'list' (Schema.Type elementType)) ->                                 C.PtrValue                                     (C.ListOf (typeToType outMap elementType))                                     v@@ -152,7 +155,7 @@                             Schema.Type'interface Schema.Type'interface'{ typeId, brand } ->                                 C.PtrValue                                     (C.PtrInterface (C.InterfaceType (outMap M.! typeId) (brandToBrand outMap brand)))-                                    Nothing+                                    B.PtrNull                             _ ->                                 mismatch @@ -165,7 +168,7 @@                 Stage1.NodeOther         } -brandToBrand :: NodeMap Stage1.Node -> Schema.Brand -> Stage1.Brand+brandToBrand :: NodeMap Stage1.Node -> Parsed Schema.Brand -> Stage1.Brand brandToBrand nodeMap Schema.Brand{scopes} =     C.MapBrand $ M.fromList $ mapMaybe scopeToScope (V.toList scopes)   where@@ -175,21 +178,22 @@         Schema.Brand'Scope'bind bindings -> Just             ( scopeId             , C.Bind $ bindings-                & V.map (\case-                    Schema.Brand'Binding'type_ typ -> case typeToType nodeMap typ of-                        C.PtrType t ->-                            C.BoundType t-                        C.CompositeType t ->-                            C.BoundType (C.PtrComposite t)-                        _ -> error-                            "Invalid schema: a type parameter was set to a non-pointer type."+                & V.map (\(Schema.Brand'Binding b) -> case b of+                    Schema.Brand'Binding'type_ (Schema.Type typ) ->+                        case typeToType nodeMap typ of+                            C.PtrType t ->+                                C.BoundType t+                            C.CompositeType t ->+                                C.BoundType (C.PtrComposite t)+                            _ -> error+                                "Invalid schema: a type parameter was set to a non-pointer type."                      Schema.Brand'Binding'unbound -> C.Unbound                     Schema.Brand'Binding'unknown' _ -> C.Unbound                 )             ) -methodToMethod :: NodeMap Stage1.Node -> Schema.Method -> Stage1.Method+methodToMethod :: NodeMap Stage1.Node -> Parsed Schema.Method -> Stage1.Method methodToMethod nodeMap Schema.Method     { name     , paramStructType, paramBrand@@ -201,10 +205,10 @@         , resultType = structTypeToType nodeMap resultStructType resultBrand         } -enumerantToName :: Schema.Enumerant -> Name.UnQ+enumerantToName :: Parsed Schema.Enumerant -> Name.UnQ enumerantToName Schema.Enumerant{name} = Name.UnQ name -fieldToField :: NodeMap Stage1.Node -> Schema.Field -> Stage1.Field+fieldToField :: NodeMap Stage1.Node -> Parsed Schema.Field -> Stage1.Field fieldToField nodeMap Schema.Field{name, discriminantValue, union'} =     Stage1.Field         { name = Name.UnQ name@@ -216,9 +220,13 @@         , locType = getFieldLocType nodeMap union'         } -getFieldLocType :: NodeMap Stage1.Node -> Schema.Field' -> C.FieldLocType Stage1.Brand Stage1.Node+getFieldLocType :: NodeMap Stage1.Node -> Parsed (Which Schema.Field) -> C.FieldLocType Stage1.Brand Stage1.Node getFieldLocType nodeMap = \case-    Schema.Field'slot Schema.Field'slot'{type_, defaultValue, offset} ->+    Schema.Field'slot Schema.Field'slot'+      { type_ = Schema.Type type_+      , defaultValue = Schema.Value defaultValue+      , offset+      } ->         case typeToType nodeMap type_ of             C.VoidType ->                 C.VoidField@@ -259,7 +267,7 @@ -- in a struct's data section. -- -- returns Nothing if the value is a non-word type.-valueBits :: Schema.Value -> Maybe Word64+valueBits :: Parsed (Which Schema.Value) -> Maybe Word64 valueBits = \case     Schema.Value'bool b    -> Just $ fromIntegral $ fromEnum b     Schema.Value'int8 n    -> Just $ fromIntegral n@@ -275,7 +283,7 @@     Schema.Value'enum n    -> Just $ fromIntegral n     _                      -> Nothing -- some non-word type. -reqFileToReqFile :: NodeMap Stage1.Node -> Schema.CodeGeneratorRequest'RequestedFile -> Stage1.ReqFile+reqFileToReqFile :: NodeMap Stage1.Node -> Parsed Schema.CodeGeneratorRequest'RequestedFile -> Stage1.ReqFile reqFileToReqFile nodeMap Schema.CodeGeneratorRequest'RequestedFile{id, filename} =     let Stage1.Node{nodeCommon=Stage1.NodeCommon{nodeNested}} = nodeMap M.! id     in Stage1.ReqFile@@ -286,7 +294,7 @@             }         } -cgrToCgr :: Schema.CodeGeneratorRequest -> Stage1.CodeGenReq+cgrToCgr :: Parsed Schema.CodeGeneratorRequest -> Stage1.CodeGenReq cgrToCgr Schema.CodeGeneratorRequest{nodes, requestedFiles} =     Stage1.CodeGenReq{allFiles, reqFiles}   where@@ -311,12 +319,12 @@ structTypeToType     :: NodeMap Stage1.Node     -> Word64-    -> Schema.Brand+    -> Parsed Schema.Brand     -> C.CompositeType Stage1.Brand Stage1.Node structTypeToType nodeMap typeId brand =     C.StructType (nodeMap M.! typeId) (brandToBrand nodeMap brand) -typeToType :: NodeMap Stage1.Node -> Schema.Type -> C.Type Stage1.Brand Stage1.Node+typeToType :: NodeMap Stage1.Node -> Parsed (Which Schema.Type) -> C.Type Stage1.Brand Stage1.Node typeToType nodeMap = \case     Schema.Type'void       -> C.VoidType     Schema.Type'bool       -> C.WordType $ C.PrimWord C.PrimBool@@ -332,8 +340,8 @@     Schema.Type'float64    -> C.WordType $ C.PrimWord C.PrimFloat64     Schema.Type'text       -> C.PtrType $ C.PrimPtr C.PrimText     Schema.Type'data_      -> C.PtrType $ C.PrimPtr C.PrimData-    Schema.Type'list Schema.Type'list'{elementType} ->-        C.PtrType $ C.ListOf (typeToType nodeMap elementType)+    Schema.Type'list Schema.Type'list'{elementType = Schema.Type t} ->+        C.PtrType $ C.ListOf (typeToType nodeMap t)     -- nb. enum has a brand field, but it's not actually use for anything.     Schema.Type'enum Schema.Type'enum'{typeId, brand = _ } ->         C.WordType $ C.EnumType $ nodeMap M.! typeId@@ -342,7 +350,7 @@         C.CompositeType $ structTypeToType nodeMap typeId brand     Schema.Type'interface Schema.Type'interface'{typeId, brand} ->         C.PtrType $ C.PtrInterface (C.InterfaceType (nodeMap M.! typeId) (brandToBrand nodeMap brand))-    Schema.Type'anyPointer p ->+    Schema.Type'anyPointer (Schema.Type'anyPointer' p) ->         case p of             Schema.Type'anyPointer'parameter Schema.Type'anyPointer'parameter'{scopeId, parameterIndex} ->                 let paramScope = nodeMap M.! scopeId in@@ -351,7 +359,8 @@                     , paramIndex = fromIntegral parameterIndex                     , paramName = Stage1.nodeParams (Stage1.nodeCommon paramScope) V.! fromIntegral parameterIndex                     }-            Schema.Type'anyPointer'unconstrained unconstrained  ->+            Schema.Type'anyPointer'unconstrained+              (Schema.Type'anyPointer'unconstrained' unconstrained) ->                 C.PtrType $ C.PrimPtr $ C.PrimAnyPtr $ case unconstrained of                     Schema.Type'anyPointer'unconstrained'anyKind    -> C.Ptr                     Schema.Type'anyPointer'unconstrained'struct     -> C.Struct
+ cmd/capnpc-haskell/Trans/FlatToNew.hs view
@@ -0,0 +1,131 @@+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns        #-}+{-# LANGUAGE OverloadedStrings     #-}+module Trans.FlatToNew (cgrToFiles) where++import Data.Bifunctor (Bifunctor(..))++import qualified Capnp.Repr as R+import           Data.Maybe (isJust)+import qualified IR.Common  as C+import qualified IR.Flat    as Flat+import qualified IR.Name    as Name+import qualified IR.New     as New++cgrToFiles :: Flat.CodeGenReq -> [New.File]+cgrToFiles = map fileToFile . Flat.reqFiles++fileToFile :: Flat.File -> New.File+fileToFile Flat.File{fileId, fileName, nodes} =+    New.File+        { fileId+        , fileName+        , decls = concatMap nodeToDecls nodes+        }++mapTypes :: (Bifunctor p, Functor f) => p (f Flat.Node) Flat.Node -> p (f Name.CapnpQ) Name.CapnpQ+mapTypes = C.bothMap (\Flat.Node{name} -> name)++nodeToDecls :: Flat.Node -> [New.Decl]+nodeToDecls Flat.Node{nodeId, name=Name.CapnpQ{local}, typeParams, union_} =+    let mkType repr extraTypeInfo =+            New.TypeDecl+                { name = local+                , nodeId+                , params = map C.paramName typeParams+                , repr+                , extraTypeInfo+                }+        mkField field =+            fieldToDecl local typeParams field++        mkMethod methodId Flat.Method{name, paramType, resultType} =+            New.MethodDecl+                { interfaceName = local+                , interfaceId = nodeId+                , typeParams = map C.paramName typeParams+                , methodName = name+                , methodId+                , paramType = mapTypes paramType+                , resultType = mapTypes resultType+                }++        parsedStructNode fields hasUnion isGroup =+            New.ParsedInstanceDecl+                { typeName = local+                , typeParams = map C.paramName typeParams+                , parsedInstances = New.ParsedStruct+                    { fields =+                        [ ( Name.getUnQ fieldName+                          , mapTypes fieldLocType+                          )+                        | Flat.Field{fieldName, fieldLocType} <- fields+                        ]+                    , hasUnion+                    , dataCtorName = dataCtorName isGroup+                    }+                }++        parsedUnionNode Flat.Union{variants} =+            New.ParsedInstanceDecl+                { typeName = local+                , typeParams = map C.paramName typeParams+                , parsedInstances = New.ParsedUnion+                    { variants =+                        [ ( Name.getUnQ fieldName+                          , mapTypes fieldLocType+                          )+                        | Flat.Variant{field=Flat.Field{fieldName, fieldLocType}} <- variants+                        ]+                    }+                }++        dataCtorName isGroup+            | isGroup = Name.mkSub local ""+            | otherwise = local++        structUnionNodes Nothing = []+        structUnionNodes (Just union@Flat.Union{tagOffset, variants}) =+            [ New.UnionDecl+                { name = local+                , typeParams = map C.paramName typeParams+                , tagLoc = C.DataLoc+                    { dataIdx = fromIntegral $ tagOffset `div` 4+                    , dataOff = fromIntegral $ (tagOffset `mod` 4) * 16+                    , dataDef = 0+                    }+                , variants = map variantToVariant variants+                }+            , parsedUnionNode union+            ]+    in+    case union_ of+        Flat.Other       -> []+        Flat.Constant { value } ->+            [ New.ConstDecl { name = local, value = mapTypes value } ]+        Flat.Enum enumerants ->+            [ mkType (R.Data R.Sz16) $ Just $ New.EnumTypeInfo enumerants ]+        Flat.Interface{methods} ->+            mkType (R.Ptr (Just R.Cap)) (Just New.InterfaceTypeInfo)+            : zipWith mkMethod [0..] methods+        Flat.Struct{isGroup, fields, union, dataWordCount = nWords, pointerCount = nPtrs} ->+            mkType (R.Ptr (Just R.Struct)) (Just New.StructTypeInfo { nWords, nPtrs })+            : parsedStructNode fields (isJust union) isGroup+            : (structUnionNodes union ++ map mkField fields)++fieldToDecl :: Name.LocalQ -> [C.TypeParamRef Flat.Node] -> Flat.Field -> New.Decl+fieldToDecl containerType typeParams Flat.Field{fieldName, fieldLocType} =+    New.FieldDecl+        { containerType+        , typeParams = map C.paramName typeParams+        , fieldName = Name.getUnQ fieldName+        , fieldLocType = mapTypes fieldLocType+        }++variantToVariant :: Flat.Variant -> New.UnionVariant+variantToVariant Flat.Variant{tagValue, field = Flat.Field{fieldName, fieldLocType}} =+    New.UnionVariant+        { variantName = Name.getUnQ fieldName+        , tagValue+        , fieldLocType = mapTypes fieldLocType+        }
cmd/capnpc-haskell/Trans/HaskellToText.hs view
@@ -6,6 +6,7 @@ import Data.List                    (intersperse) import Data.String                  (fromString) import Text.PrettyPrint.Leijen.Text (hcat, vcat)+import Trans.ToHaskellCommon        (eStd_)  import qualified Data.Text                    as T import qualified Data.Text.Lazy               as LT@@ -46,6 +47,7 @@         , "{-# OPTIONS_GHC -Wno-unused-matches #-}"         , "{-# OPTIONS_GHC -Wno-orphans #-}"         , "{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}"+        , "{-# OPTIONS_GHC -Wno-name-shadowing #-}"         , hcat             [ "module "             , PP.textStrict $ mconcat $ intersperse "." $ map Name.renderUnQ modName@@ -88,6 +90,16 @@         , format (TCtx ctx typ)         , whereBlock defs         ]+    format (DcTypeInstance alias orig) = hcat+        [ "type instance "+        , format alias+        , " = "+        , format orig+        ]+    format (DcDeriveInstance ctx typ) = hcat+        [ "deriving instance "+        , format $ TCtx ctx typ+        ]     format DcClass{ctx, name, params, funDeps, decls} = hcat         [ "class "         , format $@@ -141,11 +153,14 @@         ]  instance Format DataDecl where-    format Data{dataName, typeArgs, dataVariants, dataNewtype, derives} = vcat+    format Data{dataName, typeArgs, dataVariants, dataInstance, dataNewtype, derives} = vcat         [ hcat             [ if dataNewtype                 then "newtype "                 else "data "+            , if dataInstance+                then "instance "+                else ""             , format dataName             , " "             , mconcat $ intersperse " " $ map format typeArgs@@ -168,12 +183,13 @@         ]  instance Format Exp where+    format (EApp e []) = format e     format (EApp e es) = hcat         [ "("         , hcat $ intersperse " " $ map format (e:es)         , ")"         ]-    format (EFApp e []) = format e+    format (EFApp e []) = format (EApp (eStd_ "pure") [e])     format (EFApp e es) = hcat         [ "("         , format e@@ -181,6 +197,7 @@         ]     format (EGName e) = format e     format (ELName e) = format e+    format (EVar name) = PP.textStrict name     format (EInt n) = fromString (show n)     format (EDo ds ex) = vcat         [ "(do"@@ -215,6 +232,7 @@             [ hcat [ format name, " = ", format value ]             | (name, value) <- updates             ]+    format (ELabel name) = "#" <> format name  instance Format Do where     format (DoBind var ex) = format var <> " <- " <> format ex@@ -256,6 +274,7 @@     format (TGName ty) = format ty     format (TLName ty) = format ty     format (TVar txt)  = PP.textStrict txt+    format (TApp t []) = format t     format (TApp f xs) =         "(" <> mconcat (intersperse " " $ map format (f:xs)) <> ")"     format (TFn types) =@@ -267,6 +286,7 @@     format TUnit = "()"     format (TKindAnnotated ty kind) =         "(" <> format ty <> " :: " <> format kind <> ")"+    format (TString str) = fromString $ show str  instance Format Name.GlobalQ where     format Name.GlobalQ{local, globalNS=Name.NS parts} =
+ cmd/capnpc-haskell/Trans/NewToHaskell.hs view
@@ -0,0 +1,906 @@+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE LambdaCase            #-}+{-# LANGUAGE NamedFieldPuns        #-}+{-# LANGUAGE OverloadedStrings     #-}+module Trans.NewToHaskell+    ( fileToModules+    ) where++import qualified Capnp.Repr            as R+import           Data.String           (IsString(fromString))+import           Data.Word+import qualified IR.Common             as C+import qualified IR.Haskell            as Hs+import qualified IR.Name               as Name+import qualified IR.New                as New+import           Trans.ToHaskellCommon++imports :: [Hs.Import]+imports =+    [ Hs.ImportAs { importAs = "R", parts = ["Capnp", "Repr"] }+    , Hs.ImportAs { importAs = "RP", parts = ["Capnp", "Repr", "Parsed"] }+    , Hs.ImportAs { importAs = "Basics", parts = ["Capnp", "New", "Basics"] }+    , Hs.ImportAs { importAs = "OL", parts = ["GHC", "OverloadedLabels"] }+    , Hs.ImportAs { importAs = "GH", parts = ["Capnp", "GenHelpers", "New"] }+    , Hs.ImportAs { importAs = "C", parts = ["Capnp", "New", "Classes"] }+    , Hs.ImportAs { importAs = "Generics", parts = ["GHC", "Generics"] }+    , Hs.ImportAs { importAs = "BS", parts = ["Capnp", "GenHelpers", "ReExports", "Data", "ByteString"] }+    ]++fileToModules :: New.File -> [Hs.Module]+fileToModules file =+    [ fileToMainModule file+    , fileToModuleAlias file+    ]++fileToMainModule :: New.File -> Hs.Module+fileToMainModule file@New.File{fileName} =+    fixImports $ Hs.Module+        { modName = ["Capnp", "Gen"] ++ makeModName fileName ++ ["New"]+        , modLangPragmas =+            [ "TypeFamilies"+            , "DataKinds"+            , "DeriveGeneric"+            , "DuplicateRecordFields"+            , "EmptyDataDeriving"+            , "FlexibleInstances"+            , "MultiParamTypeClasses"+            , "UndecidableInstances"+            , "OverloadedLabels"+            , "OverloadedStrings"+            , "StandaloneDeriving"+            , "RecordWildCards"+            ]+        , modExports = Nothing+        , modImports = imports+        , modDecls = fileToDecls file+        }++fileToModuleAlias :: New.File -> Hs.Module+fileToModuleAlias New.File{fileId,fileName} =+    let reExport = ["Capnp", "Gen"] ++ makeModName fileName ++ ["New"]+    in Hs.Module+        { modName = idToModule fileId ++ ["New"]+        , modLangPragmas = []+        , modExports = Just [Hs.ExportMod reExport]+        , modImports = [ Hs.ImportAll { parts = reExport } ]+        , modDecls = []+        }++fileToDecls :: New.File -> [Hs.Decl]+fileToDecls New.File{fileId, decls} =+    concatMap (declToDecls fileId) decls+++declToDecls :: Word64 -> New.Decl -> [Hs.Decl]+declToDecls thisMod decl =+    case decl of+        New.TypeDecl {name, params, repr, extraTypeInfo} ->+            let dataName = Name.localToUnQ name+                typeArgs = toTVars params+                typ = case typeArgs of+                    [] -> tuName dataName+                    _  -> Hs.TApp (tuName dataName) typeArgs+            in+            [ Hs.DcData Hs.Data+                { dataName+                , typeArgs+                , dataVariants =+                    case extraTypeInfo of+                        Just (New.EnumTypeInfo variants) ->+                            [ Hs.DataVariant+                                { dvCtorName = Name.localToUnQ $ Name.mkSub name variantName+                                , dvArgs = Hs.APos []+                                }+                            | variantName <- variants+                            ]+                            +++                            [ declareUnknownVariant name ]+                        _ -> []+                , derives =+                    case extraTypeInfo of+                        Just New.EnumTypeInfo {} -> [ "Std_.Eq", "Std_.Show" ]+                        _                        -> []+                , dataNewtype = False+                , dataInstance = False+                }+            , Hs.DcTypeInstance+                (Hs.TApp (tgName ["R"] "ReprFor") [typ])+                (toType repr)+            ] +++            let ctx = paramsContext typeArgs in+            case extraTypeInfo of+                Just New.StructTypeInfo{nWords, nPtrs} ->+                    [ Hs.DcInstance+                        { ctx+                        , typ = Hs.TApp (tgName ["C"] "TypedStruct") [typ]+                        , defs =+                            [ Hs.IdValue Hs.DfValue+                                { name = "numStructWords"+                                , params = []+                                , value = Hs.EInt $ fromIntegral nWords+                                }+                            , Hs.IdValue Hs.DfValue+                                { name = "numStructPtrs"+                                , params = []+                                , value = Hs.EInt $ fromIntegral nPtrs+                                }+                            ]+                        }+                    , Hs.DcInstance+                        { ctx+                        , typ = Hs.TApp (tgName ["C"] "Allocate") [typ]+                        , defs =+                            [ Hs.IdType $+                                Hs.TypeAlias "AllocHint" [typ] Hs.TUnit+                            , Hs.IdValue Hs.DfValue+                                { name = "new"+                                , params = [Hs.PVar "_"]+                                , value = egName ["C"] "newTypedStruct"+                                }+                            ]+                        }+                    , Hs.DcInstance+                        { ctx+                        , typ = Hs.TApp+                            (tgName ["C"] "EstimateAlloc")+                            [ typ, Hs.TApp (tgName ["C"] "Parsed") [typ] ]+                        , defs = []+                        }+                    , Hs.DcInstance+                        { ctx+                        , typ = Hs.TApp (tgName ["C"] "AllocateList") [typ]+                        , defs =+                            [ Hs.IdType $ Hs.TypeAlias "ListAllocHint" [typ] (tStd_ "Int")+                            , Hs.IdValue Hs.DfValue+                                { name = "newList"+                                , params = []+                                , value = egName ["C"] "newTypedStructList"+                                }+                            ]+                        }+                    , Hs.DcInstance+                        { ctx+                        , typ = Hs.TApp+                            (tgName ["C"] "EstimateListAlloc")+                            [typ, Hs.TApp (tgName ["C"] "Parsed") [typ]]+                        , defs = []+                        }+                    ]+                Just (New.EnumTypeInfo variants) ->+                    [ Hs.DcInstance+                        { ctx+                        , typ = Hs.TApp (tStd_ "Enum") [typ]+                        , defs =+                            [ Hs.IdValue Hs.DfValue+                                { name = "toEnum"+                                , params = [Hs.PVar "n_"]+                                , value =+                                    Hs.ECase (euName "n_") $+                                        [ ( Hs.PInt i+                                          , Hs.ELName (Name.mkSub name variantName)+                                          )+                                        | (i, variantName) <- zip [0..] variants+                                        ] +++                                        [ ( Hs.PVar "tag_"+                                          , Hs.EApp+                                                (Hs.ELName (unknownVariant name))+                                                [Hs.EApp (eStd_ "fromIntegral") [euName "tag_"]]+                                          )+                                        ]++                                }+                            , Hs.IdValue Hs.DfValue+                                { name = "fromEnum"+                                , params = [Hs.PVar "value_"]+                                , value =+                                    Hs.ECase (euName "value_") $+                                        [ ( Hs.PLCtor (Name.mkSub name variantName) []+                                          , Hs.EInt i+                                          )+                                        | (i, variantName) <- zip [0..] variants+                                        ] +++                                        [ ( Hs.PLCtor (unknownVariant name) [Hs.PVar "tag_"]+                                          , Hs.EApp (eStd_ "fromIntegral") [euName "tag_"]+                                          )+                                        ]+                                }+                            ]+                        }+                    , Hs.DcInstance+                        { ctx+                        , typ = Hs.TApp (tgName ["C"] "IsWord") [typ]+                        , defs =+                            [ Hs.IdValue Hs.DfValue+                                { name = "fromWord"+                                , params = [Hs.PVar "w_"]+                                , value = Hs.EApp (eStd_ "toEnum") [Hs.EApp (eStd_ "fromIntegral") [Hs.EVar "w_"]]+                                }+                            , Hs.IdValue Hs.DfValue+                                { name = "toWord"+                                , params = [Hs.PVar "v_"]+                                , value = Hs.EApp (eStd_ "fromIntegral") [Hs.EApp (eStd_ "fromEnum") [Hs.EVar "v_"]]+                                }+                            ]+                        }+                    , Hs.DcInstance+                        { ctx+                        , typ = Hs.TApp (tgName ["C"] "Parse") [typ, typ]+                        , defs =+                            [ Hs.IdValue Hs.DfValue+                                { name = "parse"+                                , params = []+                                , value = egName ["GH"] "parseEnum"+                                }+                            , Hs.IdValue Hs.DfValue+                                { name = "encode"+                                , params = []+                                , value = egName ["GH"] "encodeEnum"+                                }+                            ]+                        }+                    , Hs.DcInstance+                        { ctx+                        , typ = Hs.TApp (tgName ["C"] "AllocateList") [typ]+                        , defs =+                            [ Hs.IdType $ Hs.TypeAlias "ListAllocHint" [typ] (tStd_ "Int")+                            ]+                        }+                    , Hs.DcInstance+                        { ctx+                        , typ = Hs.TApp (tgName ["C"] "EstimateListAlloc") [typ, typ]+                        , defs = []+                        }+                    ]+                Just New.InterfaceTypeInfo ->+                    defineInterfaceParse name params+                Nothing -> []+        New.FieldDecl{containerType, typeParams, fieldName, fieldLocType} ->+            let tVars = toTVars typeParams+                ctx = paramsContext tVars+                labelType = Hs.TString (Name.renderUnQ fieldName)+                parentType = Hs.TApp (Hs.TLName containerType) tVars+                childType = fieldLocTypeToType thisMod fieldLocType+                fieldKind = Hs.TGName $ fieldLocTypeToFieldKind fieldLocType+            in+            [ Hs.DcInstance+                { ctx+                , typ = Hs.TApp+                    (tgName ["GH"] "HasField")+                    [labelType, fieldKind, parentType, childType]+                , defs =+                    [ Hs.IdValue Hs.DfValue+                        { name = "fieldByLabel"+                        , value = fieldLocTypeToField fieldLocType+                        , params = []+                        }+                    ]+                }+            ]+        New.UnionDecl{name, typeParams, tagLoc, variants} ->+            let tVars = toTVars typeParams+                typ = Hs.TApp (Hs.TLName name) tVars+            in+            Hs.DcInstance+                { ctx = paramsContext tVars+                , typ = Hs.TApp (tgName ["GH"] "HasUnion") [typ]+                , defs =+                    [ Hs.IdValue Hs.DfValue+                        { name = "unionField"+                        , params = []+                        , value = fieldLocTypeToField $ C.DataField+                            tagLoc+                            (C.PrimWord (C.PrimInt (C.IntType C.Unsigned C.Sz16)))+                        }+                    , defineRawData thisMod name tVars variants+                    , defineInternalWhich name variants+                    , Hs.IdData Hs.Data+                        { dataName = "Which"+                        , typeArgs = [typ]+                        , dataVariants = []+                        , derives = []+                        , dataNewtype = False+                        , dataInstance = False+                        }+                    ]+                }+            : concatMap (variantToDecls thisMod name typeParams) variants+        New.MethodDecl+                { interfaceName+                , typeParams+                , interfaceId+                , methodName+                , methodId+                , paramType+                , resultType+                } ->+            let tVars = toTVars typeParams in+            [ Hs.DcInstance+                { ctx = paramsContext tVars+                , typ = Hs.TApp+                    (tgName ["GH"] "HasMethod")+                    [ Hs.TString (Name.renderUnQ methodName)+                    , Hs.TApp (Hs.TLName interfaceName) tVars+                    , compositeTypeToType thisMod paramType+                    , compositeTypeToType thisMod resultType+                    ]+                , defs =+                    [ Hs.IdValue Hs.DfValue+                        { name = "methodByLabel"+                        , params = []+                        , value = Hs.EApp+                            (egName ["GH"] "Method")+                            [ Hs.EInt $ fromIntegral interfaceId+                            , Hs.EInt $ fromIntegral methodId+                            ]+                        }+                    ]+                }+            ]+        New.ParsedInstanceDecl{ typeName, typeParams, parsedInstances } ->+            defineParsedInstances thisMod typeName typeParams parsedInstances+        New.ConstDecl { name, value } ->+            defineConstant thisMod name value++defineConstant thisMod localName value =+    let name = Name.localToUnQ localName in+    case value of+        C.VoidValue ->+            [ Hs.DcValue+                { typ = Hs.TUnit+                , def = Hs.DfValue+                    { name+                    , params = []+                    , value = Hs.ETup []+                    }+                }+            ]+        C.WordValue t v ->+            [ Hs.DcValue+                { typ = typeToType thisMod (C.WordType t)+                , def = Hs.DfValue+                    { name+                    , params = []+                    , value = Hs.EApp (egName ["C"] "fromWord") [Hs.EInt (fromIntegral v)]+                    }+                }+            ]+        C.PtrValue t v ->+            [ Hs.DcValue+                { typ = Hs.TApp (tgName ["R"] "Raw") [tgName ["GH"] "Const", typeToType thisMod (C.PtrType t)]+                , def = Hs.DfValue+                    { name+                    , params = []+                    , value = Hs.EApp+                        (egName ["GH"] "getPtrConst")+                        [Hs.ETypeAnno (Hs.EBytes (makePtrBytes v)) (tgName ["BS"] "ByteString")]+                    }+                }+            ]++defineRawData thisMod name tVars variants =+    Hs.IdData Hs.Data+        { dataName = "RawWhich"+        , typeArgs =+            [ Hs.TVar "mut_"+            , Hs.TApp (Hs.TVar $ Name.renderUnQ $ Name.localToUnQ name) tVars+            ]++        , dataNewtype = False+        , dataInstance = False+        , dataVariants =+            [ Hs.DataVariant+                { dvCtorName =+                    "RW_" <> Name.localToUnQ (Name.mkSub name variantName)+                , dvArgs = Hs.APos+                    [ Hs.TApp+                        (tReprName "Raw")+                        [ Hs.TVar "mut_"+                        , fieldLocTypeToType thisMod fieldLocType+                        ]+                    ]+                }+            | New.UnionVariant{variantName, fieldLocType} <- variants+            ]+            +++            [ Hs.DataVariant+                { dvCtorName = "RW_" <> Name.localToUnQ (unknownVariant name)+                , dvArgs = Hs.APos [tStd_ "Word16"]+                }+            ]++        -- TODO: derive Show, Read, Eq, Generic, to be feature complete with the code generated by RawToHaskell.+        -- This will require a stand-alone deriving declaration+        , derives = []+        }++unknownVariant :: Name.LocalQ -> Name.LocalQ+unknownVariant name = Name.mkSub name "unknown'"++rawCtorName :: Name.LocalQ -> Name.UnQ+rawCtorName local = "RW_" <> Name.localToUnQ local+++defineInternalWhich structName variants =+    Hs.IdValue Hs.DfValue+        { name = "internalWhich"+        , params = [Hs.PVar "tag_", Hs.PVar "struct_"]+        , value =+            Hs.ECase (Hs.ELName "tag_") $+                [ ( Hs.PInt $ fromIntegral tagValue+                  , Hs.EFApp+                        (euName $ rawCtorName (Name.mkSub structName variantName))+                        [ Hs.EApp+                            (egName ["GH"] "readVariant")+                            [ Hs.ELabel variantName+                            , euName "struct_"+                            ]+                        ]+                  )+                | New.UnionVariant{tagValue, variantName} <- variants+                ]+                +++                [ ( Hs.PVar "_"+                  , Hs.EApp (eStd_ "pure")+                        [ Hs.EApp+                            (euName $ rawCtorName (unknownVariant structName))+                            [euName "tag_"]+                        ]+                  )+                ]+        }++variantToDecls thisMod containerType typeParams New.UnionVariant{tagValue, variantName, fieldLocType} =+    let tVars = toTVars typeParams+        ctx = paramsContext tVars+        labelType = Hs.TString (Name.renderUnQ variantName)+        parentType = Hs.TApp (Hs.TLName containerType) tVars+        childType = fieldLocTypeToType thisMod fieldLocType+        fieldKind = Hs.TGName $ fieldLocTypeToFieldKind fieldLocType+    in+    [ Hs.DcInstance+        { ctx+        , typ = Hs.TApp+            (tgName ["GH"] "HasVariant")+            [labelType, fieldKind, parentType, childType]+        , defs =+            [ Hs.IdValue Hs.DfValue+                { name = "variantByLabel"+                , params = []+                , value = Hs.EApp+                    (egName ["GH"] "Variant")+                    [ fieldLocTypeToField fieldLocType+                    , Hs.EInt (fromIntegral tagValue)+                    ]+                }+            ]+        }+    ]++paramsContext :: [Hs.Type] -> [Hs.Type]+paramsContext = map paramConstraints++-- | Constraints required for a capnproto type parameter. The returned+-- expression has kind 'Constraint'.+paramConstraints :: Hs.Type -> Hs.Type+paramConstraints t =+    Hs.TApp (tgName ["GH"] "TypeParam") [t]++tCapnp :: Word64 -> Name.CapnpQ -> Hs.Type+tCapnp thisMod Name.CapnpQ{local, fileId}+    | thisMod == fileId = Hs.TLName local+    | otherwise = tgName (map Name.renderUnQ $ idToModule fileId ++ ["New"]) local++fieldLocTypeToType :: Word64 -> C.FieldLocType New.Brand Name.CapnpQ -> Hs.Type+fieldLocTypeToType thisMod = \case+    C.VoidField     -> Hs.TUnit+    C.DataField _ t -> wordTypeToType thisMod t+    C.PtrField _ t  -> ptrTypeToType thisMod t+    C.HereField t   -> compositeTypeToType thisMod t++fieldLocTypeToFieldKind :: C.FieldLocType b n -> Name.GlobalQ+fieldLocTypeToFieldKind = \case+    C.HereField _ -> gName ["GH"] "Group"+    _             -> gName ["GH"] "Slot"++wordTypeToType thisMod = \case+    C.EnumType t -> tCapnp thisMod t+    C.PrimWord t -> primWordToType t++primWordToType = \case+    C.PrimInt t   -> intTypeToType t+    C.PrimFloat32 -> tStd_ "Float"+    C.PrimFloat64 -> tStd_ "Double"+    C.PrimBool    -> tStd_ "Bool"++intTypeToType (C.IntType sign size) =+    let prefix = case sign of+            C.Signed   -> "Int"+            C.Unsigned -> "Word"+    in+    tStd_ $ fromString $ prefix ++ show (C.sizeBits size)++wordTypeBits = \case+    C.EnumType _                              -> 16+    C.PrimWord (C.PrimInt (C.IntType _ size)) -> C.sizeBits size+    C.PrimWord C.PrimFloat32                  -> 32+    C.PrimWord C.PrimFloat64                  -> 64+    C.PrimWord C.PrimBool                     -> 1++ptrTypeToType thisMod = \case+    C.ListOf t       -> Hs.TApp (tgName ["R"] "List") [typeToType thisMod t]+    C.PrimPtr t      -> primPtrToType t+    C.PtrComposite t -> compositeTypeToType thisMod t+    C.PtrInterface t -> interfaceTypeToType thisMod t+    C.PtrParam t     -> typeParamToType t++typeToType thisMod = \case+    C.CompositeType t -> compositeTypeToType thisMod t+    C.VoidType        -> Hs.TUnit+    C.WordType t      -> wordTypeToType thisMod t+    C.PtrType t       -> ptrTypeToType thisMod t++primPtrToType = \case+    C.PrimText     -> tgName ["Basics"] "Text"+    C.PrimData     -> tgName ["Basics"] "Data"+    C.PrimAnyPtr t -> anyPtrToType t++anyPtrToType :: C.AnyPtr -> Hs.Type+anyPtrToType t = tgName ["Basics"] $ case t of+    C.Struct -> "AnyStruct"+    C.List   -> "AnyList"+    C.Cap    -> "Capability"+    C.Ptr    -> "AnyPointer"++compositeTypeToType thisMod (C.StructType    name brand) = namedType thisMod name brand+interfaceTypeToType thisMod (C.InterfaceType name brand) = namedType thisMod name brand++typeParamToType = Hs.TVar . Name.typeVarName . C.paramName++namedType :: Word64 -> Name.CapnpQ -> C.ListBrand Name.CapnpQ -> Hs.Type+namedType thisMod name (C.ListBrand [])   = tCapnp thisMod name+namedType thisMod name (C.ListBrand args) =+    Hs.TApp+        (tCapnp thisMod name)+        [ typeToType thisMod (C.PtrType t) | t <- args ]++fieldLocTypeToField = \case+    C.DataField loc wt ->+        let shift = C.dataOff loc+            index = C.dataIdx loc+            nbits = wordTypeBits wt+            defaultValue = C.dataDef loc+        in+        Hs.EApp+            (egName ["GH"] "dataField")+            [ Hs.EInt $ fromIntegral shift+            , Hs.EInt $ fromIntegral index+            , Hs.EInt $ fromIntegral nbits+            , Hs.EInt $ fromIntegral defaultValue+            ]+    C.PtrField idx _ ->+        Hs.EApp (egName ["GH"] "ptrField") [Hs.EInt $ fromIntegral idx]+    C.VoidField ->+        egName ["GH"] "voidField"+    C.HereField _ ->+        egName ["GH"] "groupField"+++class ToType a where+    toType :: a -> Hs.Type++instance ToType R.Repr where+    toType (R.Ptr p)  = rApp "Ptr" [toType p]+    toType (R.Data d) = rApp "Data" [toType d]++instance ToType a => ToType (Maybe a) where+    toType Nothing  = tStd_ "Nothing"+    toType (Just a) = Hs.TApp (tStd_ "Just") [toType a]++instance ToType R.PtrRepr where+    toType R.Cap      = tReprName "Cap"+    toType (R.List r) = rApp "List" [toType r]+    toType R.Struct   = tReprName "Struct"++instance ToType R.ListRepr where+    toType (R.ListNormal nl) = rApp "ListNormal" [toType nl]+    toType R.ListComposite   = tReprName "ListComposite"++instance ToType R.NormalListRepr where+    toType (R.ListData r) = rApp "ListData" [toType r]+    toType R.ListPtr      = tReprName "ListPtr"++instance ToType R.DataSz where+    toType = tReprName . fromString . show+++rApp :: Name.LocalQ -> [Hs.Type] -> Hs.Type+rApp n = Hs.TApp (tReprName n)++tReprName :: Name.LocalQ -> Hs.Type+tReprName = tgName ["R"]++declareUnknownVariant :: Name.LocalQ -> Hs.DataVariant+declareUnknownVariant name = Hs.DataVariant+    { dvCtorName = Name.localToUnQ $ Name.mkSub name "unknown'"+    , dvArgs = Hs.APos [tStd_ "Word16"]+    }+++defineParsedInstances :: Word64 -> Name.LocalQ -> [Name.UnQ] -> New.ParsedInstances -> [Hs.Decl]+defineParsedInstances thisMod typeName typeParams instanceInfo =+    concatMap (\f -> f typeName typeParams instanceInfo)+        [ defineParsed thisMod+        , defineParse+        , defineMarshal+        ]++defineParsed :: Word64 -> Name.LocalQ -> [Name.UnQ] -> New.ParsedInstances -> [Hs.Decl]+defineParsed thisMod typeName typeParams instanceInfo =+    let tVars = map (Hs.TVar . Name.typeVarName) typeParams+        typ = Hs.TApp (Hs.TLName typeName) tVars+        parsedTy = case instanceInfo of+                    New.ParsedStruct{} -> typ+                    New.ParsedUnion{}  -> Hs.TApp (tgName ["GH"] "Which") [typ]+    in+    Hs.DcData Hs.Data+        { dataName = "C.Parsed"+        , typeArgs = [parsedTy]+        , derives = [ "Generics.Generic" ]+        , dataNewtype = False+        , dataInstance = True+        , dataVariants =+            case instanceInfo of+                New.ParsedStruct { fields, hasUnion, dataCtorName } ->+                    [ Hs.DataVariant+                        { dvCtorName = Name.localToUnQ dataCtorName+                        , dvArgs = Hs.ARec $+                            [ ( name+                              , Hs.TApp+                                  (tgName ["RP"] "Parsed")+                                  [fieldLocTypeToType thisMod typ]+                              )+                            | (name, typ) <- fields+                            ] +++                            [ ( "union'"+                              , Hs.TApp (tgName ["C"] "Parsed")+                                  [Hs.TApp (tgName ["GH"] "Which") [typ]]+                              )+                            | hasUnion+                            ]+                        }+                    ]+                New.ParsedUnion { variants } ->+                    [ Hs.DataVariant+                        { dvCtorName = Name.localToUnQ $ Name.mkSub typeName name+                        , dvArgs = case ftype of+                            C.VoidField -> Hs.APos []+                            _ -> Hs.APos+                                [ Hs.TApp+                                    (tgName ["RP"] "Parsed")+                                    [fieldLocTypeToType thisMod ftype]+                                ]+                        }+                    | (name, ftype) <- variants+                    ]+                    +++                    [ declareUnknownVariant typeName ]++        }+    :+    [ Hs.DcDeriveInstance+        [ Hs.TApp (tStd_ cls) [Hs.TApp (tgName ["RP"] "Parsed") [v]]+        | v <- tVars+        ]+        (Hs.TApp (tStd_ cls) [Hs.TApp (tgName ["C"] "Parsed") [parsedTy]])+    | cls <- ["Show", "Eq"]+    ]++defineParse :: Name.LocalQ -> [Name.UnQ] -> New.ParsedInstances -> [Hs.Decl]+defineParse typeName typeParams New.ParsedStruct { fields, hasUnion, dataCtorName } =+    let tVars = toTVars typeParams+        typ = Hs.TApp (Hs.TLName typeName) tVars+    in+    [ Hs.DcInstance+        { ctx = paramsContext tVars+        , typ = Hs.TApp (tgName ["C"] "Parse") [typ, Hs.TApp (tgName ["C"] "Parsed") [typ]]+        , defs =+            [ Hs.IdValue Hs.DfValue+                { name = "parse"+                , params = [Hs.PVar "raw_"]+                , value = Hs.EFApp (Hs.ELName dataCtorName) $+                    [ Hs.EApp+                        (egName ["GH"] "parseField")+                        [Hs.ELabel field, euName "raw_"]+                    | field <- map fst fields+                    ]+                    +++                    if hasUnion then+                        [ Hs.EApp+                            (egName ["C"] "parse")+                            [Hs.EApp (egName ["GH"] "structUnion") [euName "raw_"]]+                        ]+                    else+                        []+                }+            ]+        }+    ]+defineParse typeName typeParams New.ParsedUnion{ variants } =+    let tVars = toTVars typeParams+        typ = Hs.TApp (tgName ["GH"] "Which") [Hs.TApp (Hs.TLName typeName) tVars]+    in+    [ Hs.DcInstance+        { ctx = paramsContext tVars+        , typ = Hs.TApp (tgName ["C"] "Parse") [typ, Hs.TApp (tgName ["C"] "Parsed") [typ]]+        , defs =+            [ Hs.IdValue Hs.DfValue+                { name = "parse"+                , params = [Hs.PVar "raw_"]+                , value = Hs.EDo+                    [ Hs.DoBind "rawWhich_" $ Hs.EApp (egName ["GH"] "unionWhich") [euName "raw_"]+                    ]+                    (Hs.ECase (euName "rawWhich_") $+                        [ let ctorName = Name.mkSub typeName variantName in+                          case fieldLocType of+                            C.VoidField ->+                                ( puName (rawCtorName ctorName) [Hs.PVar "_"]+                                , Hs.EApp (eStd_ "pure") [Hs.ELName ctorName]+                                )+                            _ ->+                                ( puName (rawCtorName ctorName) [Hs.PVar "rawArg_"]+                                , Hs.EFApp+                                    (Hs.ELName ctorName)+                                    [Hs.EApp (egName ["C"] "parse") [euName "rawArg_"]]+                                )+                        | (variantName, fieldLocType) <- variants+                        ]+                        +++                        [ let ctorName = unknownVariant typeName in+                          ( puName (rawCtorName ctorName) [Hs.PVar "tag_"]+                          , Hs.EApp+                                (eStd_ "pure")+                                [Hs.EApp (Hs.ELName ctorName) [euName "tag_"]]+                          )+                        ]+                    )+                }+            ]+        }+    ]++defineInterfaceParse typeName typeParams =+    let tVars = toTVars typeParams+        typ = Hs.TApp (Hs.TLName typeName) tVars+    in+    [ Hs.DcInstance+        { ctx = paramsContext tVars+        , typ = Hs.TApp (tgName ["C"] "Parse") [typ, Hs.TApp (tgName ["GH"] "Client") [typ]]+        , defs =+            [ Hs.IdValue Hs.DfValue+                { name = "parse"+                , params = []+                , value = egName ["GH"] "parseCap"+                }+            , Hs.IdValue Hs.DfValue+                { name = "encode"+                , params = []+                , value = egName ["GH"] "encodeCap"+                }+            ]+        }+    ]++defineMarshal :: Name.LocalQ -> [Name.UnQ] -> New.ParsedInstances -> [Hs.Decl]+defineMarshal typeName typeParams New.ParsedStruct { fields, hasUnion, dataCtorName } =+    let tVars = toTVars typeParams+        typ = Hs.TApp (Hs.TLName typeName) tVars+    in+    [ Hs.DcInstance+        { ctx = paramsContext tVars+        , typ = Hs.TApp+                    (tgName ["C"] "Marshal")+                    [typ, Hs.TApp (tgName ["C"] "Parsed") [typ]]+        , defs =+            [ if null fields && not hasUnion then+                -- We need to special case this, since otherwise GHC will complain about+                -- the record wildcard pattern on a ctor with no arguments.+                Hs.IdValue Hs.DfValue+                    { name = "marshalInto"+                    , params = [ Hs.PVar "_raw", Hs.PLCtor dataCtorName [] ]+                    , value = Hs.EApp (eStd_ "pure") [Hs.ETup []]+                    }+              else+                Hs.IdValue Hs.DfValue+                    { name = "marshalInto"+                    , params =+                        [ Hs.PVar "raw_", Hs.PLRecordWildCard dataCtorName]+                    , value = Hs.EDo+                        (map (Hs.DoE . uncurry emitMarshalField) fields)+                        (if hasUnion then+                            Hs.EApp (egName ["C"] "marshalInto")+                              [ Hs.EApp (egName ["GH"] "structUnion") [euName "raw_"]+                              , euName "union'"+                              ]+                        else+                            Hs.EApp (eStd_ "pure") [Hs.ETup []]+                        )+                    }+            ]+        }+    ]+defineMarshal typeName typeParams New.ParsedUnion { variants } =+    let tVars = toTVars typeParams+        typ = Hs.TApp (tgName ["GH"] "Which") [Hs.TApp (Hs.TLName typeName) tVars]+    in+    [ Hs.DcInstance+        { ctx = paramsContext tVars+        , typ = Hs.TApp+            (tgName ["C"] "Marshal")+            [typ, Hs.TApp (tgName ["C"] "Parsed") [typ]]+        , defs =+            [ Hs.IdValue Hs.DfValue+                { name = "marshalInto"+                , params = [ Hs.PVar "raw_", Hs.PVar "parsed_" ]+                , value = Hs.ECase (Hs.EVar "parsed_") $+                    [ ( Hs.PLCtor (Name.mkSub typeName name) $+                            case fieldLocType of+                                C.VoidField -> []+                                _           -> [Hs.PVar "arg_"]+                      , emitMarshalVariant name fieldLocType+                      )+                    | (name, fieldLocType) <- variants+                    ] +++                    [ ( Hs.PLCtor (unknownVariant typeName) [Hs.PVar "tag_"]+                      , Hs.EApp+                            (egName ["GH"] "encodeField")+                            [ egName ["GH"] "unionField"+                            , Hs.EVar "tag_"+                            , unionStruct (euName "raw_")+                            ]+                      )+                    ]+                }+            ]+        }+    ]++emitMarshalField :: Name.UnQ -> C.FieldLocType New.Brand Name.CapnpQ -> Hs.Exp+emitMarshalField name (C.HereField _) =+    Hs.EDo+        [ Hs.DoBind "group_" $ Hs.EApp+            (egName ["GH"] "readField")+            [Hs.ELabel name, Hs.EVar "raw_"]+        ]+        (Hs.EApp (egName ["C"] "marshalInto") [Hs.EVar "group_", euName name])+emitMarshalField name _ =+    Hs.EApp (egName ["GH"] "encodeField")+        [ Hs.ELabel name+        , euName name+        , euName "raw_"+        ]++emitMarshalVariant :: Name.UnQ -> C.FieldLocType New.Brand Name.CapnpQ -> Hs.Exp+emitMarshalVariant name (C.HereField _) = Hs.EDo+    [ Hs.DoBind "rawGroup_" $+        Hs.EApp (egName ["GH"] "initVariant")+            [ Hs.ELabel name+            , unionStruct (euName "raw_")+            ]+    ]+    (Hs.EApp (egName ["C"] "marshalInto") [euName "rawGroup_", euName "arg_"])+emitMarshalVariant name C.VoidField =+    Hs.EApp (egName ["GH"] "encodeVariant")+        [ Hs.ELabel name+        , Hs.ETup []+        , unionStruct (euName "raw_")+        ]+emitMarshalVariant name _ =+    Hs.EApp (egName ["GH"] "encodeVariant")+        [ Hs.ELabel name+        , euName "arg_"+        , unionStruct (euName "raw_")+        ]++unionStruct :: Hs.Exp -> Hs.Exp+unionStruct e = Hs.EApp (egName ["GH"] "unionStruct") [e]
cmd/capnpc-haskell/Trans/PureToHaskell.hs view
@@ -185,6 +185,7 @@         , derives =             ["Std_.Show", "Std_.Eq", "Generics.Generic"]         , dataNewtype = False+        , dataInstance = False         , dataVariants =             case def of                 P.Product fields ->@@ -461,6 +462,7 @@     DcData Data         { dataName = Name.localToUnQ name         , dataNewtype = True+        , dataInstance = False         , dataVariants =             [ DataVariant                 { dvCtorName = Name.localToUnQ name
cmd/capnpc-haskell/Trans/RawToHaskell.hs view
@@ -6,18 +6,13 @@  import Data.Word -import Data.Maybe  (fromJust) import Data.String (fromString)-import GHC.Exts    (fromList)  import qualified Data.Text as T  import IR.Haskell import Trans.ToHaskellCommon -import qualified Capnp-import qualified Capnp.Untyped.Pure as Untyped- import qualified IR.Common as C import qualified IR.Name   as Name import qualified IR.Raw    as Raw@@ -88,6 +83,7 @@     [ DcData Data         { dataName = Name.localToUnQ typeCtor         , dataNewtype = False+        , dataInstance = False         , typeArgs = typeParamNames ++ [TKindAnnotated (TVar "mut") (tgName ["Message"] "Mutability")]         , dataVariants =             [ DataVariant@@ -184,6 +180,7 @@     [ DcData Data         { dataName = Name.localToUnQ typeCtor         , dataNewtype = False+        , dataInstance = False         , typeArgs = []         , dataVariants =             map enumerantToVariant dataCtors@@ -241,6 +238,7 @@                 ]             , derives = []             , dataNewtype = True+            , dataInstance = False             }         , iValue "index" [PVar "i", PLCtor listCtor [PVar "l"]] $ EFApp             (egName ["Classes"] "fromWord")@@ -417,6 +415,7 @@                 ]             , derives = []             , dataNewtype = True+            , dataInstance = False             }         , iValue "listFromPtr" [PVar "msg", PVar "ptr"] $ EFApp             (ELName listCtor)@@ -709,15 +708,6 @@             }         }     ]-  where-    makePtrBytes ptr =-        Capnp.msgToLBS $ fromJust $ Capnp.createPure Capnp.defaultLimit $ do-            msg <- Capnp.newMessage Nothing-            rootPtr <- Capnp.cerialize msg $ Untyped.Struct-                (fromList [])-                (fromList [ptr])-            Capnp.setRoot rootPtr-            pure msg  containerTypeToType :: Name.LocalQ -> [Name.UnQ] -> Type -> Type containerTypeToType name params msgTy =@@ -825,6 +815,7 @@     DcData Data         { dataName = Name.localToUnQ typeCtor         , dataNewtype = True+        , dataInstance = False         , typeArgs = map TVar typeArgs         , dataVariants =             [ DataVariant
cmd/capnpc-haskell/Trans/ToHaskellCommon.hs view
@@ -8,15 +8,24 @@ import Data.Word  import Data.Char       (toUpper)+import Data.Maybe      (fromJust)+import GHC.Exts        (fromList) import System.FilePath (splitDirectories) import Text.Printf     (printf) -import qualified Data.Set  as S-import qualified Data.Text as T -import qualified IR.Common as C-import qualified IR.Name   as Name+import qualified Data.ByteString.Lazy as LBS+import qualified Data.Set             as S+import qualified Data.Text            as T +import Capnp.New.Classes (encode)+import Capnp.Repr.Parsed (Parsed)++import qualified Capnp+import qualified Capnp.New.Basics as B+import qualified IR.Common        as C+import qualified IR.Name          as Name+ import IR.Haskell  -- Misc shortcuts for common constructs:@@ -51,6 +60,9 @@ pgName :: [T.Text] -> Name.LocalQ -> [Pattern] -> Pattern pgName parts local = PGCtor (gName parts local) +puName :: Name.UnQ -> [Pattern] -> Pattern+puName = PLCtor . Name.unQToLocal+ tuName :: Name.UnQ -> Type tuName = TLName . Name.unQToLocal @@ -143,6 +155,19 @@     in     m { modImports = modImports ++ neededImports } +toTVars :: [Name.UnQ] -> [Type]+toTVars = map (TVar . Name.typeVarName)++makePtrBytes :: Parsed B.AnyPointer -> LBS.ByteString+makePtrBytes ptr =+    Capnp.msgToLBS $ fromJust $ Capnp.createPure Capnp.defaultLimit $ do+        msg <- Capnp.newMessage Nothing+        rootPtr <- encode msg $ B.Struct+            (fromList [])+            (fromList [ptr])+        Capnp.setRoot rootPtr+        pure msg+ class HasGNames a where     -- | Collect all of the 'Name.GlobalQ's used in the module.     --@@ -171,6 +196,8 @@         , findGNames typ         , S.unions $ map findGNames defs         ]+    findGNames (DcTypeInstance alias orig) = findGNames alias `S.union` findGNames orig+    findGNames (DcDeriveInstance ctx typ) = findGNames (TCtx ctx typ)     findGNames DcClass{ctx, decls} =         S.unions $ map findGNames ctx ++ map findGNames decls 
+ examples/gen/lib/Capnp/Gen/ById/X85150b117366d14b/New.hs view
@@ -0,0 +1,12 @@+{-# OPTIONS_GHC -Wno-unused-imports #-}+{-# OPTIONS_GHC -Wno-dodgy-exports #-}+{-# OPTIONS_GHC -Wno-unused-matches #-}+{-# OPTIONS_GHC -Wno-orphans #-}+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-}+module Capnp.Gen.ById.X85150b117366d14b.New(module Capnp.Gen.Calculator.New) where+import Capnp.Gen.Calculator.New+import qualified Prelude as Std_+import qualified Data.Word as Std_+import qualified Data.Int as Std_+import Prelude ((<$>), (<*>), (>>=))
+ examples/gen/lib/Capnp/Gen/ById/Xd0a87f36fa0182f5/New.hs view
@@ -0,0 +1,12 @@+{-# OPTIONS_GHC -Wno-unused-imports #-}+{-# OPTIONS_GHC -Wno-dodgy-exports #-}+{-# OPTIONS_GHC -Wno-unused-matches #-}+{-# OPTIONS_GHC -Wno-orphans #-}+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-}+module Capnp.Gen.ById.Xd0a87f36fa0182f5.New(module Capnp.Gen.Echo.New) where+import Capnp.Gen.Echo.New+import qualified Prelude as Std_+import qualified Data.Word as Std_+import qualified Data.Int as Std_+import Prelude ((<$>), (<*>), (>>=))
+ examples/gen/lib/Capnp/Gen/Calculator/New.hs view
@@ -0,0 +1,501 @@+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE EmptyDataDeriving #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE UndecidableInstances #-}+{-# LANGUAGE OverloadedLabels #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE RecordWildCards #-}+{-# OPTIONS_GHC -Wno-unused-imports #-}+{-# OPTIONS_GHC -Wno-dodgy-exports #-}+{-# OPTIONS_GHC -Wno-unused-matches #-}+{-# OPTIONS_GHC -Wno-orphans #-}+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-}+module Capnp.Gen.Calculator.New where+import qualified Capnp.Repr as R+import qualified Capnp.Repr.Parsed as RP+import qualified Capnp.New.Basics as Basics+import qualified GHC.OverloadedLabels as OL+import qualified Capnp.GenHelpers.New as GH+import qualified Capnp.New.Classes as C+import qualified GHC.Generics as Generics+import qualified Capnp.GenHelpers.ReExports.Data.ByteString as BS+import qualified Prelude as Std_+import qualified Data.Word as Std_+import qualified Data.Int as Std_+import Prelude ((<$>), (<*>), (>>=))+data Calculator +type instance (R.ReprFor Calculator) = (R.Ptr (Std_.Just R.Cap))+instance (C.Parse Calculator (GH.Client Calculator)) where+    parse  = GH.parseCap+    encode  = GH.encodeCap+instance (GH.HasMethod "evaluate" Calculator Calculator'evaluate'params Calculator'evaluate'results) where+    methodByLabel  = (GH.Method 10923537602090224694 0)+instance (GH.HasMethod "defFunction" Calculator Calculator'defFunction'params Calculator'defFunction'results) where+    methodByLabel  = (GH.Method 10923537602090224694 1)+instance (GH.HasMethod "getOperator" Calculator Calculator'getOperator'params Calculator'getOperator'results) where+    methodByLabel  = (GH.Method 10923537602090224694 2)+data Calculator'evaluate'params +type instance (R.ReprFor Calculator'evaluate'params) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Calculator'evaluate'params) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate Calculator'evaluate'params) where+    type AllocHint Calculator'evaluate'params = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Calculator'evaluate'params (C.Parsed Calculator'evaluate'params))+instance (C.AllocateList Calculator'evaluate'params) where+    type ListAllocHint Calculator'evaluate'params = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Calculator'evaluate'params (C.Parsed Calculator'evaluate'params))+data instance C.Parsed Calculator'evaluate'params+    = Calculator'evaluate'params +        {expression :: (RP.Parsed Expression)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Calculator'evaluate'params))+deriving instance (Std_.Eq (C.Parsed Calculator'evaluate'params))+instance (C.Parse Calculator'evaluate'params (C.Parsed Calculator'evaluate'params)) where+    parse raw_ = (Calculator'evaluate'params <$> (GH.parseField #expression raw_))+instance (C.Marshal Calculator'evaluate'params (C.Parsed Calculator'evaluate'params)) where+    marshalInto raw_ Calculator'evaluate'params{..} = (do+        (GH.encodeField #expression expression raw_)+        (Std_.pure ())+        )+instance (GH.HasField "expression" GH.Slot Calculator'evaluate'params Expression) where+    fieldByLabel  = (GH.ptrField 0)+data Calculator'evaluate'results +type instance (R.ReprFor Calculator'evaluate'results) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Calculator'evaluate'results) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate Calculator'evaluate'results) where+    type AllocHint Calculator'evaluate'results = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Calculator'evaluate'results (C.Parsed Calculator'evaluate'results))+instance (C.AllocateList Calculator'evaluate'results) where+    type ListAllocHint Calculator'evaluate'results = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Calculator'evaluate'results (C.Parsed Calculator'evaluate'results))+data instance C.Parsed Calculator'evaluate'results+    = Calculator'evaluate'results +        {value :: (RP.Parsed Value)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Calculator'evaluate'results))+deriving instance (Std_.Eq (C.Parsed Calculator'evaluate'results))+instance (C.Parse Calculator'evaluate'results (C.Parsed Calculator'evaluate'results)) where+    parse raw_ = (Calculator'evaluate'results <$> (GH.parseField #value raw_))+instance (C.Marshal Calculator'evaluate'results (C.Parsed Calculator'evaluate'results)) where+    marshalInto raw_ Calculator'evaluate'results{..} = (do+        (GH.encodeField #value value raw_)+        (Std_.pure ())+        )+instance (GH.HasField "value" GH.Slot Calculator'evaluate'results Value) where+    fieldByLabel  = (GH.ptrField 0)+data Calculator'defFunction'params +type instance (R.ReprFor Calculator'defFunction'params) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Calculator'defFunction'params) where+    numStructWords  = 1+    numStructPtrs  = 1+instance (C.Allocate Calculator'defFunction'params) where+    type AllocHint Calculator'defFunction'params = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Calculator'defFunction'params (C.Parsed Calculator'defFunction'params))+instance (C.AllocateList Calculator'defFunction'params) where+    type ListAllocHint Calculator'defFunction'params = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Calculator'defFunction'params (C.Parsed Calculator'defFunction'params))+data instance C.Parsed Calculator'defFunction'params+    = Calculator'defFunction'params +        {paramCount :: (RP.Parsed Std_.Int32)+        ,body :: (RP.Parsed Expression)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Calculator'defFunction'params))+deriving instance (Std_.Eq (C.Parsed Calculator'defFunction'params))+instance (C.Parse Calculator'defFunction'params (C.Parsed Calculator'defFunction'params)) where+    parse raw_ = (Calculator'defFunction'params <$> (GH.parseField #paramCount raw_)+                                                <*> (GH.parseField #body raw_))+instance (C.Marshal Calculator'defFunction'params (C.Parsed Calculator'defFunction'params)) where+    marshalInto raw_ Calculator'defFunction'params{..} = (do+        (GH.encodeField #paramCount paramCount raw_)+        (GH.encodeField #body body raw_)+        (Std_.pure ())+        )+instance (GH.HasField "paramCount" GH.Slot Calculator'defFunction'params Std_.Int32) where+    fieldByLabel  = (GH.dataField 0 0 32 0)+instance (GH.HasField "body" GH.Slot Calculator'defFunction'params Expression) where+    fieldByLabel  = (GH.ptrField 0)+data Calculator'defFunction'results +type instance (R.ReprFor Calculator'defFunction'results) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Calculator'defFunction'results) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate Calculator'defFunction'results) where+    type AllocHint Calculator'defFunction'results = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Calculator'defFunction'results (C.Parsed Calculator'defFunction'results))+instance (C.AllocateList Calculator'defFunction'results) where+    type ListAllocHint Calculator'defFunction'results = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Calculator'defFunction'results (C.Parsed Calculator'defFunction'results))+data instance C.Parsed Calculator'defFunction'results+    = Calculator'defFunction'results +        {func :: (RP.Parsed Function)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Calculator'defFunction'results))+deriving instance (Std_.Eq (C.Parsed Calculator'defFunction'results))+instance (C.Parse Calculator'defFunction'results (C.Parsed Calculator'defFunction'results)) where+    parse raw_ = (Calculator'defFunction'results <$> (GH.parseField #func raw_))+instance (C.Marshal Calculator'defFunction'results (C.Parsed Calculator'defFunction'results)) where+    marshalInto raw_ Calculator'defFunction'results{..} = (do+        (GH.encodeField #func func raw_)+        (Std_.pure ())+        )+instance (GH.HasField "func" GH.Slot Calculator'defFunction'results Function) where+    fieldByLabel  = (GH.ptrField 0)+data Calculator'getOperator'params +type instance (R.ReprFor Calculator'getOperator'params) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Calculator'getOperator'params) where+    numStructWords  = 1+    numStructPtrs  = 0+instance (C.Allocate Calculator'getOperator'params) where+    type AllocHint Calculator'getOperator'params = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Calculator'getOperator'params (C.Parsed Calculator'getOperator'params))+instance (C.AllocateList Calculator'getOperator'params) where+    type ListAllocHint Calculator'getOperator'params = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Calculator'getOperator'params (C.Parsed Calculator'getOperator'params))+data instance C.Parsed Calculator'getOperator'params+    = Calculator'getOperator'params +        {op :: (RP.Parsed Operator)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Calculator'getOperator'params))+deriving instance (Std_.Eq (C.Parsed Calculator'getOperator'params))+instance (C.Parse Calculator'getOperator'params (C.Parsed Calculator'getOperator'params)) where+    parse raw_ = (Calculator'getOperator'params <$> (GH.parseField #op raw_))+instance (C.Marshal Calculator'getOperator'params (C.Parsed Calculator'getOperator'params)) where+    marshalInto raw_ Calculator'getOperator'params{..} = (do+        (GH.encodeField #op op raw_)+        (Std_.pure ())+        )+instance (GH.HasField "op" GH.Slot Calculator'getOperator'params Operator) where+    fieldByLabel  = (GH.dataField 0 0 16 0)+data Calculator'getOperator'results +type instance (R.ReprFor Calculator'getOperator'results) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Calculator'getOperator'results) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate Calculator'getOperator'results) where+    type AllocHint Calculator'getOperator'results = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Calculator'getOperator'results (C.Parsed Calculator'getOperator'results))+instance (C.AllocateList Calculator'getOperator'results) where+    type ListAllocHint Calculator'getOperator'results = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Calculator'getOperator'results (C.Parsed Calculator'getOperator'results))+data instance C.Parsed Calculator'getOperator'results+    = Calculator'getOperator'results +        {func :: (RP.Parsed Function)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Calculator'getOperator'results))+deriving instance (Std_.Eq (C.Parsed Calculator'getOperator'results))+instance (C.Parse Calculator'getOperator'results (C.Parsed Calculator'getOperator'results)) where+    parse raw_ = (Calculator'getOperator'results <$> (GH.parseField #func raw_))+instance (C.Marshal Calculator'getOperator'results (C.Parsed Calculator'getOperator'results)) where+    marshalInto raw_ Calculator'getOperator'results{..} = (do+        (GH.encodeField #func func raw_)+        (Std_.pure ())+        )+instance (GH.HasField "func" GH.Slot Calculator'getOperator'results Function) where+    fieldByLabel  = (GH.ptrField 0)+data Expression +type instance (R.ReprFor Expression) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Expression) where+    numStructWords  = 2+    numStructPtrs  = 2+instance (C.Allocate Expression) where+    type AllocHint Expression = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Expression (C.Parsed Expression))+instance (C.AllocateList Expression) where+    type ListAllocHint Expression = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Expression (C.Parsed Expression))+data instance C.Parsed Expression+    = Expression +        {union' :: (C.Parsed (GH.Which Expression))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Expression))+deriving instance (Std_.Eq (C.Parsed Expression))+instance (C.Parse Expression (C.Parsed Expression)) where+    parse raw_ = (Expression <$> (C.parse (GH.structUnion raw_)))+instance (C.Marshal Expression (C.Parsed Expression)) where+    marshalInto raw_ Expression{..} = (do+        (C.marshalInto (GH.structUnion raw_) union')+        )+instance (GH.HasUnion Expression) where+    unionField  = (GH.dataField 0 1 16 0)+    data RawWhich mut_ Expression+        = RW_Expression'literal (R.Raw mut_ Std_.Double)+        | RW_Expression'previousResult (R.Raw mut_ Value)+        | RW_Expression'parameter (R.Raw mut_ Std_.Word32)+        | RW_Expression'call (R.Raw mut_ Expression'call)+        | RW_Expression'unknown' Std_.Word16+    internalWhich tag_ struct_ = case tag_ of+        0 ->+            (RW_Expression'literal <$> (GH.readVariant #literal struct_))+        1 ->+            (RW_Expression'previousResult <$> (GH.readVariant #previousResult struct_))+        2 ->+            (RW_Expression'parameter <$> (GH.readVariant #parameter struct_))+        3 ->+            (RW_Expression'call <$> (GH.readVariant #call struct_))+        _ ->+            (Std_.pure (RW_Expression'unknown' tag_))+    data Which Expression+instance (GH.HasVariant "literal" GH.Slot Expression Std_.Double) where+    variantByLabel  = (GH.Variant (GH.dataField 0 0 64 0) 0)+instance (GH.HasVariant "previousResult" GH.Slot Expression Value) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 1)+instance (GH.HasVariant "parameter" GH.Slot Expression Std_.Word32) where+    variantByLabel  = (GH.Variant (GH.dataField 0 0 32 0) 2)+instance (GH.HasVariant "call" GH.Group Expression Expression'call) where+    variantByLabel  = (GH.Variant GH.groupField 3)+data instance C.Parsed (GH.Which Expression)+    = Expression'literal (RP.Parsed Std_.Double)+    | Expression'previousResult (RP.Parsed Value)+    | Expression'parameter (RP.Parsed Std_.Word32)+    | Expression'call (RP.Parsed Expression'call)+    | Expression'unknown' Std_.Word16+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed (GH.Which Expression)))+deriving instance (Std_.Eq (C.Parsed (GH.Which Expression)))+instance (C.Parse (GH.Which Expression) (C.Parsed (GH.Which Expression))) where+    parse raw_ = (do+        rawWhich_ <- (GH.unionWhich raw_)+        case rawWhich_ of+            (RW_Expression'literal rawArg_) ->+                (Expression'literal <$> (C.parse rawArg_))+            (RW_Expression'previousResult rawArg_) ->+                (Expression'previousResult <$> (C.parse rawArg_))+            (RW_Expression'parameter rawArg_) ->+                (Expression'parameter <$> (C.parse rawArg_))+            (RW_Expression'call rawArg_) ->+                (Expression'call <$> (C.parse rawArg_))+            (RW_Expression'unknown' tag_) ->+                (Std_.pure (Expression'unknown' tag_))+        )+instance (C.Marshal (GH.Which Expression) (C.Parsed (GH.Which Expression))) where+    marshalInto raw_ parsed_ = case parsed_ of+        (Expression'literal arg_) ->+            (GH.encodeVariant #literal arg_ (GH.unionStruct raw_))+        (Expression'previousResult arg_) ->+            (GH.encodeVariant #previousResult arg_ (GH.unionStruct raw_))+        (Expression'parameter arg_) ->+            (GH.encodeVariant #parameter arg_ (GH.unionStruct raw_))+        (Expression'call arg_) ->+            (do+                rawGroup_ <- (GH.initVariant #call (GH.unionStruct raw_))+                (C.marshalInto rawGroup_ arg_)+                )+        (Expression'unknown' tag_) ->+            (GH.encodeField GH.unionField tag_ (GH.unionStruct raw_))+data Expression'call +type instance (R.ReprFor Expression'call) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Expression'call) where+    numStructWords  = 2+    numStructPtrs  = 2+instance (C.Allocate Expression'call) where+    type AllocHint Expression'call = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Expression'call (C.Parsed Expression'call))+instance (C.AllocateList Expression'call) where+    type ListAllocHint Expression'call = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Expression'call (C.Parsed Expression'call))+data instance C.Parsed Expression'call+    = Expression'call' +        {function :: (RP.Parsed Function)+        ,params :: (RP.Parsed (R.List Expression))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Expression'call))+deriving instance (Std_.Eq (C.Parsed Expression'call))+instance (C.Parse Expression'call (C.Parsed Expression'call)) where+    parse raw_ = (Expression'call' <$> (GH.parseField #function raw_)+                                   <*> (GH.parseField #params raw_))+instance (C.Marshal Expression'call (C.Parsed Expression'call)) where+    marshalInto raw_ Expression'call'{..} = (do+        (GH.encodeField #function function raw_)+        (GH.encodeField #params params raw_)+        (Std_.pure ())+        )+instance (GH.HasField "function" GH.Slot Expression'call Function) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "params" GH.Slot Expression'call (R.List Expression)) where+    fieldByLabel  = (GH.ptrField 1)+data Value +type instance (R.ReprFor Value) = (R.Ptr (Std_.Just R.Cap))+instance (C.Parse Value (GH.Client Value)) where+    parse  = GH.parseCap+    encode  = GH.encodeCap+instance (GH.HasMethod "read" Value Value'read'params Value'read'results) where+    methodByLabel  = (GH.Method 14116142932258867410 0)+data Value'read'params +type instance (R.ReprFor Value'read'params) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Value'read'params) where+    numStructWords  = 0+    numStructPtrs  = 0+instance (C.Allocate Value'read'params) where+    type AllocHint Value'read'params = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Value'read'params (C.Parsed Value'read'params))+instance (C.AllocateList Value'read'params) where+    type ListAllocHint Value'read'params = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Value'read'params (C.Parsed Value'read'params))+data instance C.Parsed Value'read'params+    = Value'read'params +        {}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Value'read'params))+deriving instance (Std_.Eq (C.Parsed Value'read'params))+instance (C.Parse Value'read'params (C.Parsed Value'read'params)) where+    parse raw_ = (Std_.pure Value'read'params)+instance (C.Marshal Value'read'params (C.Parsed Value'read'params)) where+    marshalInto _raw (Value'read'params) = (Std_.pure ())+data Value'read'results +type instance (R.ReprFor Value'read'results) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Value'read'results) where+    numStructWords  = 1+    numStructPtrs  = 0+instance (C.Allocate Value'read'results) where+    type AllocHint Value'read'results = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Value'read'results (C.Parsed Value'read'results))+instance (C.AllocateList Value'read'results) where+    type ListAllocHint Value'read'results = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Value'read'results (C.Parsed Value'read'results))+data instance C.Parsed Value'read'results+    = Value'read'results +        {value :: (RP.Parsed Std_.Double)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Value'read'results))+deriving instance (Std_.Eq (C.Parsed Value'read'results))+instance (C.Parse Value'read'results (C.Parsed Value'read'results)) where+    parse raw_ = (Value'read'results <$> (GH.parseField #value raw_))+instance (C.Marshal Value'read'results (C.Parsed Value'read'results)) where+    marshalInto raw_ Value'read'results{..} = (do+        (GH.encodeField #value value raw_)+        (Std_.pure ())+        )+instance (GH.HasField "value" GH.Slot Value'read'results Std_.Double) where+    fieldByLabel  = (GH.dataField 0 0 64 0)+data Function +type instance (R.ReprFor Function) = (R.Ptr (Std_.Just R.Cap))+instance (C.Parse Function (GH.Client Function)) where+    parse  = GH.parseCap+    encode  = GH.encodeCap+instance (GH.HasMethod "call" Function Function'call'params Function'call'results) where+    methodByLabel  = (GH.Method 17143016017778443156 0)+data Function'call'params +type instance (R.ReprFor Function'call'params) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Function'call'params) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate Function'call'params) where+    type AllocHint Function'call'params = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Function'call'params (C.Parsed Function'call'params))+instance (C.AllocateList Function'call'params) where+    type ListAllocHint Function'call'params = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Function'call'params (C.Parsed Function'call'params))+data instance C.Parsed Function'call'params+    = Function'call'params +        {params :: (RP.Parsed (R.List Std_.Double))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Function'call'params))+deriving instance (Std_.Eq (C.Parsed Function'call'params))+instance (C.Parse Function'call'params (C.Parsed Function'call'params)) where+    parse raw_ = (Function'call'params <$> (GH.parseField #params raw_))+instance (C.Marshal Function'call'params (C.Parsed Function'call'params)) where+    marshalInto raw_ Function'call'params{..} = (do+        (GH.encodeField #params params raw_)+        (Std_.pure ())+        )+instance (GH.HasField "params" GH.Slot Function'call'params (R.List Std_.Double)) where+    fieldByLabel  = (GH.ptrField 0)+data Function'call'results +type instance (R.ReprFor Function'call'results) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Function'call'results) where+    numStructWords  = 1+    numStructPtrs  = 0+instance (C.Allocate Function'call'results) where+    type AllocHint Function'call'results = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Function'call'results (C.Parsed Function'call'results))+instance (C.AllocateList Function'call'results) where+    type ListAllocHint Function'call'results = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Function'call'results (C.Parsed Function'call'results))+data instance C.Parsed Function'call'results+    = Function'call'results +        {value :: (RP.Parsed Std_.Double)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Function'call'results))+deriving instance (Std_.Eq (C.Parsed Function'call'results))+instance (C.Parse Function'call'results (C.Parsed Function'call'results)) where+    parse raw_ = (Function'call'results <$> (GH.parseField #value raw_))+instance (C.Marshal Function'call'results (C.Parsed Function'call'results)) where+    marshalInto raw_ Function'call'results{..} = (do+        (GH.encodeField #value value raw_)+        (Std_.pure ())+        )+instance (GH.HasField "value" GH.Slot Function'call'results Std_.Double) where+    fieldByLabel  = (GH.dataField 0 0 64 0)+data Operator +    = Operator'add +    | Operator'subtract +    | Operator'multiply +    | Operator'divide +    | Operator'unknown' Std_.Word16+    deriving(Std_.Eq,Std_.Show)+type instance (R.ReprFor Operator) = (R.Data R.Sz16)+instance (Std_.Enum Operator) where+    toEnum n_ = case n_ of+        0 ->+            Operator'add+        1 ->+            Operator'subtract+        2 ->+            Operator'multiply+        3 ->+            Operator'divide+        tag_ ->+            (Operator'unknown' (Std_.fromIntegral tag_))+    fromEnum value_ = case value_ of+        (Operator'add) ->+            0+        (Operator'subtract) ->+            1+        (Operator'multiply) ->+            2+        (Operator'divide) ->+            3+        (Operator'unknown' tag_) ->+            (Std_.fromIntegral tag_)+instance (C.IsWord Operator) where+    fromWord w_ = (Std_.toEnum (Std_.fromIntegral w_))+    toWord v_ = (Std_.fromIntegral (Std_.fromEnum v_))+instance (C.Parse Operator Operator) where+    parse  = GH.parseEnum+    encode  = GH.encodeEnum+instance (C.AllocateList Operator) where+    type ListAllocHint Operator = Std_.Int+instance (C.EstimateListAlloc Operator Operator)
examples/gen/lib/Capnp/Gen/Calculator/Pure.hs view
@@ -74,7 +74,7 @@     calculator'getOperator :: cap -> (Server.MethodHandler m Calculator'getOperator'params Calculator'getOperator'results)     calculator'getOperator _ = Server.methodUnimplemented export_Calculator :: ((STM.MonadSTM m)-                     ,(Calculator'server_ Std_.IO cap)) => Supervisors.Supervisor -> cap -> (m (Calculator))+                     ,(Calculator'server_ Std_.IO cap)) => Supervisors.Supervisor -> cap -> (m Calculator) export_Calculator sup_ server_ = (STM.liftSTM (Calculator <$> (Rpc.export sup_ Server.ServerOps{handleCast = (Server.unwrap server_)                                                                                                ,handleStop = (Server.shutdown server_)                                                                                                ,handleCall = (\interfaceId_ methodId_ -> case interfaceId_ of@@ -90,24 +90,24 @@                                                                                                                Server.methodUnimplemented                                                                                                    _ ->                                                                                                        Server.methodUnimplemented)})))-instance (Rpc.IsClient (Calculator)) where+instance (Rpc.IsClient Calculator) where     fromClient  = Calculator     toClient (Calculator client) = client-instance (Classes.FromPtr msg (Calculator)) where+instance (Classes.FromPtr msg Calculator) where     fromPtr  = RpcHelpers.isClientFromPtr-instance (Classes.ToPtr s (Calculator)) where+instance (Classes.ToPtr s Calculator) where     toPtr  = RpcHelpers.isClientToPtr-instance (Classes.Decerialize (Calculator)) where-    type Cerial msg (Calculator) = (Capnp.Gen.ById.X85150b117366d14b.Calculator msg)+instance (Classes.Decerialize Calculator) where+    type Cerial msg Calculator = (Capnp.Gen.ById.X85150b117366d14b.Calculator msg)     decerialize (Capnp.Gen.ById.X85150b117366d14b.Calculator'newtype_ maybeCap) = case maybeCap of         (Std_.Nothing) ->             (Std_.pure (Calculator Message.nullClient))         (Std_.Just cap) ->             (Calculator <$> (Untyped.getClient cap))-instance (Classes.Cerialize s (Calculator)) where+instance (Classes.Cerialize s Calculator) where     cerialize msg (Calculator client) = (Capnp.Gen.ById.X85150b117366d14b.Calculator'newtype_ <$> (Std_.Just <$> (Untyped.appendCap msg client)))-instance (Server.Server Std_.IO (Calculator))-instance (Calculator'server_ Std_.IO (Calculator)) where+instance (Server.Server Std_.IO Calculator)+instance (Calculator'server_ Std_.IO Calculator) where     calculator'evaluate (Calculator client) = (Rpc.clientMethodHandler 10923537602090224694 0 client)     calculator'defFunction (Calculator client) = (Rpc.clientMethodHandler 10923537602090224694 1 client)     calculator'getOperator (Calculator client) = (Rpc.clientMethodHandler 10923537602090224694 2 client)@@ -117,34 +117,34 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Calculator'evaluate'params)) where+instance (Default.Default Calculator'evaluate'params) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Calculator'evaluate'params)) where+instance (Classes.FromStruct Message.Const Calculator'evaluate'params) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Calculator'evaluate'params)) where-    type Cerial msg (Calculator'evaluate'params) = (Capnp.Gen.ById.X85150b117366d14b.Calculator'evaluate'params msg)+instance (Classes.Decerialize Calculator'evaluate'params) where+    type Cerial msg Calculator'evaluate'params = (Capnp.Gen.ById.X85150b117366d14b.Calculator'evaluate'params msg)     decerialize raw = (Calculator'evaluate'params <$> ((Capnp.Gen.ById.X85150b117366d14b.get_Calculator'evaluate'params'expression raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Calculator'evaluate'params)) where+instance (Classes.Marshal s Calculator'evaluate'params) where     marshalInto raw_ value_ = case value_ of         Calculator'evaluate'params{..} ->             (do                 ((Classes.cerialize (Untyped.message raw_) expression) >>= (Capnp.Gen.ById.X85150b117366d14b.set_Calculator'evaluate'params'expression raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Calculator'evaluate'params))-instance (Classes.Cerialize s (V.Vector (Calculator'evaluate'params))) where+instance (Classes.Cerialize s Calculator'evaluate'params)+instance (Classes.Cerialize s (V.Vector Calculator'evaluate'params)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Calculator'evaluate'params)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Calculator'evaluate'params))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Calculator'evaluate'params))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Calculator'evaluate'params)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Calculator'evaluate'params)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Calculator'evaluate'params))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Calculator'evaluate'params))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Calculator'evaluate'params)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Calculator'evaluate'params)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Calculator'evaluate'params))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Calculator'evaluate'params))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Calculator'evaluate'params)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Calculator'evaluate'results      = Calculator'evaluate'results @@ -152,34 +152,34 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Calculator'evaluate'results)) where+instance (Default.Default Calculator'evaluate'results) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Calculator'evaluate'results)) where+instance (Classes.FromStruct Message.Const Calculator'evaluate'results) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Calculator'evaluate'results)) where-    type Cerial msg (Calculator'evaluate'results) = (Capnp.Gen.ById.X85150b117366d14b.Calculator'evaluate'results msg)+instance (Classes.Decerialize Calculator'evaluate'results) where+    type Cerial msg Calculator'evaluate'results = (Capnp.Gen.ById.X85150b117366d14b.Calculator'evaluate'results msg)     decerialize raw = (Calculator'evaluate'results <$> ((Capnp.Gen.ById.X85150b117366d14b.get_Calculator'evaluate'results'value raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Calculator'evaluate'results)) where+instance (Classes.Marshal s Calculator'evaluate'results) where     marshalInto raw_ value_ = case value_ of         Calculator'evaluate'results{..} ->             (do                 ((Classes.cerialize (Untyped.message raw_) value) >>= (Capnp.Gen.ById.X85150b117366d14b.set_Calculator'evaluate'results'value raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Calculator'evaluate'results))-instance (Classes.Cerialize s (V.Vector (Calculator'evaluate'results))) where+instance (Classes.Cerialize s Calculator'evaluate'results)+instance (Classes.Cerialize s (V.Vector Calculator'evaluate'results)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Calculator'evaluate'results)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Calculator'evaluate'results))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Calculator'evaluate'results))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Calculator'evaluate'results)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Calculator'evaluate'results)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Calculator'evaluate'results))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Calculator'evaluate'results))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Calculator'evaluate'results)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Calculator'evaluate'results)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Calculator'evaluate'results))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Calculator'evaluate'results))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Calculator'evaluate'results)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Calculator'defFunction'params      = Calculator'defFunction'params @@ -188,15 +188,15 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Calculator'defFunction'params)) where+instance (Default.Default Calculator'defFunction'params) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Calculator'defFunction'params)) where+instance (Classes.FromStruct Message.Const Calculator'defFunction'params) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Calculator'defFunction'params)) where-    type Cerial msg (Calculator'defFunction'params) = (Capnp.Gen.ById.X85150b117366d14b.Calculator'defFunction'params msg)+instance (Classes.Decerialize Calculator'defFunction'params) where+    type Cerial msg Calculator'defFunction'params = (Capnp.Gen.ById.X85150b117366d14b.Calculator'defFunction'params msg)     decerialize raw = (Calculator'defFunction'params <$> (Capnp.Gen.ById.X85150b117366d14b.get_Calculator'defFunction'params'paramCount raw)                                                      <*> ((Capnp.Gen.ById.X85150b117366d14b.get_Calculator'defFunction'params'body raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Calculator'defFunction'params)) where+instance (Classes.Marshal s Calculator'defFunction'params) where     marshalInto raw_ value_ = case value_ of         Calculator'defFunction'params{..} ->             (do@@ -204,20 +204,20 @@                 ((Classes.cerialize (Untyped.message raw_) body) >>= (Capnp.Gen.ById.X85150b117366d14b.set_Calculator'defFunction'params'body raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Calculator'defFunction'params))-instance (Classes.Cerialize s (V.Vector (Calculator'defFunction'params))) where+instance (Classes.Cerialize s Calculator'defFunction'params)+instance (Classes.Cerialize s (V.Vector Calculator'defFunction'params)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Calculator'defFunction'params)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Calculator'defFunction'params))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Calculator'defFunction'params))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Calculator'defFunction'params)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Calculator'defFunction'params)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Calculator'defFunction'params))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Calculator'defFunction'params))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Calculator'defFunction'params)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Calculator'defFunction'params)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Calculator'defFunction'params))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Calculator'defFunction'params))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Calculator'defFunction'params)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Calculator'defFunction'results      = Calculator'defFunction'results @@ -225,34 +225,34 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Calculator'defFunction'results)) where+instance (Default.Default Calculator'defFunction'results) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Calculator'defFunction'results)) where+instance (Classes.FromStruct Message.Const Calculator'defFunction'results) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Calculator'defFunction'results)) where-    type Cerial msg (Calculator'defFunction'results) = (Capnp.Gen.ById.X85150b117366d14b.Calculator'defFunction'results msg)+instance (Classes.Decerialize Calculator'defFunction'results) where+    type Cerial msg Calculator'defFunction'results = (Capnp.Gen.ById.X85150b117366d14b.Calculator'defFunction'results msg)     decerialize raw = (Calculator'defFunction'results <$> ((Capnp.Gen.ById.X85150b117366d14b.get_Calculator'defFunction'results'func raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Calculator'defFunction'results)) where+instance (Classes.Marshal s Calculator'defFunction'results) where     marshalInto raw_ value_ = case value_ of         Calculator'defFunction'results{..} ->             (do                 ((Classes.cerialize (Untyped.message raw_) func) >>= (Capnp.Gen.ById.X85150b117366d14b.set_Calculator'defFunction'results'func raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Calculator'defFunction'results))-instance (Classes.Cerialize s (V.Vector (Calculator'defFunction'results))) where+instance (Classes.Cerialize s Calculator'defFunction'results)+instance (Classes.Cerialize s (V.Vector Calculator'defFunction'results)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Calculator'defFunction'results)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Calculator'defFunction'results))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Calculator'defFunction'results))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Calculator'defFunction'results)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Calculator'defFunction'results)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Calculator'defFunction'results))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Calculator'defFunction'results))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Calculator'defFunction'results)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Calculator'defFunction'results)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Calculator'defFunction'results))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Calculator'defFunction'results))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Calculator'defFunction'results)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Calculator'getOperator'params      = Calculator'getOperator'params @@ -260,34 +260,34 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Calculator'getOperator'params)) where+instance (Default.Default Calculator'getOperator'params) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Calculator'getOperator'params)) where+instance (Classes.FromStruct Message.Const Calculator'getOperator'params) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Calculator'getOperator'params)) where-    type Cerial msg (Calculator'getOperator'params) = (Capnp.Gen.ById.X85150b117366d14b.Calculator'getOperator'params msg)+instance (Classes.Decerialize Calculator'getOperator'params) where+    type Cerial msg Calculator'getOperator'params = (Capnp.Gen.ById.X85150b117366d14b.Calculator'getOperator'params msg)     decerialize raw = (Calculator'getOperator'params <$> (Capnp.Gen.ById.X85150b117366d14b.get_Calculator'getOperator'params'op raw))-instance (Classes.Marshal s (Calculator'getOperator'params)) where+instance (Classes.Marshal s Calculator'getOperator'params) where     marshalInto raw_ value_ = case value_ of         Calculator'getOperator'params{..} ->             (do                 (Capnp.Gen.ById.X85150b117366d14b.set_Calculator'getOperator'params'op raw_ op)                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Calculator'getOperator'params))-instance (Classes.Cerialize s (V.Vector (Calculator'getOperator'params))) where+instance (Classes.Cerialize s Calculator'getOperator'params)+instance (Classes.Cerialize s (V.Vector Calculator'getOperator'params)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Calculator'getOperator'params)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Calculator'getOperator'params))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Calculator'getOperator'params))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Calculator'getOperator'params)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Calculator'getOperator'params)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Calculator'getOperator'params))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Calculator'getOperator'params))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Calculator'getOperator'params)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Calculator'getOperator'params)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Calculator'getOperator'params))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Calculator'getOperator'params))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Calculator'getOperator'params)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Calculator'getOperator'results      = Calculator'getOperator'results @@ -295,34 +295,34 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Calculator'getOperator'results)) where+instance (Default.Default Calculator'getOperator'results) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Calculator'getOperator'results)) where+instance (Classes.FromStruct Message.Const Calculator'getOperator'results) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Calculator'getOperator'results)) where-    type Cerial msg (Calculator'getOperator'results) = (Capnp.Gen.ById.X85150b117366d14b.Calculator'getOperator'results msg)+instance (Classes.Decerialize Calculator'getOperator'results) where+    type Cerial msg Calculator'getOperator'results = (Capnp.Gen.ById.X85150b117366d14b.Calculator'getOperator'results msg)     decerialize raw = (Calculator'getOperator'results <$> ((Capnp.Gen.ById.X85150b117366d14b.get_Calculator'getOperator'results'func raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Calculator'getOperator'results)) where+instance (Classes.Marshal s Calculator'getOperator'results) where     marshalInto raw_ value_ = case value_ of         Calculator'getOperator'results{..} ->             (do                 ((Classes.cerialize (Untyped.message raw_) func) >>= (Capnp.Gen.ById.X85150b117366d14b.set_Calculator'getOperator'results'func raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Calculator'getOperator'results))-instance (Classes.Cerialize s (V.Vector (Calculator'getOperator'results))) where+instance (Classes.Cerialize s Calculator'getOperator'results)+instance (Classes.Cerialize s (V.Vector Calculator'getOperator'results)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Calculator'getOperator'results)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Calculator'getOperator'results))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Calculator'getOperator'results))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Calculator'getOperator'results)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Calculator'getOperator'results)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Calculator'getOperator'results))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Calculator'getOperator'results))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Calculator'getOperator'results)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Calculator'getOperator'results)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Calculator'getOperator'results))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Calculator'getOperator'results))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Calculator'getOperator'results)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Expression      = Expression'literal Std_.Double@@ -333,12 +333,12 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Expression)) where+instance (Default.Default Expression) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Expression)) where+instance (Classes.FromStruct Message.Const Expression) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Expression)) where-    type Cerial msg (Expression) = (Capnp.Gen.ById.X85150b117366d14b.Expression msg)+instance (Classes.Decerialize Expression) where+    type Cerial msg Expression = (Capnp.Gen.ById.X85150b117366d14b.Expression msg)     decerialize raw = (do         raw <- (Capnp.Gen.ById.X85150b117366d14b.get_Expression' raw)         case raw of@@ -353,7 +353,7 @@             (Capnp.Gen.ById.X85150b117366d14b.Expression'unknown' tag) ->                 (Std_.pure (Expression'unknown' tag))         )-instance (Classes.Marshal s (Expression)) where+instance (Classes.Marshal s Expression) where     marshalInto raw_ value_ = case value_ of         (Expression'literal arg_) ->             (Capnp.Gen.ById.X85150b117366d14b.set_Expression'literal raw_ arg_)@@ -368,20 +368,20 @@                 )         (Expression'unknown' tag) ->             (Capnp.Gen.ById.X85150b117366d14b.set_Expression'unknown' raw_ tag)-instance (Classes.Cerialize s (Expression))-instance (Classes.Cerialize s (V.Vector (Expression))) where+instance (Classes.Cerialize s Expression)+instance (Classes.Cerialize s (V.Vector Expression)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Expression)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Expression))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Expression))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Expression)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Expression)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Expression))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Expression))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Expression)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Expression)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Expression))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Expression))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Expression)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Expression'call      = Expression'call' @@ -390,15 +390,15 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Expression'call)) where+instance (Default.Default Expression'call) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Expression'call)) where+instance (Classes.FromStruct Message.Const Expression'call) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Expression'call)) where-    type Cerial msg (Expression'call) = (Capnp.Gen.ById.X85150b117366d14b.Expression'call msg)+instance (Classes.Decerialize Expression'call) where+    type Cerial msg Expression'call = (Capnp.Gen.ById.X85150b117366d14b.Expression'call msg)     decerialize raw = (Expression'call' <$> ((Capnp.Gen.ById.X85150b117366d14b.get_Expression'call'function raw) >>= Classes.decerialize)                                         <*> ((Capnp.Gen.ById.X85150b117366d14b.get_Expression'call'params raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Expression'call)) where+instance (Classes.Marshal s Expression'call) where     marshalInto raw_ value_ = case value_ of         Expression'call'{..} ->             (do@@ -417,7 +417,7 @@     value'read :: cap -> (Server.MethodHandler m Value'read'params Value'read'results)     value'read _ = Server.methodUnimplemented export_Value :: ((STM.MonadSTM m)-                ,(Value'server_ Std_.IO cap)) => Supervisors.Supervisor -> cap -> (m (Value))+                ,(Value'server_ Std_.IO cap)) => Supervisors.Supervisor -> cap -> (m Value) export_Value sup_ server_ = (STM.liftSTM (Value <$> (Rpc.export sup_ Server.ServerOps{handleCast = (Server.unwrap server_)                                                                                      ,handleStop = (Server.shutdown server_)                                                                                      ,handleCall = (\interfaceId_ methodId_ -> case interfaceId_ of@@ -429,24 +429,24 @@                                                                                                      Server.methodUnimplemented                                                                                          _ ->                                                                                              Server.methodUnimplemented)})))-instance (Rpc.IsClient (Value)) where+instance (Rpc.IsClient Value) where     fromClient  = Value     toClient (Value client) = client-instance (Classes.FromPtr msg (Value)) where+instance (Classes.FromPtr msg Value) where     fromPtr  = RpcHelpers.isClientFromPtr-instance (Classes.ToPtr s (Value)) where+instance (Classes.ToPtr s Value) where     toPtr  = RpcHelpers.isClientToPtr-instance (Classes.Decerialize (Value)) where-    type Cerial msg (Value) = (Capnp.Gen.ById.X85150b117366d14b.Value msg)+instance (Classes.Decerialize Value) where+    type Cerial msg Value = (Capnp.Gen.ById.X85150b117366d14b.Value msg)     decerialize (Capnp.Gen.ById.X85150b117366d14b.Value'newtype_ maybeCap) = case maybeCap of         (Std_.Nothing) ->             (Std_.pure (Value Message.nullClient))         (Std_.Just cap) ->             (Value <$> (Untyped.getClient cap))-instance (Classes.Cerialize s (Value)) where+instance (Classes.Cerialize s Value) where     cerialize msg (Value client) = (Capnp.Gen.ById.X85150b117366d14b.Value'newtype_ <$> (Std_.Just <$> (Untyped.appendCap msg client)))-instance (Server.Server Std_.IO (Value))-instance (Value'server_ Std_.IO (Value)) where+instance (Server.Server Std_.IO Value)+instance (Value'server_ Std_.IO Value) where     value'read (Value client) = (Rpc.clientMethodHandler 14116142932258867410 0 client) data Value'read'params      = Value'read'params @@ -454,33 +454,33 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Value'read'params)) where+instance (Default.Default Value'read'params) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Value'read'params)) where+instance (Classes.FromStruct Message.Const Value'read'params) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Value'read'params)) where-    type Cerial msg (Value'read'params) = (Capnp.Gen.ById.X85150b117366d14b.Value'read'params msg)+instance (Classes.Decerialize Value'read'params) where+    type Cerial msg Value'read'params = (Capnp.Gen.ById.X85150b117366d14b.Value'read'params msg)     decerialize raw = (Std_.pure Value'read'params)-instance (Classes.Marshal s (Value'read'params)) where+instance (Classes.Marshal s Value'read'params) where     marshalInto raw_ value_ = case value_ of         (Value'read'params) ->             (do                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Value'read'params))-instance (Classes.Cerialize s (V.Vector (Value'read'params))) where+instance (Classes.Cerialize s Value'read'params)+instance (Classes.Cerialize s (V.Vector Value'read'params)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Value'read'params)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Value'read'params))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Value'read'params))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Value'read'params)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Value'read'params)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Value'read'params))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Value'read'params))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Value'read'params)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Value'read'params)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Value'read'params))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Value'read'params))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Value'read'params)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Value'read'results      = Value'read'results @@ -488,34 +488,34 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Value'read'results)) where+instance (Default.Default Value'read'results) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Value'read'results)) where+instance (Classes.FromStruct Message.Const Value'read'results) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Value'read'results)) where-    type Cerial msg (Value'read'results) = (Capnp.Gen.ById.X85150b117366d14b.Value'read'results msg)+instance (Classes.Decerialize Value'read'results) where+    type Cerial msg Value'read'results = (Capnp.Gen.ById.X85150b117366d14b.Value'read'results msg)     decerialize raw = (Value'read'results <$> (Capnp.Gen.ById.X85150b117366d14b.get_Value'read'results'value raw))-instance (Classes.Marshal s (Value'read'results)) where+instance (Classes.Marshal s Value'read'results) where     marshalInto raw_ value_ = case value_ of         Value'read'results{..} ->             (do                 (Capnp.Gen.ById.X85150b117366d14b.set_Value'read'results'value raw_ value)                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Value'read'results))-instance (Classes.Cerialize s (V.Vector (Value'read'results))) where+instance (Classes.Cerialize s Value'read'results)+instance (Classes.Cerialize s (V.Vector Value'read'results)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Value'read'results)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Value'read'results))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Value'read'results))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Value'read'results)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Value'read'results)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Value'read'results))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Value'read'results))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Value'read'results)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Value'read'results)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Value'read'results))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Value'read'results))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Value'read'results)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec newtype Function      = Function Message.Client@@ -528,7 +528,7 @@     function'call :: cap -> (Server.MethodHandler m Function'call'params Function'call'results)     function'call _ = Server.methodUnimplemented export_Function :: ((STM.MonadSTM m)-                   ,(Function'server_ Std_.IO cap)) => Supervisors.Supervisor -> cap -> (m (Function))+                   ,(Function'server_ Std_.IO cap)) => Supervisors.Supervisor -> cap -> (m Function) export_Function sup_ server_ = (STM.liftSTM (Function <$> (Rpc.export sup_ Server.ServerOps{handleCast = (Server.unwrap server_)                                                                                            ,handleStop = (Server.shutdown server_)                                                                                            ,handleCall = (\interfaceId_ methodId_ -> case interfaceId_ of@@ -540,24 +540,24 @@                                                                                                            Server.methodUnimplemented                                                                                                _ ->                                                                                                    Server.methodUnimplemented)})))-instance (Rpc.IsClient (Function)) where+instance (Rpc.IsClient Function) where     fromClient  = Function     toClient (Function client) = client-instance (Classes.FromPtr msg (Function)) where+instance (Classes.FromPtr msg Function) where     fromPtr  = RpcHelpers.isClientFromPtr-instance (Classes.ToPtr s (Function)) where+instance (Classes.ToPtr s Function) where     toPtr  = RpcHelpers.isClientToPtr-instance (Classes.Decerialize (Function)) where-    type Cerial msg (Function) = (Capnp.Gen.ById.X85150b117366d14b.Function msg)+instance (Classes.Decerialize Function) where+    type Cerial msg Function = (Capnp.Gen.ById.X85150b117366d14b.Function msg)     decerialize (Capnp.Gen.ById.X85150b117366d14b.Function'newtype_ maybeCap) = case maybeCap of         (Std_.Nothing) ->             (Std_.pure (Function Message.nullClient))         (Std_.Just cap) ->             (Function <$> (Untyped.getClient cap))-instance (Classes.Cerialize s (Function)) where+instance (Classes.Cerialize s Function) where     cerialize msg (Function client) = (Capnp.Gen.ById.X85150b117366d14b.Function'newtype_ <$> (Std_.Just <$> (Untyped.appendCap msg client)))-instance (Server.Server Std_.IO (Function))-instance (Function'server_ Std_.IO (Function)) where+instance (Server.Server Std_.IO Function)+instance (Function'server_ Std_.IO Function) where     function'call (Function client) = (Rpc.clientMethodHandler 17143016017778443156 0 client) data Function'call'params      = Function'call'params @@ -565,34 +565,34 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Function'call'params)) where+instance (Default.Default Function'call'params) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Function'call'params)) where+instance (Classes.FromStruct Message.Const Function'call'params) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Function'call'params)) where-    type Cerial msg (Function'call'params) = (Capnp.Gen.ById.X85150b117366d14b.Function'call'params msg)+instance (Classes.Decerialize Function'call'params) where+    type Cerial msg Function'call'params = (Capnp.Gen.ById.X85150b117366d14b.Function'call'params msg)     decerialize raw = (Function'call'params <$> ((Capnp.Gen.ById.X85150b117366d14b.get_Function'call'params'params raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Function'call'params)) where+instance (Classes.Marshal s Function'call'params) where     marshalInto raw_ value_ = case value_ of         Function'call'params{..} ->             (do                 ((Classes.cerialize (Untyped.message raw_) params) >>= (Capnp.Gen.ById.X85150b117366d14b.set_Function'call'params'params raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Function'call'params))-instance (Classes.Cerialize s (V.Vector (Function'call'params))) where+instance (Classes.Cerialize s Function'call'params)+instance (Classes.Cerialize s (V.Vector Function'call'params)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Function'call'params)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Function'call'params))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Function'call'params))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Function'call'params)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Function'call'params)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Function'call'params))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Function'call'params))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Function'call'params)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Function'call'params)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Function'call'params))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Function'call'params))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Function'call'params)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Function'call'results      = Function'call'results @@ -600,34 +600,34 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Function'call'results)) where+instance (Default.Default Function'call'results) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Function'call'results)) where+instance (Classes.FromStruct Message.Const Function'call'results) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Function'call'results)) where-    type Cerial msg (Function'call'results) = (Capnp.Gen.ById.X85150b117366d14b.Function'call'results msg)+instance (Classes.Decerialize Function'call'results) where+    type Cerial msg Function'call'results = (Capnp.Gen.ById.X85150b117366d14b.Function'call'results msg)     decerialize raw = (Function'call'results <$> (Capnp.Gen.ById.X85150b117366d14b.get_Function'call'results'value raw))-instance (Classes.Marshal s (Function'call'results)) where+instance (Classes.Marshal s Function'call'results) where     marshalInto raw_ value_ = case value_ of         Function'call'results{..} ->             (do                 (Capnp.Gen.ById.X85150b117366d14b.set_Function'call'results'value raw_ value)                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Function'call'results))-instance (Classes.Cerialize s (V.Vector (Function'call'results))) where+instance (Classes.Cerialize s Function'call'results)+instance (Classes.Cerialize s (V.Vector Function'call'results)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Function'call'results)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Function'call'results))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Function'call'results))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Function'call'results)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Function'call'results)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Function'call'results))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Function'call'results))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Function'call'results)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Function'call'results)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Function'call'results))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Function'call'results))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Function'call'results)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec instance (Classes.Decerialize Capnp.Gen.ById.X85150b117366d14b.Operator) where     type Cerial msg Capnp.Gen.ById.X85150b117366d14b.Operator = Capnp.Gen.ById.X85150b117366d14b.Operator
+ examples/gen/lib/Capnp/Gen/Echo/New.hs view
@@ -0,0 +1,94 @@+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE EmptyDataDeriving #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE UndecidableInstances #-}+{-# LANGUAGE OverloadedLabels #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE RecordWildCards #-}+{-# OPTIONS_GHC -Wno-unused-imports #-}+{-# OPTIONS_GHC -Wno-dodgy-exports #-}+{-# OPTIONS_GHC -Wno-unused-matches #-}+{-# OPTIONS_GHC -Wno-orphans #-}+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-}+module Capnp.Gen.Echo.New where+import qualified Capnp.Repr as R+import qualified Capnp.Repr.Parsed as RP+import qualified Capnp.New.Basics as Basics+import qualified GHC.OverloadedLabels as OL+import qualified Capnp.GenHelpers.New as GH+import qualified Capnp.New.Classes as C+import qualified GHC.Generics as Generics+import qualified Capnp.GenHelpers.ReExports.Data.ByteString as BS+import qualified Prelude as Std_+import qualified Data.Word as Std_+import qualified Data.Int as Std_+import Prelude ((<$>), (<*>), (>>=))+data Echo +type instance (R.ReprFor Echo) = (R.Ptr (Std_.Just R.Cap))+instance (C.Parse Echo (GH.Client Echo)) where+    parse  = GH.parseCap+    encode  = GH.encodeCap+instance (GH.HasMethod "echo" Echo Echo'echo'params Echo'echo'results) where+    methodByLabel  = (GH.Method 16940812395455687611 0)+data Echo'echo'params +type instance (R.ReprFor Echo'echo'params) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Echo'echo'params) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate Echo'echo'params) where+    type AllocHint Echo'echo'params = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Echo'echo'params (C.Parsed Echo'echo'params))+instance (C.AllocateList Echo'echo'params) where+    type ListAllocHint Echo'echo'params = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Echo'echo'params (C.Parsed Echo'echo'params))+data instance C.Parsed Echo'echo'params+    = Echo'echo'params +        {query :: (RP.Parsed Basics.Text)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Echo'echo'params))+deriving instance (Std_.Eq (C.Parsed Echo'echo'params))+instance (C.Parse Echo'echo'params (C.Parsed Echo'echo'params)) where+    parse raw_ = (Echo'echo'params <$> (GH.parseField #query raw_))+instance (C.Marshal Echo'echo'params (C.Parsed Echo'echo'params)) where+    marshalInto raw_ Echo'echo'params{..} = (do+        (GH.encodeField #query query raw_)+        (Std_.pure ())+        )+instance (GH.HasField "query" GH.Slot Echo'echo'params Basics.Text) where+    fieldByLabel  = (GH.ptrField 0)+data Echo'echo'results +type instance (R.ReprFor Echo'echo'results) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Echo'echo'results) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate Echo'echo'results) where+    type AllocHint Echo'echo'results = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Echo'echo'results (C.Parsed Echo'echo'results))+instance (C.AllocateList Echo'echo'results) where+    type ListAllocHint Echo'echo'results = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Echo'echo'results (C.Parsed Echo'echo'results))+data instance C.Parsed Echo'echo'results+    = Echo'echo'results +        {reply :: (RP.Parsed Basics.Text)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Echo'echo'results))+deriving instance (Std_.Eq (C.Parsed Echo'echo'results))+instance (C.Parse Echo'echo'results (C.Parsed Echo'echo'results)) where+    parse raw_ = (Echo'echo'results <$> (GH.parseField #reply raw_))+instance (C.Marshal Echo'echo'results (C.Parsed Echo'echo'results)) where+    marshalInto raw_ Echo'echo'results{..} = (do+        (GH.encodeField #reply reply raw_)+        (Std_.pure ())+        )+instance (GH.HasField "reply" GH.Slot Echo'echo'results Basics.Text) where+    fieldByLabel  = (GH.ptrField 0)
examples/gen/lib/Capnp/Gen/Echo/Pure.hs view
@@ -53,7 +53,7 @@     echo'echo :: cap -> (Server.MethodHandler m Echo'echo'params Echo'echo'results)     echo'echo _ = Server.methodUnimplemented export_Echo :: ((STM.MonadSTM m)-               ,(Echo'server_ Std_.IO cap)) => Supervisors.Supervisor -> cap -> (m (Echo))+               ,(Echo'server_ Std_.IO cap)) => Supervisors.Supervisor -> cap -> (m Echo) export_Echo sup_ server_ = (STM.liftSTM (Echo <$> (Rpc.export sup_ Server.ServerOps{handleCast = (Server.unwrap server_)                                                                                    ,handleStop = (Server.shutdown server_)                                                                                    ,handleCall = (\interfaceId_ methodId_ -> case interfaceId_ of@@ -65,24 +65,24 @@                                                                                                    Server.methodUnimplemented                                                                                        _ ->                                                                                            Server.methodUnimplemented)})))-instance (Rpc.IsClient (Echo)) where+instance (Rpc.IsClient Echo) where     fromClient  = Echo     toClient (Echo client) = client-instance (Classes.FromPtr msg (Echo)) where+instance (Classes.FromPtr msg Echo) where     fromPtr  = RpcHelpers.isClientFromPtr-instance (Classes.ToPtr s (Echo)) where+instance (Classes.ToPtr s Echo) where     toPtr  = RpcHelpers.isClientToPtr-instance (Classes.Decerialize (Echo)) where-    type Cerial msg (Echo) = (Capnp.Gen.ById.Xd0a87f36fa0182f5.Echo msg)+instance (Classes.Decerialize Echo) where+    type Cerial msg Echo = (Capnp.Gen.ById.Xd0a87f36fa0182f5.Echo msg)     decerialize (Capnp.Gen.ById.Xd0a87f36fa0182f5.Echo'newtype_ maybeCap) = case maybeCap of         (Std_.Nothing) ->             (Std_.pure (Echo Message.nullClient))         (Std_.Just cap) ->             (Echo <$> (Untyped.getClient cap))-instance (Classes.Cerialize s (Echo)) where+instance (Classes.Cerialize s Echo) where     cerialize msg (Echo client) = (Capnp.Gen.ById.Xd0a87f36fa0182f5.Echo'newtype_ <$> (Std_.Just <$> (Untyped.appendCap msg client)))-instance (Server.Server Std_.IO (Echo))-instance (Echo'server_ Std_.IO (Echo)) where+instance (Server.Server Std_.IO Echo)+instance (Echo'server_ Std_.IO Echo) where     echo'echo (Echo client) = (Rpc.clientMethodHandler 16940812395455687611 0 client) data Echo'echo'params      = Echo'echo'params @@ -90,34 +90,34 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Echo'echo'params)) where+instance (Default.Default Echo'echo'params) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Echo'echo'params)) where+instance (Classes.FromStruct Message.Const Echo'echo'params) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Echo'echo'params)) where-    type Cerial msg (Echo'echo'params) = (Capnp.Gen.ById.Xd0a87f36fa0182f5.Echo'echo'params msg)+instance (Classes.Decerialize Echo'echo'params) where+    type Cerial msg Echo'echo'params = (Capnp.Gen.ById.Xd0a87f36fa0182f5.Echo'echo'params msg)     decerialize raw = (Echo'echo'params <$> ((Capnp.Gen.ById.Xd0a87f36fa0182f5.get_Echo'echo'params'query raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Echo'echo'params)) where+instance (Classes.Marshal s Echo'echo'params) where     marshalInto raw_ value_ = case value_ of         Echo'echo'params{..} ->             (do                 ((Classes.cerialize (Untyped.message raw_) query) >>= (Capnp.Gen.ById.Xd0a87f36fa0182f5.set_Echo'echo'params'query raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Echo'echo'params))-instance (Classes.Cerialize s (V.Vector (Echo'echo'params))) where+instance (Classes.Cerialize s Echo'echo'params)+instance (Classes.Cerialize s (V.Vector Echo'echo'params)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Echo'echo'params)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Echo'echo'params))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Echo'echo'params))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Echo'echo'params)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Echo'echo'params)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Echo'echo'params))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Echo'echo'params))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Echo'echo'params)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Echo'echo'params)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Echo'echo'params))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Echo'echo'params))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Echo'echo'params)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Echo'echo'results      = Echo'echo'results @@ -125,32 +125,32 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Echo'echo'results)) where+instance (Default.Default Echo'echo'results) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Echo'echo'results)) where+instance (Classes.FromStruct Message.Const Echo'echo'results) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Echo'echo'results)) where-    type Cerial msg (Echo'echo'results) = (Capnp.Gen.ById.Xd0a87f36fa0182f5.Echo'echo'results msg)+instance (Classes.Decerialize Echo'echo'results) where+    type Cerial msg Echo'echo'results = (Capnp.Gen.ById.Xd0a87f36fa0182f5.Echo'echo'results msg)     decerialize raw = (Echo'echo'results <$> ((Capnp.Gen.ById.Xd0a87f36fa0182f5.get_Echo'echo'results'reply raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Echo'echo'results)) where+instance (Classes.Marshal s Echo'echo'results) where     marshalInto raw_ value_ = case value_ of         Echo'echo'results{..} ->             (do                 ((Classes.cerialize (Untyped.message raw_) reply) >>= (Capnp.Gen.ById.Xd0a87f36fa0182f5.set_Echo'echo'results'reply raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Echo'echo'results))-instance (Classes.Cerialize s (V.Vector (Echo'echo'results))) where+instance (Classes.Cerialize s Echo'echo'results)+instance (Classes.Cerialize s (V.Vector Echo'echo'results)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Echo'echo'results)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Echo'echo'results))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Echo'echo'results))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Echo'echo'results)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Echo'echo'results)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Echo'echo'results))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Echo'echo'results))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Echo'echo'results)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Echo'echo'results)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Echo'echo'results))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Echo'echo'results))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Echo'echo'results)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec
examples/lib/Examples/Rpc/CalculatorClient.hs view
@@ -1,53 +1,64 @@ {-# LANGUAGE DuplicateRecordFields #-} {-# LANGUAGE NamedFieldPuns        #-}+{-# LANGUAGE OverloadedLabels      #-} module Examples.Rpc.CalculatorClient (main) where -import Network.Simple.TCP (connect)--import qualified Data.Vector as V--import Capnp         (def, defaultLimit)-import Capnp.Rpc     (ConnConfig (..), handleConn, socketTransport, wait, (?))-import Control.Monad (when)+import qualified Capnp.New          as C+import           Capnp.Rpc+    (ConnConfig(..), fromClient, handleConn, socketTransport)+import           Control.Monad      (when)+import           Data.Function      ((&))+import           Data.Functor       ((<&>))+import qualified Data.Vector        as V+import           Network.Simple.TCP (connect) -import Capnp.Gen.Calculator.Pure+import Capnp.Gen.Calculator.New  main :: IO () main = connect "localhost" "4000" $ \(sock, _addr) ->-    handleConn (socketTransport sock defaultLimit) def+    handleConn (socketTransport sock C.defaultLimit) C.def         { debugMode = True         , withBootstrap = Just $ \_sup client -> do-            let calc = Calculator client+            let calc :: C.Client Calculator+                calc = fromClient client -            Calculator'evaluate'results{value} <--                calculator'evaluate calc ? def-                    { expression = Expression'literal 123 }-                    >>= wait-            Value'read'results{value} <- value'read value ? def >>= wait+            value <- calc+                & C.callP #evaluate C.def { expression = Expression $ Expression'literal 123 }+                <&> C.pipe #value+                >>= C.callR #read C.def+                >>= C.waitPipeline+                >>= C.evalLimitT C.defaultLimit . C.parseField #value             assertEq value 123 -            Calculator'getOperator'results{func=add} <--                calculator'getOperator calc ? def { op = Operator'add      } >>= wait-            Calculator'getOperator'results{func=subtract} <--                calculator'getOperator calc ? def { op = Operator'subtract } >>= wait-            Calculator'evaluate'results{value} <- calculator'evaluate calc ? def-                { expression =-                    Expression'call Expression'call'-                        { function = subtract-                        , params = V.fromList-                            [ Expression'call Expression'call'-                                { function = add-                                , params = V.fromList-                                    [ Expression'literal 123-                                    , Expression'literal 45-                                    ]-                                }-                            , Expression'literal 67-                            ]-                        }-                }-                >>= wait-            Value'read'results{value} <- value'read value ? def >>= wait+            let getOp op = calc+                    & C.callP #getOperator C.def { op }+                    <&> C.pipe #func+                    >>= C.asClient++            add <- getOp Operator'add+            subtract <- getOp Operator'subtract++            value <- calc+                & C.callP #evaluate C.def+                    { expression =+                        Expression $ Expression'call Expression'call'+                            { function = subtract+                            , params = V.fromList+                                [ Expression $ Expression'call Expression'call'+                                    { function = add+                                    , params = V.fromList+                                        [ Expression $ Expression'literal 123+                                        , Expression $ Expression'literal 45+                                        ]+                                    }+                                , Expression $ Expression'literal 67+                                ]+                            }+                    }+                <&> C.pipe #value+                >>= C.callR #read C.def+                >>= C.waitPipeline+                >>= C.evalLimitT C.defaultLimit . C.parseField #value             assertEq value 101              putStrLn "PASS"
gen/lib/Capnp/Gen/ById/X86c366a91393f3f8.hs view
@@ -3,6 +3,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.ById.X86c366a91393f3f8(module Capnp.Gen.Capnp.Stream) where import Capnp.Gen.Capnp.Stream import qualified Prelude as Std_
+ gen/lib/Capnp/Gen/ById/X86c366a91393f3f8/New.hs view
@@ -0,0 +1,12 @@+{-# OPTIONS_GHC -Wno-unused-imports #-}+{-# OPTIONS_GHC -Wno-dodgy-exports #-}+{-# OPTIONS_GHC -Wno-unused-matches #-}+{-# OPTIONS_GHC -Wno-orphans #-}+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-}+module Capnp.Gen.ById.X86c366a91393f3f8.New(module Capnp.Gen.Capnp.Stream.New) where+import Capnp.Gen.Capnp.Stream.New+import qualified Prelude as Std_+import qualified Data.Word as Std_+import qualified Data.Int as Std_+import Prelude ((<$>), (<*>), (>>=))
gen/lib/Capnp/Gen/ById/X86c366a91393f3f8/Pure.hs view
@@ -3,6 +3,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.ById.X86c366a91393f3f8.Pure(module Capnp.Gen.Capnp.Stream.Pure) where import Capnp.Gen.Capnp.Stream.Pure import qualified Prelude as Std_
gen/lib/Capnp/Gen/ById/X8ef99297a43a5e34.hs view
@@ -3,6 +3,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.ById.X8ef99297a43a5e34(module Capnp.Gen.Capnp.Compat.Json) where import Capnp.Gen.Capnp.Compat.Json import qualified Prelude as Std_
+ gen/lib/Capnp/Gen/ById/X8ef99297a43a5e34/New.hs view
@@ -0,0 +1,12 @@+{-# OPTIONS_GHC -Wno-unused-imports #-}+{-# OPTIONS_GHC -Wno-dodgy-exports #-}+{-# OPTIONS_GHC -Wno-unused-matches #-}+{-# OPTIONS_GHC -Wno-orphans #-}+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-}+module Capnp.Gen.ById.X8ef99297a43a5e34.New(module Capnp.Gen.Capnp.Compat.Json.New) where+import Capnp.Gen.Capnp.Compat.Json.New+import qualified Prelude as Std_+import qualified Data.Word as Std_+import qualified Data.Int as Std_+import Prelude ((<$>), (<*>), (>>=))
gen/lib/Capnp/Gen/ById/X8ef99297a43a5e34/Pure.hs view
@@ -3,6 +3,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.ById.X8ef99297a43a5e34.Pure(module Capnp.Gen.Capnp.Compat.Json.Pure) where import Capnp.Gen.Capnp.Compat.Json.Pure import qualified Prelude as Std_
gen/lib/Capnp/Gen/ById/Xa184c7885cdaf2a1.hs view
@@ -3,6 +3,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.ById.Xa184c7885cdaf2a1(module Capnp.Gen.Capnp.RpcTwoparty) where import Capnp.Gen.Capnp.RpcTwoparty import qualified Prelude as Std_
+ gen/lib/Capnp/Gen/ById/Xa184c7885cdaf2a1/New.hs view
@@ -0,0 +1,12 @@+{-# OPTIONS_GHC -Wno-unused-imports #-}+{-# OPTIONS_GHC -Wno-dodgy-exports #-}+{-# OPTIONS_GHC -Wno-unused-matches #-}+{-# OPTIONS_GHC -Wno-orphans #-}+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-}+module Capnp.Gen.ById.Xa184c7885cdaf2a1.New(module Capnp.Gen.Capnp.RpcTwoparty.New) where+import Capnp.Gen.Capnp.RpcTwoparty.New+import qualified Prelude as Std_+import qualified Data.Word as Std_+import qualified Data.Int as Std_+import Prelude ((<$>), (<*>), (>>=))
gen/lib/Capnp/Gen/ById/Xa184c7885cdaf2a1/Pure.hs view
@@ -3,6 +3,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.ById.Xa184c7885cdaf2a1.Pure(module Capnp.Gen.Capnp.RpcTwoparty.Pure) where import Capnp.Gen.Capnp.RpcTwoparty.Pure import qualified Prelude as Std_
gen/lib/Capnp/Gen/ById/Xa93fc509624c72d9.hs view
@@ -3,6 +3,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.ById.Xa93fc509624c72d9(module Capnp.Gen.Capnp.Schema) where import Capnp.Gen.Capnp.Schema import qualified Prelude as Std_
+ gen/lib/Capnp/Gen/ById/Xa93fc509624c72d9/New.hs view
@@ -0,0 +1,12 @@+{-# OPTIONS_GHC -Wno-unused-imports #-}+{-# OPTIONS_GHC -Wno-dodgy-exports #-}+{-# OPTIONS_GHC -Wno-unused-matches #-}+{-# OPTIONS_GHC -Wno-orphans #-}+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-}+module Capnp.Gen.ById.Xa93fc509624c72d9.New(module Capnp.Gen.Capnp.Schema.New) where+import Capnp.Gen.Capnp.Schema.New+import qualified Prelude as Std_+import qualified Data.Word as Std_+import qualified Data.Int as Std_+import Prelude ((<$>), (<*>), (>>=))
gen/lib/Capnp/Gen/ById/Xa93fc509624c72d9/Pure.hs view
@@ -3,6 +3,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.ById.Xa93fc509624c72d9.Pure(module Capnp.Gen.Capnp.Schema.Pure) where import Capnp.Gen.Capnp.Schema.Pure import qualified Prelude as Std_
gen/lib/Capnp/Gen/ById/Xb312981b2552a250.hs view
@@ -3,6 +3,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.ById.Xb312981b2552a250(module Capnp.Gen.Capnp.Rpc) where import Capnp.Gen.Capnp.Rpc import qualified Prelude as Std_
+ gen/lib/Capnp/Gen/ById/Xb312981b2552a250/New.hs view
@@ -0,0 +1,12 @@+{-# OPTIONS_GHC -Wno-unused-imports #-}+{-# OPTIONS_GHC -Wno-dodgy-exports #-}+{-# OPTIONS_GHC -Wno-unused-matches #-}+{-# OPTIONS_GHC -Wno-orphans #-}+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-}+module Capnp.Gen.ById.Xb312981b2552a250.New(module Capnp.Gen.Capnp.Rpc.New) where+import Capnp.Gen.Capnp.Rpc.New+import qualified Prelude as Std_+import qualified Data.Word as Std_+import qualified Data.Int as Std_+import Prelude ((<$>), (<*>), (>>=))
gen/lib/Capnp/Gen/ById/Xb312981b2552a250/Pure.hs view
@@ -3,6 +3,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.ById.Xb312981b2552a250.Pure(module Capnp.Gen.Capnp.Rpc.Pure) where import Capnp.Gen.Capnp.Rpc.Pure import qualified Prelude as Std_
gen/lib/Capnp/Gen/ById/Xb8630836983feed7.hs view
@@ -3,6 +3,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.ById.Xb8630836983feed7(module Capnp.Gen.Capnp.Persistent) where import Capnp.Gen.Capnp.Persistent import qualified Prelude as Std_
+ gen/lib/Capnp/Gen/ById/Xb8630836983feed7/New.hs view
@@ -0,0 +1,12 @@+{-# OPTIONS_GHC -Wno-unused-imports #-}+{-# OPTIONS_GHC -Wno-dodgy-exports #-}+{-# OPTIONS_GHC -Wno-unused-matches #-}+{-# OPTIONS_GHC -Wno-orphans #-}+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-}+module Capnp.Gen.ById.Xb8630836983feed7.New(module Capnp.Gen.Capnp.Persistent.New) where+import Capnp.Gen.Capnp.Persistent.New+import qualified Prelude as Std_+import qualified Data.Word as Std_+import qualified Data.Int as Std_+import Prelude ((<$>), (<*>), (>>=))
gen/lib/Capnp/Gen/ById/Xb8630836983feed7/Pure.hs view
@@ -3,6 +3,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.ById.Xb8630836983feed7.Pure(module Capnp.Gen.Capnp.Persistent.Pure) where import Capnp.Gen.Capnp.Persistent.Pure import qualified Prelude as Std_
gen/lib/Capnp/Gen/ById/Xbdf87d7bb8304e81.hs view
@@ -3,6 +3,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.ById.Xbdf87d7bb8304e81(module Capnp.Gen.Capnp.Cxx) where import Capnp.Gen.Capnp.Cxx import qualified Prelude as Std_
+ gen/lib/Capnp/Gen/ById/Xbdf87d7bb8304e81/New.hs view
@@ -0,0 +1,12 @@+{-# OPTIONS_GHC -Wno-unused-imports #-}+{-# OPTIONS_GHC -Wno-dodgy-exports #-}+{-# OPTIONS_GHC -Wno-unused-matches #-}+{-# OPTIONS_GHC -Wno-orphans #-}+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-}+module Capnp.Gen.ById.Xbdf87d7bb8304e81.New(module Capnp.Gen.Capnp.Cxx.New) where+import Capnp.Gen.Capnp.Cxx.New+import qualified Prelude as Std_+import qualified Data.Word as Std_+import qualified Data.Int as Std_+import Prelude ((<$>), (<*>), (>>=))
gen/lib/Capnp/Gen/ById/Xbdf87d7bb8304e81/Pure.hs view
@@ -3,6 +3,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.ById.Xbdf87d7bb8304e81.Pure(module Capnp.Gen.Capnp.Cxx.Pure) where import Capnp.Gen.Capnp.Cxx.Pure import qualified Prelude as Std_
gen/lib/Capnp/Gen/Capnp/Compat/Json.hs view
@@ -10,6 +10,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.Capnp.Compat.Json where import qualified Capnp.Message as Message import qualified Capnp.Untyped as Untyped
+ gen/lib/Capnp/Gen/Capnp/Compat/Json/New.hs view
@@ -0,0 +1,277 @@+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE EmptyDataDeriving #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE UndecidableInstances #-}+{-# LANGUAGE OverloadedLabels #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE RecordWildCards #-}+{-# OPTIONS_GHC -Wno-unused-imports #-}+{-# OPTIONS_GHC -Wno-dodgy-exports #-}+{-# OPTIONS_GHC -Wno-unused-matches #-}+{-# OPTIONS_GHC -Wno-orphans #-}+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-}+module Capnp.Gen.Capnp.Compat.Json.New where+import qualified Capnp.Repr as R+import qualified Capnp.Repr.Parsed as RP+import qualified Capnp.New.Basics as Basics+import qualified GHC.OverloadedLabels as OL+import qualified Capnp.GenHelpers.New as GH+import qualified Capnp.New.Classes as C+import qualified GHC.Generics as Generics+import qualified Capnp.GenHelpers.ReExports.Data.ByteString as BS+import qualified Prelude as Std_+import qualified Data.Word as Std_+import qualified Data.Int as Std_+import Prelude ((<$>), (<*>), (>>=))+data Value +type instance (R.ReprFor Value) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Value) where+    numStructWords  = 2+    numStructPtrs  = 1+instance (C.Allocate Value) where+    type AllocHint Value = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Value (C.Parsed Value))+instance (C.AllocateList Value) where+    type ListAllocHint Value = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Value (C.Parsed Value))+data instance C.Parsed Value+    = Value +        {union' :: (C.Parsed (GH.Which Value))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Value))+deriving instance (Std_.Eq (C.Parsed Value))+instance (C.Parse Value (C.Parsed Value)) where+    parse raw_ = (Value <$> (C.parse (GH.structUnion raw_)))+instance (C.Marshal Value (C.Parsed Value)) where+    marshalInto raw_ Value{..} = (do+        (C.marshalInto (GH.structUnion raw_) union')+        )+instance (GH.HasUnion Value) where+    unionField  = (GH.dataField 0 0 16 0)+    data RawWhich mut_ Value+        = RW_Value'null (R.Raw mut_ ())+        | RW_Value'boolean (R.Raw mut_ Std_.Bool)+        | RW_Value'number (R.Raw mut_ Std_.Double)+        | RW_Value'string (R.Raw mut_ Basics.Text)+        | RW_Value'array (R.Raw mut_ (R.List Value))+        | RW_Value'object (R.Raw mut_ (R.List Value'Field))+        | RW_Value'call (R.Raw mut_ Value'Call)+        | RW_Value'unknown' Std_.Word16+    internalWhich tag_ struct_ = case tag_ of+        0 ->+            (RW_Value'null <$> (GH.readVariant #null struct_))+        1 ->+            (RW_Value'boolean <$> (GH.readVariant #boolean struct_))+        2 ->+            (RW_Value'number <$> (GH.readVariant #number struct_))+        3 ->+            (RW_Value'string <$> (GH.readVariant #string struct_))+        4 ->+            (RW_Value'array <$> (GH.readVariant #array struct_))+        5 ->+            (RW_Value'object <$> (GH.readVariant #object struct_))+        6 ->+            (RW_Value'call <$> (GH.readVariant #call struct_))+        _ ->+            (Std_.pure (RW_Value'unknown' tag_))+    data Which Value+instance (GH.HasVariant "null" GH.Slot Value ()) where+    variantByLabel  = (GH.Variant GH.voidField 0)+instance (GH.HasVariant "boolean" GH.Slot Value Std_.Bool) where+    variantByLabel  = (GH.Variant (GH.dataField 16 0 1 0) 1)+instance (GH.HasVariant "number" GH.Slot Value Std_.Double) where+    variantByLabel  = (GH.Variant (GH.dataField 0 1 64 0) 2)+instance (GH.HasVariant "string" GH.Slot Value Basics.Text) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 3)+instance (GH.HasVariant "array" GH.Slot Value (R.List Value)) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 4)+instance (GH.HasVariant "object" GH.Slot Value (R.List Value'Field)) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 5)+instance (GH.HasVariant "call" GH.Slot Value Value'Call) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 6)+data instance C.Parsed (GH.Which Value)+    = Value'null +    | Value'boolean (RP.Parsed Std_.Bool)+    | Value'number (RP.Parsed Std_.Double)+    | Value'string (RP.Parsed Basics.Text)+    | Value'array (RP.Parsed (R.List Value))+    | Value'object (RP.Parsed (R.List Value'Field))+    | Value'call (RP.Parsed Value'Call)+    | Value'unknown' Std_.Word16+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed (GH.Which Value)))+deriving instance (Std_.Eq (C.Parsed (GH.Which Value)))+instance (C.Parse (GH.Which Value) (C.Parsed (GH.Which Value))) where+    parse raw_ = (do+        rawWhich_ <- (GH.unionWhich raw_)+        case rawWhich_ of+            (RW_Value'null _) ->+                (Std_.pure Value'null)+            (RW_Value'boolean rawArg_) ->+                (Value'boolean <$> (C.parse rawArg_))+            (RW_Value'number rawArg_) ->+                (Value'number <$> (C.parse rawArg_))+            (RW_Value'string rawArg_) ->+                (Value'string <$> (C.parse rawArg_))+            (RW_Value'array rawArg_) ->+                (Value'array <$> (C.parse rawArg_))+            (RW_Value'object rawArg_) ->+                (Value'object <$> (C.parse rawArg_))+            (RW_Value'call rawArg_) ->+                (Value'call <$> (C.parse rawArg_))+            (RW_Value'unknown' tag_) ->+                (Std_.pure (Value'unknown' tag_))+        )+instance (C.Marshal (GH.Which Value) (C.Parsed (GH.Which Value))) where+    marshalInto raw_ parsed_ = case parsed_ of+        (Value'null) ->+            (GH.encodeVariant #null () (GH.unionStruct raw_))+        (Value'boolean arg_) ->+            (GH.encodeVariant #boolean arg_ (GH.unionStruct raw_))+        (Value'number arg_) ->+            (GH.encodeVariant #number arg_ (GH.unionStruct raw_))+        (Value'string arg_) ->+            (GH.encodeVariant #string arg_ (GH.unionStruct raw_))+        (Value'array arg_) ->+            (GH.encodeVariant #array arg_ (GH.unionStruct raw_))+        (Value'object arg_) ->+            (GH.encodeVariant #object arg_ (GH.unionStruct raw_))+        (Value'call arg_) ->+            (GH.encodeVariant #call arg_ (GH.unionStruct raw_))+        (Value'unknown' tag_) ->+            (GH.encodeField GH.unionField tag_ (GH.unionStruct raw_))+data Value'Field +type instance (R.ReprFor Value'Field) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Value'Field) where+    numStructWords  = 0+    numStructPtrs  = 2+instance (C.Allocate Value'Field) where+    type AllocHint Value'Field = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Value'Field (C.Parsed Value'Field))+instance (C.AllocateList Value'Field) where+    type ListAllocHint Value'Field = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Value'Field (C.Parsed Value'Field))+data instance C.Parsed Value'Field+    = Value'Field +        {name :: (RP.Parsed Basics.Text)+        ,value :: (RP.Parsed Value)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Value'Field))+deriving instance (Std_.Eq (C.Parsed Value'Field))+instance (C.Parse Value'Field (C.Parsed Value'Field)) where+    parse raw_ = (Value'Field <$> (GH.parseField #name raw_)+                              <*> (GH.parseField #value raw_))+instance (C.Marshal Value'Field (C.Parsed Value'Field)) where+    marshalInto raw_ Value'Field{..} = (do+        (GH.encodeField #name name raw_)+        (GH.encodeField #value value raw_)+        (Std_.pure ())+        )+instance (GH.HasField "name" GH.Slot Value'Field Basics.Text) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "value" GH.Slot Value'Field Value) where+    fieldByLabel  = (GH.ptrField 1)+data Value'Call +type instance (R.ReprFor Value'Call) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Value'Call) where+    numStructWords  = 0+    numStructPtrs  = 2+instance (C.Allocate Value'Call) where+    type AllocHint Value'Call = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Value'Call (C.Parsed Value'Call))+instance (C.AllocateList Value'Call) where+    type ListAllocHint Value'Call = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Value'Call (C.Parsed Value'Call))+data instance C.Parsed Value'Call+    = Value'Call +        {function :: (RP.Parsed Basics.Text)+        ,params :: (RP.Parsed (R.List Value))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Value'Call))+deriving instance (Std_.Eq (C.Parsed Value'Call))+instance (C.Parse Value'Call (C.Parsed Value'Call)) where+    parse raw_ = (Value'Call <$> (GH.parseField #function raw_)+                             <*> (GH.parseField #params raw_))+instance (C.Marshal Value'Call (C.Parsed Value'Call)) where+    marshalInto raw_ Value'Call{..} = (do+        (GH.encodeField #function function raw_)+        (GH.encodeField #params params raw_)+        (Std_.pure ())+        )+instance (GH.HasField "function" GH.Slot Value'Call Basics.Text) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "params" GH.Slot Value'Call (R.List Value)) where+    fieldByLabel  = (GH.ptrField 1)+data FlattenOptions +type instance (R.ReprFor FlattenOptions) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct FlattenOptions) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate FlattenOptions) where+    type AllocHint FlattenOptions = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc FlattenOptions (C.Parsed FlattenOptions))+instance (C.AllocateList FlattenOptions) where+    type ListAllocHint FlattenOptions = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc FlattenOptions (C.Parsed FlattenOptions))+data instance C.Parsed FlattenOptions+    = FlattenOptions +        {prefix :: (RP.Parsed Basics.Text)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed FlattenOptions))+deriving instance (Std_.Eq (C.Parsed FlattenOptions))+instance (C.Parse FlattenOptions (C.Parsed FlattenOptions)) where+    parse raw_ = (FlattenOptions <$> (GH.parseField #prefix raw_))+instance (C.Marshal FlattenOptions (C.Parsed FlattenOptions)) where+    marshalInto raw_ FlattenOptions{..} = (do+        (GH.encodeField #prefix prefix raw_)+        (Std_.pure ())+        )+instance (GH.HasField "prefix" GH.Slot FlattenOptions Basics.Text) where+    fieldByLabel  = (GH.ptrField 0)+data DiscriminatorOptions +type instance (R.ReprFor DiscriminatorOptions) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct DiscriminatorOptions) where+    numStructWords  = 0+    numStructPtrs  = 2+instance (C.Allocate DiscriminatorOptions) where+    type AllocHint DiscriminatorOptions = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc DiscriminatorOptions (C.Parsed DiscriminatorOptions))+instance (C.AllocateList DiscriminatorOptions) where+    type ListAllocHint DiscriminatorOptions = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc DiscriminatorOptions (C.Parsed DiscriminatorOptions))+data instance C.Parsed DiscriminatorOptions+    = DiscriminatorOptions +        {name :: (RP.Parsed Basics.Text)+        ,valueName :: (RP.Parsed Basics.Text)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed DiscriminatorOptions))+deriving instance (Std_.Eq (C.Parsed DiscriminatorOptions))+instance (C.Parse DiscriminatorOptions (C.Parsed DiscriminatorOptions)) where+    parse raw_ = (DiscriminatorOptions <$> (GH.parseField #name raw_)+                                       <*> (GH.parseField #valueName raw_))+instance (C.Marshal DiscriminatorOptions (C.Parsed DiscriminatorOptions)) where+    marshalInto raw_ DiscriminatorOptions{..} = (do+        (GH.encodeField #name name raw_)+        (GH.encodeField #valueName valueName raw_)+        (Std_.pure ())+        )+instance (GH.HasField "name" GH.Slot DiscriminatorOptions Basics.Text) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "valueName" GH.Slot DiscriminatorOptions Basics.Text) where+    fieldByLabel  = (GH.ptrField 1)
gen/lib/Capnp/Gen/Capnp/Compat/Json/Pure.hs view
@@ -13,6 +13,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.Capnp.Compat.Json.Pure(Value(..)                                        ,Value'Field(..)                                        ,Value'Call(..)@@ -47,12 +48,12 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Value)) where+instance (Default.Default Value) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Value)) where+instance (Classes.FromStruct Message.Const Value) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Value)) where-    type Cerial msg (Value) = (Capnp.Gen.ById.X8ef99297a43a5e34.Value msg)+instance (Classes.Decerialize Value) where+    type Cerial msg Value = (Capnp.Gen.ById.X8ef99297a43a5e34.Value msg)     decerialize raw = (do         raw <- (Capnp.Gen.ById.X8ef99297a43a5e34.get_Value' raw)         case raw of@@ -73,7 +74,7 @@             (Capnp.Gen.ById.X8ef99297a43a5e34.Value'unknown' tag) ->                 (Std_.pure (Value'unknown' tag))         )-instance (Classes.Marshal s (Value)) where+instance (Classes.Marshal s Value) where     marshalInto raw_ value_ = case value_ of         (Value'null) ->             (Capnp.Gen.ById.X8ef99297a43a5e34.set_Value'null raw_)@@ -91,20 +92,20 @@             ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X8ef99297a43a5e34.set_Value'call raw_))         (Value'unknown' tag) ->             (Capnp.Gen.ById.X8ef99297a43a5e34.set_Value'unknown' raw_ tag)-instance (Classes.Cerialize s (Value))-instance (Classes.Cerialize s (V.Vector (Value))) where+instance (Classes.Cerialize s Value)+instance (Classes.Cerialize s (V.Vector Value)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Value)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Value))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Value))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Value)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Value)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Value))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Value))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Value)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Value)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Value))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Value))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Value)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Value'Field      = Value'Field @@ -113,15 +114,15 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Value'Field)) where+instance (Default.Default Value'Field) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Value'Field)) where+instance (Classes.FromStruct Message.Const Value'Field) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Value'Field)) where-    type Cerial msg (Value'Field) = (Capnp.Gen.ById.X8ef99297a43a5e34.Value'Field msg)+instance (Classes.Decerialize Value'Field) where+    type Cerial msg Value'Field = (Capnp.Gen.ById.X8ef99297a43a5e34.Value'Field msg)     decerialize raw = (Value'Field <$> ((Capnp.Gen.ById.X8ef99297a43a5e34.get_Value'Field'name raw) >>= Classes.decerialize)                                    <*> ((Capnp.Gen.ById.X8ef99297a43a5e34.get_Value'Field'value raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Value'Field)) where+instance (Classes.Marshal s Value'Field) where     marshalInto raw_ value_ = case value_ of         Value'Field{..} ->             (do@@ -129,20 +130,20 @@                 ((Classes.cerialize (Untyped.message raw_) value) >>= (Capnp.Gen.ById.X8ef99297a43a5e34.set_Value'Field'value raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Value'Field))-instance (Classes.Cerialize s (V.Vector (Value'Field))) where+instance (Classes.Cerialize s Value'Field)+instance (Classes.Cerialize s (V.Vector Value'Field)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Value'Field)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Value'Field))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Value'Field))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Value'Field)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Value'Field)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Value'Field))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Value'Field))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Value'Field)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Value'Field)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Value'Field))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Value'Field))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Value'Field)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Value'Call      = Value'Call @@ -151,15 +152,15 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Value'Call)) where+instance (Default.Default Value'Call) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Value'Call)) where+instance (Classes.FromStruct Message.Const Value'Call) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Value'Call)) where-    type Cerial msg (Value'Call) = (Capnp.Gen.ById.X8ef99297a43a5e34.Value'Call msg)+instance (Classes.Decerialize Value'Call) where+    type Cerial msg Value'Call = (Capnp.Gen.ById.X8ef99297a43a5e34.Value'Call msg)     decerialize raw = (Value'Call <$> ((Capnp.Gen.ById.X8ef99297a43a5e34.get_Value'Call'function raw) >>= Classes.decerialize)                                   <*> ((Capnp.Gen.ById.X8ef99297a43a5e34.get_Value'Call'params raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Value'Call)) where+instance (Classes.Marshal s Value'Call) where     marshalInto raw_ value_ = case value_ of         Value'Call{..} ->             (do@@ -167,20 +168,20 @@                 ((Classes.cerialize (Untyped.message raw_) params) >>= (Capnp.Gen.ById.X8ef99297a43a5e34.set_Value'Call'params raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Value'Call))-instance (Classes.Cerialize s (V.Vector (Value'Call))) where+instance (Classes.Cerialize s Value'Call)+instance (Classes.Cerialize s (V.Vector Value'Call)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Value'Call)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Value'Call))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Value'Call))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Value'Call)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Value'Call)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Value'Call))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Value'Call))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Value'Call)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Value'Call)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Value'Call))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Value'Call))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Value'Call)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data FlattenOptions      = FlattenOptions @@ -188,34 +189,34 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (FlattenOptions)) where+instance (Default.Default FlattenOptions) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (FlattenOptions)) where+instance (Classes.FromStruct Message.Const FlattenOptions) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (FlattenOptions)) where-    type Cerial msg (FlattenOptions) = (Capnp.Gen.ById.X8ef99297a43a5e34.FlattenOptions msg)+instance (Classes.Decerialize FlattenOptions) where+    type Cerial msg FlattenOptions = (Capnp.Gen.ById.X8ef99297a43a5e34.FlattenOptions msg)     decerialize raw = (FlattenOptions <$> ((Capnp.Gen.ById.X8ef99297a43a5e34.get_FlattenOptions'prefix raw) >>= Classes.decerialize))-instance (Classes.Marshal s (FlattenOptions)) where+instance (Classes.Marshal s FlattenOptions) where     marshalInto raw_ value_ = case value_ of         FlattenOptions{..} ->             (do                 ((Classes.cerialize (Untyped.message raw_) prefix) >>= (Capnp.Gen.ById.X8ef99297a43a5e34.set_FlattenOptions'prefix raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (FlattenOptions))-instance (Classes.Cerialize s (V.Vector (FlattenOptions))) where+instance (Classes.Cerialize s FlattenOptions)+instance (Classes.Cerialize s (V.Vector FlattenOptions)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (FlattenOptions)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector FlattenOptions))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (FlattenOptions))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector FlattenOptions)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (FlattenOptions)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector FlattenOptions))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (FlattenOptions))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector FlattenOptions)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (FlattenOptions)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector FlattenOptions))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (FlattenOptions))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector FlattenOptions)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data DiscriminatorOptions      = DiscriminatorOptions @@ -224,15 +225,15 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (DiscriminatorOptions)) where+instance (Default.Default DiscriminatorOptions) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (DiscriminatorOptions)) where+instance (Classes.FromStruct Message.Const DiscriminatorOptions) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (DiscriminatorOptions)) where-    type Cerial msg (DiscriminatorOptions) = (Capnp.Gen.ById.X8ef99297a43a5e34.DiscriminatorOptions msg)+instance (Classes.Decerialize DiscriminatorOptions) where+    type Cerial msg DiscriminatorOptions = (Capnp.Gen.ById.X8ef99297a43a5e34.DiscriminatorOptions msg)     decerialize raw = (DiscriminatorOptions <$> ((Capnp.Gen.ById.X8ef99297a43a5e34.get_DiscriminatorOptions'name raw) >>= Classes.decerialize)                                             <*> ((Capnp.Gen.ById.X8ef99297a43a5e34.get_DiscriminatorOptions'valueName raw) >>= Classes.decerialize))-instance (Classes.Marshal s (DiscriminatorOptions)) where+instance (Classes.Marshal s DiscriminatorOptions) where     marshalInto raw_ value_ = case value_ of         DiscriminatorOptions{..} ->             (do@@ -240,18 +241,18 @@                 ((Classes.cerialize (Untyped.message raw_) valueName) >>= (Capnp.Gen.ById.X8ef99297a43a5e34.set_DiscriminatorOptions'valueName raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (DiscriminatorOptions))-instance (Classes.Cerialize s (V.Vector (DiscriminatorOptions))) where+instance (Classes.Cerialize s DiscriminatorOptions)+instance (Classes.Cerialize s (V.Vector DiscriminatorOptions)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (DiscriminatorOptions)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector DiscriminatorOptions))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (DiscriminatorOptions))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector DiscriminatorOptions)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (DiscriminatorOptions)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector DiscriminatorOptions))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (DiscriminatorOptions))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector DiscriminatorOptions)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (DiscriminatorOptions)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector DiscriminatorOptions))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (DiscriminatorOptions))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector DiscriminatorOptions)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec
gen/lib/Capnp/Gen/Capnp/Cxx.hs view
@@ -10,6 +10,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.Capnp.Cxx where import qualified Capnp.Message as Message import qualified Capnp.Untyped as Untyped
+ gen/lib/Capnp/Gen/Capnp/Cxx/New.hs view
@@ -0,0 +1,31 @@+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE EmptyDataDeriving #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE UndecidableInstances #-}+{-# LANGUAGE OverloadedLabels #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE RecordWildCards #-}+{-# OPTIONS_GHC -Wno-unused-imports #-}+{-# OPTIONS_GHC -Wno-dodgy-exports #-}+{-# OPTIONS_GHC -Wno-unused-matches #-}+{-# OPTIONS_GHC -Wno-orphans #-}+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-}+module Capnp.Gen.Capnp.Cxx.New where+import qualified Capnp.Repr as R+import qualified Capnp.Repr.Parsed as RP+import qualified Capnp.New.Basics as Basics+import qualified GHC.OverloadedLabels as OL+import qualified Capnp.GenHelpers.New as GH+import qualified Capnp.New.Classes as C+import qualified GHC.Generics as Generics+import qualified Capnp.GenHelpers.ReExports.Data.ByteString as BS+import qualified Prelude as Std_+import qualified Data.Word as Std_+import qualified Data.Int as Std_+import Prelude ((<$>), (<*>), (>>=))
gen/lib/Capnp/Gen/Capnp/Cxx/Pure.hs view
@@ -13,6 +13,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.Capnp.Cxx.Pure() where import qualified Capnp.GenHelpers.ReExports.Data.Vector as V import qualified Capnp.GenHelpers.ReExports.Data.Text as T
gen/lib/Capnp/Gen/Capnp/Persistent.hs view
@@ -10,6 +10,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.Capnp.Persistent where import qualified Capnp.Message as Message import qualified Capnp.Untyped as Untyped
+ gen/lib/Capnp/Gen/Capnp/Persistent/New.hs view
@@ -0,0 +1,266 @@+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE EmptyDataDeriving #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE UndecidableInstances #-}+{-# LANGUAGE OverloadedLabels #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE RecordWildCards #-}+{-# OPTIONS_GHC -Wno-unused-imports #-}+{-# OPTIONS_GHC -Wno-dodgy-exports #-}+{-# OPTIONS_GHC -Wno-unused-matches #-}+{-# OPTIONS_GHC -Wno-orphans #-}+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-}+module Capnp.Gen.Capnp.Persistent.New where+import qualified Capnp.Repr as R+import qualified Capnp.Repr.Parsed as RP+import qualified Capnp.New.Basics as Basics+import qualified GHC.OverloadedLabels as OL+import qualified Capnp.GenHelpers.New as GH+import qualified Capnp.New.Classes as C+import qualified GHC.Generics as Generics+import qualified Capnp.GenHelpers.ReExports.Data.ByteString as BS+import qualified Prelude as Std_+import qualified Data.Word as Std_+import qualified Data.Int as Std_+import Prelude ((<$>), (<*>), (>>=))+data Persistent sturdyRef owner+type instance (R.ReprFor (Persistent sturdyRef owner)) = (R.Ptr (Std_.Just R.Cap))+instance ((GH.TypeParam sturdyRef)+         ,(GH.TypeParam owner)) => (C.Parse (Persistent sturdyRef owner) (GH.Client (Persistent sturdyRef owner))) where+    parse  = GH.parseCap+    encode  = GH.encodeCap+instance ((GH.TypeParam sturdyRef)+         ,(GH.TypeParam owner)) => (GH.HasMethod "save" (Persistent sturdyRef owner) (Persistent'SaveParams sturdyRef owner) (Persistent'SaveResults sturdyRef owner)) where+    methodByLabel  = (GH.Method 14468694717054801553 0)+data Persistent'SaveParams sturdyRef owner+type instance (R.ReprFor (Persistent'SaveParams sturdyRef owner)) = (R.Ptr (Std_.Just R.Struct))+instance ((GH.TypeParam sturdyRef)+         ,(GH.TypeParam owner)) => (C.TypedStruct (Persistent'SaveParams sturdyRef owner)) where+    numStructWords  = 0+    numStructPtrs  = 1+instance ((GH.TypeParam sturdyRef)+         ,(GH.TypeParam owner)) => (C.Allocate (Persistent'SaveParams sturdyRef owner)) where+    type AllocHint (Persistent'SaveParams sturdyRef owner) = ()+    new _ = C.newTypedStruct+instance ((GH.TypeParam sturdyRef)+         ,(GH.TypeParam owner)) => (C.EstimateAlloc (Persistent'SaveParams sturdyRef owner) (C.Parsed (Persistent'SaveParams sturdyRef owner)))+instance ((GH.TypeParam sturdyRef)+         ,(GH.TypeParam owner)) => (C.AllocateList (Persistent'SaveParams sturdyRef owner)) where+    type ListAllocHint (Persistent'SaveParams sturdyRef owner) = Std_.Int+    newList  = C.newTypedStructList+instance ((GH.TypeParam sturdyRef)+         ,(GH.TypeParam owner)) => (C.EstimateListAlloc (Persistent'SaveParams sturdyRef owner) (C.Parsed (Persistent'SaveParams sturdyRef owner)))+data instance C.Parsed (Persistent'SaveParams sturdyRef owner)+    = Persistent'SaveParams +        {sealFor :: (RP.Parsed owner)}+    deriving(Generics.Generic)+deriving instance ((Std_.Show (RP.Parsed sturdyRef))+                  ,(Std_.Show (RP.Parsed owner))) => (Std_.Show (C.Parsed (Persistent'SaveParams sturdyRef owner)))+deriving instance ((Std_.Eq (RP.Parsed sturdyRef))+                  ,(Std_.Eq (RP.Parsed owner))) => (Std_.Eq (C.Parsed (Persistent'SaveParams sturdyRef owner)))+instance ((GH.TypeParam sturdyRef)+         ,(GH.TypeParam owner)) => (C.Parse (Persistent'SaveParams sturdyRef owner) (C.Parsed (Persistent'SaveParams sturdyRef owner))) where+    parse raw_ = (Persistent'SaveParams <$> (GH.parseField #sealFor raw_))+instance ((GH.TypeParam sturdyRef)+         ,(GH.TypeParam owner)) => (C.Marshal (Persistent'SaveParams sturdyRef owner) (C.Parsed (Persistent'SaveParams sturdyRef owner))) where+    marshalInto raw_ Persistent'SaveParams{..} = (do+        (GH.encodeField #sealFor sealFor raw_)+        (Std_.pure ())+        )+instance ((GH.TypeParam sturdyRef)+         ,(GH.TypeParam owner)) => (GH.HasField "sealFor" GH.Slot (Persistent'SaveParams sturdyRef owner) owner) where+    fieldByLabel  = (GH.ptrField 0)+data Persistent'SaveResults sturdyRef owner+type instance (R.ReprFor (Persistent'SaveResults sturdyRef owner)) = (R.Ptr (Std_.Just R.Struct))+instance ((GH.TypeParam sturdyRef)+         ,(GH.TypeParam owner)) => (C.TypedStruct (Persistent'SaveResults sturdyRef owner)) where+    numStructWords  = 0+    numStructPtrs  = 1+instance ((GH.TypeParam sturdyRef)+         ,(GH.TypeParam owner)) => (C.Allocate (Persistent'SaveResults sturdyRef owner)) where+    type AllocHint (Persistent'SaveResults sturdyRef owner) = ()+    new _ = C.newTypedStruct+instance ((GH.TypeParam sturdyRef)+         ,(GH.TypeParam owner)) => (C.EstimateAlloc (Persistent'SaveResults sturdyRef owner) (C.Parsed (Persistent'SaveResults sturdyRef owner)))+instance ((GH.TypeParam sturdyRef)+         ,(GH.TypeParam owner)) => (C.AllocateList (Persistent'SaveResults sturdyRef owner)) where+    type ListAllocHint (Persistent'SaveResults sturdyRef owner) = Std_.Int+    newList  = C.newTypedStructList+instance ((GH.TypeParam sturdyRef)+         ,(GH.TypeParam owner)) => (C.EstimateListAlloc (Persistent'SaveResults sturdyRef owner) (C.Parsed (Persistent'SaveResults sturdyRef owner)))+data instance C.Parsed (Persistent'SaveResults sturdyRef owner)+    = Persistent'SaveResults +        {sturdyRef :: (RP.Parsed sturdyRef)}+    deriving(Generics.Generic)+deriving instance ((Std_.Show (RP.Parsed sturdyRef))+                  ,(Std_.Show (RP.Parsed owner))) => (Std_.Show (C.Parsed (Persistent'SaveResults sturdyRef owner)))+deriving instance ((Std_.Eq (RP.Parsed sturdyRef))+                  ,(Std_.Eq (RP.Parsed owner))) => (Std_.Eq (C.Parsed (Persistent'SaveResults sturdyRef owner)))+instance ((GH.TypeParam sturdyRef)+         ,(GH.TypeParam owner)) => (C.Parse (Persistent'SaveResults sturdyRef owner) (C.Parsed (Persistent'SaveResults sturdyRef owner))) where+    parse raw_ = (Persistent'SaveResults <$> (GH.parseField #sturdyRef raw_))+instance ((GH.TypeParam sturdyRef)+         ,(GH.TypeParam owner)) => (C.Marshal (Persistent'SaveResults sturdyRef owner) (C.Parsed (Persistent'SaveResults sturdyRef owner))) where+    marshalInto raw_ Persistent'SaveResults{..} = (do+        (GH.encodeField #sturdyRef sturdyRef raw_)+        (Std_.pure ())+        )+instance ((GH.TypeParam sturdyRef)+         ,(GH.TypeParam owner)) => (GH.HasField "sturdyRef" GH.Slot (Persistent'SaveResults sturdyRef owner) sturdyRef) where+    fieldByLabel  = (GH.ptrField 0)+data RealmGateway internalRef externalRef internalOwner externalOwner+type instance (R.ReprFor (RealmGateway internalRef externalRef internalOwner externalOwner)) = (R.Ptr (Std_.Just R.Cap))+instance ((GH.TypeParam internalRef)+         ,(GH.TypeParam externalRef)+         ,(GH.TypeParam internalOwner)+         ,(GH.TypeParam externalOwner)) => (C.Parse (RealmGateway internalRef externalRef internalOwner externalOwner) (GH.Client (RealmGateway internalRef externalRef internalOwner externalOwner))) where+    parse  = GH.parseCap+    encode  = GH.encodeCap+instance ((GH.TypeParam internalRef)+         ,(GH.TypeParam externalRef)+         ,(GH.TypeParam internalOwner)+         ,(GH.TypeParam externalOwner)) => (GH.HasMethod "import_" (RealmGateway internalRef externalRef internalOwner externalOwner) (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) (Persistent'SaveResults internalRef internalOwner)) where+    methodByLabel  = (GH.Method 9583422979879616212 0)+instance ((GH.TypeParam internalRef)+         ,(GH.TypeParam externalRef)+         ,(GH.TypeParam internalOwner)+         ,(GH.TypeParam externalOwner)) => (GH.HasMethod "export" (RealmGateway internalRef externalRef internalOwner externalOwner) (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) (Persistent'SaveResults externalRef externalOwner)) where+    methodByLabel  = (GH.Method 9583422979879616212 1)+data RealmGateway'import'params internalRef externalRef internalOwner externalOwner+type instance (R.ReprFor (RealmGateway'import'params internalRef externalRef internalOwner externalOwner)) = (R.Ptr (Std_.Just R.Struct))+instance ((GH.TypeParam internalRef)+         ,(GH.TypeParam externalRef)+         ,(GH.TypeParam internalOwner)+         ,(GH.TypeParam externalOwner)) => (C.TypedStruct (RealmGateway'import'params internalRef externalRef internalOwner externalOwner)) where+    numStructWords  = 0+    numStructPtrs  = 2+instance ((GH.TypeParam internalRef)+         ,(GH.TypeParam externalRef)+         ,(GH.TypeParam internalOwner)+         ,(GH.TypeParam externalOwner)) => (C.Allocate (RealmGateway'import'params internalRef externalRef internalOwner externalOwner)) where+    type AllocHint (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) = ()+    new _ = C.newTypedStruct+instance ((GH.TypeParam internalRef)+         ,(GH.TypeParam externalRef)+         ,(GH.TypeParam internalOwner)+         ,(GH.TypeParam externalOwner)) => (C.EstimateAlloc (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) (C.Parsed (RealmGateway'import'params internalRef externalRef internalOwner externalOwner)))+instance ((GH.TypeParam internalRef)+         ,(GH.TypeParam externalRef)+         ,(GH.TypeParam internalOwner)+         ,(GH.TypeParam externalOwner)) => (C.AllocateList (RealmGateway'import'params internalRef externalRef internalOwner externalOwner)) where+    type ListAllocHint (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) = Std_.Int+    newList  = C.newTypedStructList+instance ((GH.TypeParam internalRef)+         ,(GH.TypeParam externalRef)+         ,(GH.TypeParam internalOwner)+         ,(GH.TypeParam externalOwner)) => (C.EstimateListAlloc (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) (C.Parsed (RealmGateway'import'params internalRef externalRef internalOwner externalOwner)))+data instance C.Parsed (RealmGateway'import'params internalRef externalRef internalOwner externalOwner)+    = RealmGateway'import'params +        {cap :: (RP.Parsed (Persistent externalRef externalOwner))+        ,params :: (RP.Parsed (Persistent'SaveParams internalRef internalOwner))}+    deriving(Generics.Generic)+deriving instance ((Std_.Show (RP.Parsed internalRef))+                  ,(Std_.Show (RP.Parsed externalRef))+                  ,(Std_.Show (RP.Parsed internalOwner))+                  ,(Std_.Show (RP.Parsed externalOwner))) => (Std_.Show (C.Parsed (RealmGateway'import'params internalRef externalRef internalOwner externalOwner)))+deriving instance ((Std_.Eq (RP.Parsed internalRef))+                  ,(Std_.Eq (RP.Parsed externalRef))+                  ,(Std_.Eq (RP.Parsed internalOwner))+                  ,(Std_.Eq (RP.Parsed externalOwner))) => (Std_.Eq (C.Parsed (RealmGateway'import'params internalRef externalRef internalOwner externalOwner)))+instance ((GH.TypeParam internalRef)+         ,(GH.TypeParam externalRef)+         ,(GH.TypeParam internalOwner)+         ,(GH.TypeParam externalOwner)) => (C.Parse (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) (C.Parsed (RealmGateway'import'params internalRef externalRef internalOwner externalOwner))) where+    parse raw_ = (RealmGateway'import'params <$> (GH.parseField #cap raw_)+                                             <*> (GH.parseField #params raw_))+instance ((GH.TypeParam internalRef)+         ,(GH.TypeParam externalRef)+         ,(GH.TypeParam internalOwner)+         ,(GH.TypeParam externalOwner)) => (C.Marshal (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) (C.Parsed (RealmGateway'import'params internalRef externalRef internalOwner externalOwner))) where+    marshalInto raw_ RealmGateway'import'params{..} = (do+        (GH.encodeField #cap cap raw_)+        (GH.encodeField #params params raw_)+        (Std_.pure ())+        )+instance ((GH.TypeParam internalRef)+         ,(GH.TypeParam externalRef)+         ,(GH.TypeParam internalOwner)+         ,(GH.TypeParam externalOwner)) => (GH.HasField "cap" GH.Slot (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) (Persistent externalRef externalOwner)) where+    fieldByLabel  = (GH.ptrField 0)+instance ((GH.TypeParam internalRef)+         ,(GH.TypeParam externalRef)+         ,(GH.TypeParam internalOwner)+         ,(GH.TypeParam externalOwner)) => (GH.HasField "params" GH.Slot (RealmGateway'import'params internalRef externalRef internalOwner externalOwner) (Persistent'SaveParams internalRef internalOwner)) where+    fieldByLabel  = (GH.ptrField 1)+data RealmGateway'export'params internalRef externalRef internalOwner externalOwner+type instance (R.ReprFor (RealmGateway'export'params internalRef externalRef internalOwner externalOwner)) = (R.Ptr (Std_.Just R.Struct))+instance ((GH.TypeParam internalRef)+         ,(GH.TypeParam externalRef)+         ,(GH.TypeParam internalOwner)+         ,(GH.TypeParam externalOwner)) => (C.TypedStruct (RealmGateway'export'params internalRef externalRef internalOwner externalOwner)) where+    numStructWords  = 0+    numStructPtrs  = 2+instance ((GH.TypeParam internalRef)+         ,(GH.TypeParam externalRef)+         ,(GH.TypeParam internalOwner)+         ,(GH.TypeParam externalOwner)) => (C.Allocate (RealmGateway'export'params internalRef externalRef internalOwner externalOwner)) where+    type AllocHint (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) = ()+    new _ = C.newTypedStruct+instance ((GH.TypeParam internalRef)+         ,(GH.TypeParam externalRef)+         ,(GH.TypeParam internalOwner)+         ,(GH.TypeParam externalOwner)) => (C.EstimateAlloc (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) (C.Parsed (RealmGateway'export'params internalRef externalRef internalOwner externalOwner)))+instance ((GH.TypeParam internalRef)+         ,(GH.TypeParam externalRef)+         ,(GH.TypeParam internalOwner)+         ,(GH.TypeParam externalOwner)) => (C.AllocateList (RealmGateway'export'params internalRef externalRef internalOwner externalOwner)) where+    type ListAllocHint (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) = Std_.Int+    newList  = C.newTypedStructList+instance ((GH.TypeParam internalRef)+         ,(GH.TypeParam externalRef)+         ,(GH.TypeParam internalOwner)+         ,(GH.TypeParam externalOwner)) => (C.EstimateListAlloc (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) (C.Parsed (RealmGateway'export'params internalRef externalRef internalOwner externalOwner)))+data instance C.Parsed (RealmGateway'export'params internalRef externalRef internalOwner externalOwner)+    = RealmGateway'export'params +        {cap :: (RP.Parsed (Persistent internalRef internalOwner))+        ,params :: (RP.Parsed (Persistent'SaveParams externalRef externalOwner))}+    deriving(Generics.Generic)+deriving instance ((Std_.Show (RP.Parsed internalRef))+                  ,(Std_.Show (RP.Parsed externalRef))+                  ,(Std_.Show (RP.Parsed internalOwner))+                  ,(Std_.Show (RP.Parsed externalOwner))) => (Std_.Show (C.Parsed (RealmGateway'export'params internalRef externalRef internalOwner externalOwner)))+deriving instance ((Std_.Eq (RP.Parsed internalRef))+                  ,(Std_.Eq (RP.Parsed externalRef))+                  ,(Std_.Eq (RP.Parsed internalOwner))+                  ,(Std_.Eq (RP.Parsed externalOwner))) => (Std_.Eq (C.Parsed (RealmGateway'export'params internalRef externalRef internalOwner externalOwner)))+instance ((GH.TypeParam internalRef)+         ,(GH.TypeParam externalRef)+         ,(GH.TypeParam internalOwner)+         ,(GH.TypeParam externalOwner)) => (C.Parse (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) (C.Parsed (RealmGateway'export'params internalRef externalRef internalOwner externalOwner))) where+    parse raw_ = (RealmGateway'export'params <$> (GH.parseField #cap raw_)+                                             <*> (GH.parseField #params raw_))+instance ((GH.TypeParam internalRef)+         ,(GH.TypeParam externalRef)+         ,(GH.TypeParam internalOwner)+         ,(GH.TypeParam externalOwner)) => (C.Marshal (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) (C.Parsed (RealmGateway'export'params internalRef externalRef internalOwner externalOwner))) where+    marshalInto raw_ RealmGateway'export'params{..} = (do+        (GH.encodeField #cap cap raw_)+        (GH.encodeField #params params raw_)+        (Std_.pure ())+        )+instance ((GH.TypeParam internalRef)+         ,(GH.TypeParam externalRef)+         ,(GH.TypeParam internalOwner)+         ,(GH.TypeParam externalOwner)) => (GH.HasField "cap" GH.Slot (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) (Persistent internalRef internalOwner)) where+    fieldByLabel  = (GH.ptrField 0)+instance ((GH.TypeParam internalRef)+         ,(GH.TypeParam externalRef)+         ,(GH.TypeParam internalOwner)+         ,(GH.TypeParam externalOwner)) => (GH.HasField "params" GH.Slot (RealmGateway'export'params internalRef externalRef internalOwner externalOwner) (Persistent'SaveParams externalRef externalOwner)) where+    fieldByLabel  = (GH.ptrField 1)
gen/lib/Capnp/Gen/Capnp/Persistent/Pure.hs view
@@ -13,6 +13,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.Capnp.Persistent.Pure(Persistent(..)                                       ,Persistent'server_(..)                                       ,export_Persistent
gen/lib/Capnp/Gen/Capnp/Rpc.hs view
@@ -10,6 +10,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.Capnp.Rpc where import qualified Capnp.Message as Message import qualified Capnp.Untyped as Untyped
+ gen/lib/Capnp/Gen/Capnp/Rpc/New.hs view
@@ -0,0 +1,1325 @@+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE EmptyDataDeriving #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE UndecidableInstances #-}+{-# LANGUAGE OverloadedLabels #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE RecordWildCards #-}+{-# OPTIONS_GHC -Wno-unused-imports #-}+{-# OPTIONS_GHC -Wno-dodgy-exports #-}+{-# OPTIONS_GHC -Wno-unused-matches #-}+{-# OPTIONS_GHC -Wno-orphans #-}+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-}+module Capnp.Gen.Capnp.Rpc.New where+import qualified Capnp.Repr as R+import qualified Capnp.Repr.Parsed as RP+import qualified Capnp.New.Basics as Basics+import qualified GHC.OverloadedLabels as OL+import qualified Capnp.GenHelpers.New as GH+import qualified Capnp.New.Classes as C+import qualified GHC.Generics as Generics+import qualified Capnp.GenHelpers.ReExports.Data.ByteString as BS+import qualified Prelude as Std_+import qualified Data.Word as Std_+import qualified Data.Int as Std_+import Prelude ((<$>), (<*>), (>>=))+data Message +type instance (R.ReprFor Message) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Message) where+    numStructWords  = 1+    numStructPtrs  = 1+instance (C.Allocate Message) where+    type AllocHint Message = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Message (C.Parsed Message))+instance (C.AllocateList Message) where+    type ListAllocHint Message = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Message (C.Parsed Message))+data instance C.Parsed Message+    = Message +        {union' :: (C.Parsed (GH.Which Message))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Message))+deriving instance (Std_.Eq (C.Parsed Message))+instance (C.Parse Message (C.Parsed Message)) where+    parse raw_ = (Message <$> (C.parse (GH.structUnion raw_)))+instance (C.Marshal Message (C.Parsed Message)) where+    marshalInto raw_ Message{..} = (do+        (C.marshalInto (GH.structUnion raw_) union')+        )+instance (GH.HasUnion Message) where+    unionField  = (GH.dataField 0 0 16 0)+    data RawWhich mut_ Message+        = RW_Message'unimplemented (R.Raw mut_ Message)+        | RW_Message'abort (R.Raw mut_ Exception)+        | RW_Message'call (R.Raw mut_ Call)+        | RW_Message'return (R.Raw mut_ Return)+        | RW_Message'finish (R.Raw mut_ Finish)+        | RW_Message'resolve (R.Raw mut_ Resolve)+        | RW_Message'release (R.Raw mut_ Release)+        | RW_Message'obsoleteSave (R.Raw mut_ Basics.AnyPointer)+        | RW_Message'bootstrap (R.Raw mut_ Bootstrap)+        | RW_Message'obsoleteDelete (R.Raw mut_ Basics.AnyPointer)+        | RW_Message'provide (R.Raw mut_ Provide)+        | RW_Message'accept (R.Raw mut_ Accept)+        | RW_Message'join (R.Raw mut_ Join)+        | RW_Message'disembargo (R.Raw mut_ Disembargo)+        | RW_Message'unknown' Std_.Word16+    internalWhich tag_ struct_ = case tag_ of+        0 ->+            (RW_Message'unimplemented <$> (GH.readVariant #unimplemented struct_))+        1 ->+            (RW_Message'abort <$> (GH.readVariant #abort struct_))+        2 ->+            (RW_Message'call <$> (GH.readVariant #call struct_))+        3 ->+            (RW_Message'return <$> (GH.readVariant #return struct_))+        4 ->+            (RW_Message'finish <$> (GH.readVariant #finish struct_))+        5 ->+            (RW_Message'resolve <$> (GH.readVariant #resolve struct_))+        6 ->+            (RW_Message'release <$> (GH.readVariant #release struct_))+        7 ->+            (RW_Message'obsoleteSave <$> (GH.readVariant #obsoleteSave struct_))+        8 ->+            (RW_Message'bootstrap <$> (GH.readVariant #bootstrap struct_))+        9 ->+            (RW_Message'obsoleteDelete <$> (GH.readVariant #obsoleteDelete struct_))+        10 ->+            (RW_Message'provide <$> (GH.readVariant #provide struct_))+        11 ->+            (RW_Message'accept <$> (GH.readVariant #accept struct_))+        12 ->+            (RW_Message'join <$> (GH.readVariant #join struct_))+        13 ->+            (RW_Message'disembargo <$> (GH.readVariant #disembargo struct_))+        _ ->+            (Std_.pure (RW_Message'unknown' tag_))+    data Which Message+instance (GH.HasVariant "unimplemented" GH.Slot Message Message) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 0)+instance (GH.HasVariant "abort" GH.Slot Message Exception) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 1)+instance (GH.HasVariant "call" GH.Slot Message Call) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 2)+instance (GH.HasVariant "return" GH.Slot Message Return) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 3)+instance (GH.HasVariant "finish" GH.Slot Message Finish) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 4)+instance (GH.HasVariant "resolve" GH.Slot Message Resolve) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 5)+instance (GH.HasVariant "release" GH.Slot Message Release) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 6)+instance (GH.HasVariant "obsoleteSave" GH.Slot Message Basics.AnyPointer) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 7)+instance (GH.HasVariant "bootstrap" GH.Slot Message Bootstrap) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 8)+instance (GH.HasVariant "obsoleteDelete" GH.Slot Message Basics.AnyPointer) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 9)+instance (GH.HasVariant "provide" GH.Slot Message Provide) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 10)+instance (GH.HasVariant "accept" GH.Slot Message Accept) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 11)+instance (GH.HasVariant "join" GH.Slot Message Join) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 12)+instance (GH.HasVariant "disembargo" GH.Slot Message Disembargo) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 13)+data instance C.Parsed (GH.Which Message)+    = Message'unimplemented (RP.Parsed Message)+    | Message'abort (RP.Parsed Exception)+    | Message'call (RP.Parsed Call)+    | Message'return (RP.Parsed Return)+    | Message'finish (RP.Parsed Finish)+    | Message'resolve (RP.Parsed Resolve)+    | Message'release (RP.Parsed Release)+    | Message'obsoleteSave (RP.Parsed Basics.AnyPointer)+    | Message'bootstrap (RP.Parsed Bootstrap)+    | Message'obsoleteDelete (RP.Parsed Basics.AnyPointer)+    | Message'provide (RP.Parsed Provide)+    | Message'accept (RP.Parsed Accept)+    | Message'join (RP.Parsed Join)+    | Message'disembargo (RP.Parsed Disembargo)+    | Message'unknown' Std_.Word16+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed (GH.Which Message)))+deriving instance (Std_.Eq (C.Parsed (GH.Which Message)))+instance (C.Parse (GH.Which Message) (C.Parsed (GH.Which Message))) where+    parse raw_ = (do+        rawWhich_ <- (GH.unionWhich raw_)+        case rawWhich_ of+            (RW_Message'unimplemented rawArg_) ->+                (Message'unimplemented <$> (C.parse rawArg_))+            (RW_Message'abort rawArg_) ->+                (Message'abort <$> (C.parse rawArg_))+            (RW_Message'call rawArg_) ->+                (Message'call <$> (C.parse rawArg_))+            (RW_Message'return rawArg_) ->+                (Message'return <$> (C.parse rawArg_))+            (RW_Message'finish rawArg_) ->+                (Message'finish <$> (C.parse rawArg_))+            (RW_Message'resolve rawArg_) ->+                (Message'resolve <$> (C.parse rawArg_))+            (RW_Message'release rawArg_) ->+                (Message'release <$> (C.parse rawArg_))+            (RW_Message'obsoleteSave rawArg_) ->+                (Message'obsoleteSave <$> (C.parse rawArg_))+            (RW_Message'bootstrap rawArg_) ->+                (Message'bootstrap <$> (C.parse rawArg_))+            (RW_Message'obsoleteDelete rawArg_) ->+                (Message'obsoleteDelete <$> (C.parse rawArg_))+            (RW_Message'provide rawArg_) ->+                (Message'provide <$> (C.parse rawArg_))+            (RW_Message'accept rawArg_) ->+                (Message'accept <$> (C.parse rawArg_))+            (RW_Message'join rawArg_) ->+                (Message'join <$> (C.parse rawArg_))+            (RW_Message'disembargo rawArg_) ->+                (Message'disembargo <$> (C.parse rawArg_))+            (RW_Message'unknown' tag_) ->+                (Std_.pure (Message'unknown' tag_))+        )+instance (C.Marshal (GH.Which Message) (C.Parsed (GH.Which Message))) where+    marshalInto raw_ parsed_ = case parsed_ of+        (Message'unimplemented arg_) ->+            (GH.encodeVariant #unimplemented arg_ (GH.unionStruct raw_))+        (Message'abort arg_) ->+            (GH.encodeVariant #abort arg_ (GH.unionStruct raw_))+        (Message'call arg_) ->+            (GH.encodeVariant #call arg_ (GH.unionStruct raw_))+        (Message'return arg_) ->+            (GH.encodeVariant #return arg_ (GH.unionStruct raw_))+        (Message'finish arg_) ->+            (GH.encodeVariant #finish arg_ (GH.unionStruct raw_))+        (Message'resolve arg_) ->+            (GH.encodeVariant #resolve arg_ (GH.unionStruct raw_))+        (Message'release arg_) ->+            (GH.encodeVariant #release arg_ (GH.unionStruct raw_))+        (Message'obsoleteSave arg_) ->+            (GH.encodeVariant #obsoleteSave arg_ (GH.unionStruct raw_))+        (Message'bootstrap arg_) ->+            (GH.encodeVariant #bootstrap arg_ (GH.unionStruct raw_))+        (Message'obsoleteDelete arg_) ->+            (GH.encodeVariant #obsoleteDelete arg_ (GH.unionStruct raw_))+        (Message'provide arg_) ->+            (GH.encodeVariant #provide arg_ (GH.unionStruct raw_))+        (Message'accept arg_) ->+            (GH.encodeVariant #accept arg_ (GH.unionStruct raw_))+        (Message'join arg_) ->+            (GH.encodeVariant #join arg_ (GH.unionStruct raw_))+        (Message'disembargo arg_) ->+            (GH.encodeVariant #disembargo arg_ (GH.unionStruct raw_))+        (Message'unknown' tag_) ->+            (GH.encodeField GH.unionField tag_ (GH.unionStruct raw_))+data Bootstrap +type instance (R.ReprFor Bootstrap) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Bootstrap) where+    numStructWords  = 1+    numStructPtrs  = 1+instance (C.Allocate Bootstrap) where+    type AllocHint Bootstrap = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Bootstrap (C.Parsed Bootstrap))+instance (C.AllocateList Bootstrap) where+    type ListAllocHint Bootstrap = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Bootstrap (C.Parsed Bootstrap))+data instance C.Parsed Bootstrap+    = Bootstrap +        {questionId :: (RP.Parsed Std_.Word32)+        ,deprecatedObjectId :: (RP.Parsed Basics.AnyPointer)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Bootstrap))+deriving instance (Std_.Eq (C.Parsed Bootstrap))+instance (C.Parse Bootstrap (C.Parsed Bootstrap)) where+    parse raw_ = (Bootstrap <$> (GH.parseField #questionId raw_)+                            <*> (GH.parseField #deprecatedObjectId raw_))+instance (C.Marshal Bootstrap (C.Parsed Bootstrap)) where+    marshalInto raw_ Bootstrap{..} = (do+        (GH.encodeField #questionId questionId raw_)+        (GH.encodeField #deprecatedObjectId deprecatedObjectId raw_)+        (Std_.pure ())+        )+instance (GH.HasField "questionId" GH.Slot Bootstrap Std_.Word32) where+    fieldByLabel  = (GH.dataField 0 0 32 0)+instance (GH.HasField "deprecatedObjectId" GH.Slot Bootstrap Basics.AnyPointer) where+    fieldByLabel  = (GH.ptrField 0)+data Call +type instance (R.ReprFor Call) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Call) where+    numStructWords  = 3+    numStructPtrs  = 3+instance (C.Allocate Call) where+    type AllocHint Call = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Call (C.Parsed Call))+instance (C.AllocateList Call) where+    type ListAllocHint Call = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Call (C.Parsed Call))+data instance C.Parsed Call+    = Call +        {questionId :: (RP.Parsed Std_.Word32)+        ,target :: (RP.Parsed MessageTarget)+        ,interfaceId :: (RP.Parsed Std_.Word64)+        ,methodId :: (RP.Parsed Std_.Word16)+        ,params :: (RP.Parsed Payload)+        ,sendResultsTo :: (RP.Parsed Call'sendResultsTo)+        ,allowThirdPartyTailCall :: (RP.Parsed Std_.Bool)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Call))+deriving instance (Std_.Eq (C.Parsed Call))+instance (C.Parse Call (C.Parsed Call)) where+    parse raw_ = (Call <$> (GH.parseField #questionId raw_)+                       <*> (GH.parseField #target raw_)+                       <*> (GH.parseField #interfaceId raw_)+                       <*> (GH.parseField #methodId raw_)+                       <*> (GH.parseField #params raw_)+                       <*> (GH.parseField #sendResultsTo raw_)+                       <*> (GH.parseField #allowThirdPartyTailCall raw_))+instance (C.Marshal Call (C.Parsed Call)) where+    marshalInto raw_ Call{..} = (do+        (GH.encodeField #questionId questionId raw_)+        (GH.encodeField #target target raw_)+        (GH.encodeField #interfaceId interfaceId raw_)+        (GH.encodeField #methodId methodId raw_)+        (GH.encodeField #params params raw_)+        (do+            group_ <- (GH.readField #sendResultsTo raw_)+            (C.marshalInto group_ sendResultsTo)+            )+        (GH.encodeField #allowThirdPartyTailCall allowThirdPartyTailCall raw_)+        (Std_.pure ())+        )+instance (GH.HasField "questionId" GH.Slot Call Std_.Word32) where+    fieldByLabel  = (GH.dataField 0 0 32 0)+instance (GH.HasField "target" GH.Slot Call MessageTarget) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "interfaceId" GH.Slot Call Std_.Word64) where+    fieldByLabel  = (GH.dataField 0 1 64 0)+instance (GH.HasField "methodId" GH.Slot Call Std_.Word16) where+    fieldByLabel  = (GH.dataField 32 0 16 0)+instance (GH.HasField "params" GH.Slot Call Payload) where+    fieldByLabel  = (GH.ptrField 1)+instance (GH.HasField "sendResultsTo" GH.Group Call Call'sendResultsTo) where+    fieldByLabel  = GH.groupField+instance (GH.HasField "allowThirdPartyTailCall" GH.Slot Call Std_.Bool) where+    fieldByLabel  = (GH.dataField 0 2 1 0)+data Call'sendResultsTo +type instance (R.ReprFor Call'sendResultsTo) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Call'sendResultsTo) where+    numStructWords  = 3+    numStructPtrs  = 3+instance (C.Allocate Call'sendResultsTo) where+    type AllocHint Call'sendResultsTo = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Call'sendResultsTo (C.Parsed Call'sendResultsTo))+instance (C.AllocateList Call'sendResultsTo) where+    type ListAllocHint Call'sendResultsTo = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Call'sendResultsTo (C.Parsed Call'sendResultsTo))+data instance C.Parsed Call'sendResultsTo+    = Call'sendResultsTo' +        {union' :: (C.Parsed (GH.Which Call'sendResultsTo))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Call'sendResultsTo))+deriving instance (Std_.Eq (C.Parsed Call'sendResultsTo))+instance (C.Parse Call'sendResultsTo (C.Parsed Call'sendResultsTo)) where+    parse raw_ = (Call'sendResultsTo' <$> (C.parse (GH.structUnion raw_)))+instance (C.Marshal Call'sendResultsTo (C.Parsed Call'sendResultsTo)) where+    marshalInto raw_ Call'sendResultsTo'{..} = (do+        (C.marshalInto (GH.structUnion raw_) union')+        )+instance (GH.HasUnion Call'sendResultsTo) where+    unionField  = (GH.dataField 48 0 16 0)+    data RawWhich mut_ Call'sendResultsTo+        = RW_Call'sendResultsTo'caller (R.Raw mut_ ())+        | RW_Call'sendResultsTo'yourself (R.Raw mut_ ())+        | RW_Call'sendResultsTo'thirdParty (R.Raw mut_ Basics.AnyPointer)+        | RW_Call'sendResultsTo'unknown' Std_.Word16+    internalWhich tag_ struct_ = case tag_ of+        0 ->+            (RW_Call'sendResultsTo'caller <$> (GH.readVariant #caller struct_))+        1 ->+            (RW_Call'sendResultsTo'yourself <$> (GH.readVariant #yourself struct_))+        2 ->+            (RW_Call'sendResultsTo'thirdParty <$> (GH.readVariant #thirdParty struct_))+        _ ->+            (Std_.pure (RW_Call'sendResultsTo'unknown' tag_))+    data Which Call'sendResultsTo+instance (GH.HasVariant "caller" GH.Slot Call'sendResultsTo ()) where+    variantByLabel  = (GH.Variant GH.voidField 0)+instance (GH.HasVariant "yourself" GH.Slot Call'sendResultsTo ()) where+    variantByLabel  = (GH.Variant GH.voidField 1)+instance (GH.HasVariant "thirdParty" GH.Slot Call'sendResultsTo Basics.AnyPointer) where+    variantByLabel  = (GH.Variant (GH.ptrField 2) 2)+data instance C.Parsed (GH.Which Call'sendResultsTo)+    = Call'sendResultsTo'caller +    | Call'sendResultsTo'yourself +    | Call'sendResultsTo'thirdParty (RP.Parsed Basics.AnyPointer)+    | Call'sendResultsTo'unknown' Std_.Word16+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed (GH.Which Call'sendResultsTo)))+deriving instance (Std_.Eq (C.Parsed (GH.Which Call'sendResultsTo)))+instance (C.Parse (GH.Which Call'sendResultsTo) (C.Parsed (GH.Which Call'sendResultsTo))) where+    parse raw_ = (do+        rawWhich_ <- (GH.unionWhich raw_)+        case rawWhich_ of+            (RW_Call'sendResultsTo'caller _) ->+                (Std_.pure Call'sendResultsTo'caller)+            (RW_Call'sendResultsTo'yourself _) ->+                (Std_.pure Call'sendResultsTo'yourself)+            (RW_Call'sendResultsTo'thirdParty rawArg_) ->+                (Call'sendResultsTo'thirdParty <$> (C.parse rawArg_))+            (RW_Call'sendResultsTo'unknown' tag_) ->+                (Std_.pure (Call'sendResultsTo'unknown' tag_))+        )+instance (C.Marshal (GH.Which Call'sendResultsTo) (C.Parsed (GH.Which Call'sendResultsTo))) where+    marshalInto raw_ parsed_ = case parsed_ of+        (Call'sendResultsTo'caller) ->+            (GH.encodeVariant #caller () (GH.unionStruct raw_))+        (Call'sendResultsTo'yourself) ->+            (GH.encodeVariant #yourself () (GH.unionStruct raw_))+        (Call'sendResultsTo'thirdParty arg_) ->+            (GH.encodeVariant #thirdParty arg_ (GH.unionStruct raw_))+        (Call'sendResultsTo'unknown' tag_) ->+            (GH.encodeField GH.unionField tag_ (GH.unionStruct raw_))+data Return +type instance (R.ReprFor Return) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Return) where+    numStructWords  = 2+    numStructPtrs  = 1+instance (C.Allocate Return) where+    type AllocHint Return = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Return (C.Parsed Return))+instance (C.AllocateList Return) where+    type ListAllocHint Return = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Return (C.Parsed Return))+data instance C.Parsed Return+    = Return +        {answerId :: (RP.Parsed Std_.Word32)+        ,releaseParamCaps :: (RP.Parsed Std_.Bool)+        ,union' :: (C.Parsed (GH.Which Return))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Return))+deriving instance (Std_.Eq (C.Parsed Return))+instance (C.Parse Return (C.Parsed Return)) where+    parse raw_ = (Return <$> (GH.parseField #answerId raw_)+                         <*> (GH.parseField #releaseParamCaps raw_)+                         <*> (C.parse (GH.structUnion raw_)))+instance (C.Marshal Return (C.Parsed Return)) where+    marshalInto raw_ Return{..} = (do+        (GH.encodeField #answerId answerId raw_)+        (GH.encodeField #releaseParamCaps releaseParamCaps raw_)+        (C.marshalInto (GH.structUnion raw_) union')+        )+instance (GH.HasUnion Return) where+    unionField  = (GH.dataField 48 0 16 0)+    data RawWhich mut_ Return+        = RW_Return'results (R.Raw mut_ Payload)+        | RW_Return'exception (R.Raw mut_ Exception)+        | RW_Return'canceled (R.Raw mut_ ())+        | RW_Return'resultsSentElsewhere (R.Raw mut_ ())+        | RW_Return'takeFromOtherQuestion (R.Raw mut_ Std_.Word32)+        | RW_Return'acceptFromThirdParty (R.Raw mut_ Basics.AnyPointer)+        | RW_Return'unknown' Std_.Word16+    internalWhich tag_ struct_ = case tag_ of+        0 ->+            (RW_Return'results <$> (GH.readVariant #results struct_))+        1 ->+            (RW_Return'exception <$> (GH.readVariant #exception struct_))+        2 ->+            (RW_Return'canceled <$> (GH.readVariant #canceled struct_))+        3 ->+            (RW_Return'resultsSentElsewhere <$> (GH.readVariant #resultsSentElsewhere struct_))+        4 ->+            (RW_Return'takeFromOtherQuestion <$> (GH.readVariant #takeFromOtherQuestion struct_))+        5 ->+            (RW_Return'acceptFromThirdParty <$> (GH.readVariant #acceptFromThirdParty struct_))+        _ ->+            (Std_.pure (RW_Return'unknown' tag_))+    data Which Return+instance (GH.HasVariant "results" GH.Slot Return Payload) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 0)+instance (GH.HasVariant "exception" GH.Slot Return Exception) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 1)+instance (GH.HasVariant "canceled" GH.Slot Return ()) where+    variantByLabel  = (GH.Variant GH.voidField 2)+instance (GH.HasVariant "resultsSentElsewhere" GH.Slot Return ()) where+    variantByLabel  = (GH.Variant GH.voidField 3)+instance (GH.HasVariant "takeFromOtherQuestion" GH.Slot Return Std_.Word32) where+    variantByLabel  = (GH.Variant (GH.dataField 0 1 32 0) 4)+instance (GH.HasVariant "acceptFromThirdParty" GH.Slot Return Basics.AnyPointer) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 5)+data instance C.Parsed (GH.Which Return)+    = Return'results (RP.Parsed Payload)+    | Return'exception (RP.Parsed Exception)+    | Return'canceled +    | Return'resultsSentElsewhere +    | Return'takeFromOtherQuestion (RP.Parsed Std_.Word32)+    | Return'acceptFromThirdParty (RP.Parsed Basics.AnyPointer)+    | Return'unknown' Std_.Word16+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed (GH.Which Return)))+deriving instance (Std_.Eq (C.Parsed (GH.Which Return)))+instance (C.Parse (GH.Which Return) (C.Parsed (GH.Which Return))) where+    parse raw_ = (do+        rawWhich_ <- (GH.unionWhich raw_)+        case rawWhich_ of+            (RW_Return'results rawArg_) ->+                (Return'results <$> (C.parse rawArg_))+            (RW_Return'exception rawArg_) ->+                (Return'exception <$> (C.parse rawArg_))+            (RW_Return'canceled _) ->+                (Std_.pure Return'canceled)+            (RW_Return'resultsSentElsewhere _) ->+                (Std_.pure Return'resultsSentElsewhere)+            (RW_Return'takeFromOtherQuestion rawArg_) ->+                (Return'takeFromOtherQuestion <$> (C.parse rawArg_))+            (RW_Return'acceptFromThirdParty rawArg_) ->+                (Return'acceptFromThirdParty <$> (C.parse rawArg_))+            (RW_Return'unknown' tag_) ->+                (Std_.pure (Return'unknown' tag_))+        )+instance (C.Marshal (GH.Which Return) (C.Parsed (GH.Which Return))) where+    marshalInto raw_ parsed_ = case parsed_ of+        (Return'results arg_) ->+            (GH.encodeVariant #results arg_ (GH.unionStruct raw_))+        (Return'exception arg_) ->+            (GH.encodeVariant #exception arg_ (GH.unionStruct raw_))+        (Return'canceled) ->+            (GH.encodeVariant #canceled () (GH.unionStruct raw_))+        (Return'resultsSentElsewhere) ->+            (GH.encodeVariant #resultsSentElsewhere () (GH.unionStruct raw_))+        (Return'takeFromOtherQuestion arg_) ->+            (GH.encodeVariant #takeFromOtherQuestion arg_ (GH.unionStruct raw_))+        (Return'acceptFromThirdParty arg_) ->+            (GH.encodeVariant #acceptFromThirdParty arg_ (GH.unionStruct raw_))+        (Return'unknown' tag_) ->+            (GH.encodeField GH.unionField tag_ (GH.unionStruct raw_))+instance (GH.HasField "answerId" GH.Slot Return Std_.Word32) where+    fieldByLabel  = (GH.dataField 0 0 32 0)+instance (GH.HasField "releaseParamCaps" GH.Slot Return Std_.Bool) where+    fieldByLabel  = (GH.dataField 32 0 1 1)+data Finish +type instance (R.ReprFor Finish) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Finish) where+    numStructWords  = 1+    numStructPtrs  = 0+instance (C.Allocate Finish) where+    type AllocHint Finish = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Finish (C.Parsed Finish))+instance (C.AllocateList Finish) where+    type ListAllocHint Finish = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Finish (C.Parsed Finish))+data instance C.Parsed Finish+    = Finish +        {questionId :: (RP.Parsed Std_.Word32)+        ,releaseResultCaps :: (RP.Parsed Std_.Bool)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Finish))+deriving instance (Std_.Eq (C.Parsed Finish))+instance (C.Parse Finish (C.Parsed Finish)) where+    parse raw_ = (Finish <$> (GH.parseField #questionId raw_)+                         <*> (GH.parseField #releaseResultCaps raw_))+instance (C.Marshal Finish (C.Parsed Finish)) where+    marshalInto raw_ Finish{..} = (do+        (GH.encodeField #questionId questionId raw_)+        (GH.encodeField #releaseResultCaps releaseResultCaps raw_)+        (Std_.pure ())+        )+instance (GH.HasField "questionId" GH.Slot Finish Std_.Word32) where+    fieldByLabel  = (GH.dataField 0 0 32 0)+instance (GH.HasField "releaseResultCaps" GH.Slot Finish Std_.Bool) where+    fieldByLabel  = (GH.dataField 32 0 1 1)+data Resolve +type instance (R.ReprFor Resolve) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Resolve) where+    numStructWords  = 1+    numStructPtrs  = 1+instance (C.Allocate Resolve) where+    type AllocHint Resolve = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Resolve (C.Parsed Resolve))+instance (C.AllocateList Resolve) where+    type ListAllocHint Resolve = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Resolve (C.Parsed Resolve))+data instance C.Parsed Resolve+    = Resolve +        {promiseId :: (RP.Parsed Std_.Word32)+        ,union' :: (C.Parsed (GH.Which Resolve))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Resolve))+deriving instance (Std_.Eq (C.Parsed Resolve))+instance (C.Parse Resolve (C.Parsed Resolve)) where+    parse raw_ = (Resolve <$> (GH.parseField #promiseId raw_)+                          <*> (C.parse (GH.structUnion raw_)))+instance (C.Marshal Resolve (C.Parsed Resolve)) where+    marshalInto raw_ Resolve{..} = (do+        (GH.encodeField #promiseId promiseId raw_)+        (C.marshalInto (GH.structUnion raw_) union')+        )+instance (GH.HasUnion Resolve) where+    unionField  = (GH.dataField 32 0 16 0)+    data RawWhich mut_ Resolve+        = RW_Resolve'cap (R.Raw mut_ CapDescriptor)+        | RW_Resolve'exception (R.Raw mut_ Exception)+        | RW_Resolve'unknown' Std_.Word16+    internalWhich tag_ struct_ = case tag_ of+        0 ->+            (RW_Resolve'cap <$> (GH.readVariant #cap struct_))+        1 ->+            (RW_Resolve'exception <$> (GH.readVariant #exception struct_))+        _ ->+            (Std_.pure (RW_Resolve'unknown' tag_))+    data Which Resolve+instance (GH.HasVariant "cap" GH.Slot Resolve CapDescriptor) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 0)+instance (GH.HasVariant "exception" GH.Slot Resolve Exception) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 1)+data instance C.Parsed (GH.Which Resolve)+    = Resolve'cap (RP.Parsed CapDescriptor)+    | Resolve'exception (RP.Parsed Exception)+    | Resolve'unknown' Std_.Word16+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed (GH.Which Resolve)))+deriving instance (Std_.Eq (C.Parsed (GH.Which Resolve)))+instance (C.Parse (GH.Which Resolve) (C.Parsed (GH.Which Resolve))) where+    parse raw_ = (do+        rawWhich_ <- (GH.unionWhich raw_)+        case rawWhich_ of+            (RW_Resolve'cap rawArg_) ->+                (Resolve'cap <$> (C.parse rawArg_))+            (RW_Resolve'exception rawArg_) ->+                (Resolve'exception <$> (C.parse rawArg_))+            (RW_Resolve'unknown' tag_) ->+                (Std_.pure (Resolve'unknown' tag_))+        )+instance (C.Marshal (GH.Which Resolve) (C.Parsed (GH.Which Resolve))) where+    marshalInto raw_ parsed_ = case parsed_ of+        (Resolve'cap arg_) ->+            (GH.encodeVariant #cap arg_ (GH.unionStruct raw_))+        (Resolve'exception arg_) ->+            (GH.encodeVariant #exception arg_ (GH.unionStruct raw_))+        (Resolve'unknown' tag_) ->+            (GH.encodeField GH.unionField tag_ (GH.unionStruct raw_))+instance (GH.HasField "promiseId" GH.Slot Resolve Std_.Word32) where+    fieldByLabel  = (GH.dataField 0 0 32 0)+data Release +type instance (R.ReprFor Release) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Release) where+    numStructWords  = 1+    numStructPtrs  = 0+instance (C.Allocate Release) where+    type AllocHint Release = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Release (C.Parsed Release))+instance (C.AllocateList Release) where+    type ListAllocHint Release = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Release (C.Parsed Release))+data instance C.Parsed Release+    = Release +        {id :: (RP.Parsed Std_.Word32)+        ,referenceCount :: (RP.Parsed Std_.Word32)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Release))+deriving instance (Std_.Eq (C.Parsed Release))+instance (C.Parse Release (C.Parsed Release)) where+    parse raw_ = (Release <$> (GH.parseField #id raw_)+                          <*> (GH.parseField #referenceCount raw_))+instance (C.Marshal Release (C.Parsed Release)) where+    marshalInto raw_ Release{..} = (do+        (GH.encodeField #id id raw_)+        (GH.encodeField #referenceCount referenceCount raw_)+        (Std_.pure ())+        )+instance (GH.HasField "id" GH.Slot Release Std_.Word32) where+    fieldByLabel  = (GH.dataField 0 0 32 0)+instance (GH.HasField "referenceCount" GH.Slot Release Std_.Word32) where+    fieldByLabel  = (GH.dataField 32 0 32 0)+data Disembargo +type instance (R.ReprFor Disembargo) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Disembargo) where+    numStructWords  = 1+    numStructPtrs  = 1+instance (C.Allocate Disembargo) where+    type AllocHint Disembargo = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Disembargo (C.Parsed Disembargo))+instance (C.AllocateList Disembargo) where+    type ListAllocHint Disembargo = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Disembargo (C.Parsed Disembargo))+data instance C.Parsed Disembargo+    = Disembargo +        {target :: (RP.Parsed MessageTarget)+        ,context :: (RP.Parsed Disembargo'context)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Disembargo))+deriving instance (Std_.Eq (C.Parsed Disembargo))+instance (C.Parse Disembargo (C.Parsed Disembargo)) where+    parse raw_ = (Disembargo <$> (GH.parseField #target raw_)+                             <*> (GH.parseField #context raw_))+instance (C.Marshal Disembargo (C.Parsed Disembargo)) where+    marshalInto raw_ Disembargo{..} = (do+        (GH.encodeField #target target raw_)+        (do+            group_ <- (GH.readField #context raw_)+            (C.marshalInto group_ context)+            )+        (Std_.pure ())+        )+instance (GH.HasField "target" GH.Slot Disembargo MessageTarget) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "context" GH.Group Disembargo Disembargo'context) where+    fieldByLabel  = GH.groupField+data Disembargo'context +type instance (R.ReprFor Disembargo'context) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Disembargo'context) where+    numStructWords  = 1+    numStructPtrs  = 1+instance (C.Allocate Disembargo'context) where+    type AllocHint Disembargo'context = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Disembargo'context (C.Parsed Disembargo'context))+instance (C.AllocateList Disembargo'context) where+    type ListAllocHint Disembargo'context = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Disembargo'context (C.Parsed Disembargo'context))+data instance C.Parsed Disembargo'context+    = Disembargo'context' +        {union' :: (C.Parsed (GH.Which Disembargo'context))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Disembargo'context))+deriving instance (Std_.Eq (C.Parsed Disembargo'context))+instance (C.Parse Disembargo'context (C.Parsed Disembargo'context)) where+    parse raw_ = (Disembargo'context' <$> (C.parse (GH.structUnion raw_)))+instance (C.Marshal Disembargo'context (C.Parsed Disembargo'context)) where+    marshalInto raw_ Disembargo'context'{..} = (do+        (C.marshalInto (GH.structUnion raw_) union')+        )+instance (GH.HasUnion Disembargo'context) where+    unionField  = (GH.dataField 32 0 16 0)+    data RawWhich mut_ Disembargo'context+        = RW_Disembargo'context'senderLoopback (R.Raw mut_ Std_.Word32)+        | RW_Disembargo'context'receiverLoopback (R.Raw mut_ Std_.Word32)+        | RW_Disembargo'context'accept (R.Raw mut_ ())+        | RW_Disembargo'context'provide (R.Raw mut_ Std_.Word32)+        | RW_Disembargo'context'unknown' Std_.Word16+    internalWhich tag_ struct_ = case tag_ of+        0 ->+            (RW_Disembargo'context'senderLoopback <$> (GH.readVariant #senderLoopback struct_))+        1 ->+            (RW_Disembargo'context'receiverLoopback <$> (GH.readVariant #receiverLoopback struct_))+        2 ->+            (RW_Disembargo'context'accept <$> (GH.readVariant #accept struct_))+        3 ->+            (RW_Disembargo'context'provide <$> (GH.readVariant #provide struct_))+        _ ->+            (Std_.pure (RW_Disembargo'context'unknown' tag_))+    data Which Disembargo'context+instance (GH.HasVariant "senderLoopback" GH.Slot Disembargo'context Std_.Word32) where+    variantByLabel  = (GH.Variant (GH.dataField 0 0 32 0) 0)+instance (GH.HasVariant "receiverLoopback" GH.Slot Disembargo'context Std_.Word32) where+    variantByLabel  = (GH.Variant (GH.dataField 0 0 32 0) 1)+instance (GH.HasVariant "accept" GH.Slot Disembargo'context ()) where+    variantByLabel  = (GH.Variant GH.voidField 2)+instance (GH.HasVariant "provide" GH.Slot Disembargo'context Std_.Word32) where+    variantByLabel  = (GH.Variant (GH.dataField 0 0 32 0) 3)+data instance C.Parsed (GH.Which Disembargo'context)+    = Disembargo'context'senderLoopback (RP.Parsed Std_.Word32)+    | Disembargo'context'receiverLoopback (RP.Parsed Std_.Word32)+    | Disembargo'context'accept +    | Disembargo'context'provide (RP.Parsed Std_.Word32)+    | Disembargo'context'unknown' Std_.Word16+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed (GH.Which Disembargo'context)))+deriving instance (Std_.Eq (C.Parsed (GH.Which Disembargo'context)))+instance (C.Parse (GH.Which Disembargo'context) (C.Parsed (GH.Which Disembargo'context))) where+    parse raw_ = (do+        rawWhich_ <- (GH.unionWhich raw_)+        case rawWhich_ of+            (RW_Disembargo'context'senderLoopback rawArg_) ->+                (Disembargo'context'senderLoopback <$> (C.parse rawArg_))+            (RW_Disembargo'context'receiverLoopback rawArg_) ->+                (Disembargo'context'receiverLoopback <$> (C.parse rawArg_))+            (RW_Disembargo'context'accept _) ->+                (Std_.pure Disembargo'context'accept)+            (RW_Disembargo'context'provide rawArg_) ->+                (Disembargo'context'provide <$> (C.parse rawArg_))+            (RW_Disembargo'context'unknown' tag_) ->+                (Std_.pure (Disembargo'context'unknown' tag_))+        )+instance (C.Marshal (GH.Which Disembargo'context) (C.Parsed (GH.Which Disembargo'context))) where+    marshalInto raw_ parsed_ = case parsed_ of+        (Disembargo'context'senderLoopback arg_) ->+            (GH.encodeVariant #senderLoopback arg_ (GH.unionStruct raw_))+        (Disembargo'context'receiverLoopback arg_) ->+            (GH.encodeVariant #receiverLoopback arg_ (GH.unionStruct raw_))+        (Disembargo'context'accept) ->+            (GH.encodeVariant #accept () (GH.unionStruct raw_))+        (Disembargo'context'provide arg_) ->+            (GH.encodeVariant #provide arg_ (GH.unionStruct raw_))+        (Disembargo'context'unknown' tag_) ->+            (GH.encodeField GH.unionField tag_ (GH.unionStruct raw_))+data Provide +type instance (R.ReprFor Provide) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Provide) where+    numStructWords  = 1+    numStructPtrs  = 2+instance (C.Allocate Provide) where+    type AllocHint Provide = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Provide (C.Parsed Provide))+instance (C.AllocateList Provide) where+    type ListAllocHint Provide = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Provide (C.Parsed Provide))+data instance C.Parsed Provide+    = Provide +        {questionId :: (RP.Parsed Std_.Word32)+        ,target :: (RP.Parsed MessageTarget)+        ,recipient :: (RP.Parsed Basics.AnyPointer)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Provide))+deriving instance (Std_.Eq (C.Parsed Provide))+instance (C.Parse Provide (C.Parsed Provide)) where+    parse raw_ = (Provide <$> (GH.parseField #questionId raw_)+                          <*> (GH.parseField #target raw_)+                          <*> (GH.parseField #recipient raw_))+instance (C.Marshal Provide (C.Parsed Provide)) where+    marshalInto raw_ Provide{..} = (do+        (GH.encodeField #questionId questionId raw_)+        (GH.encodeField #target target raw_)+        (GH.encodeField #recipient recipient raw_)+        (Std_.pure ())+        )+instance (GH.HasField "questionId" GH.Slot Provide Std_.Word32) where+    fieldByLabel  = (GH.dataField 0 0 32 0)+instance (GH.HasField "target" GH.Slot Provide MessageTarget) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "recipient" GH.Slot Provide Basics.AnyPointer) where+    fieldByLabel  = (GH.ptrField 1)+data Accept +type instance (R.ReprFor Accept) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Accept) where+    numStructWords  = 1+    numStructPtrs  = 1+instance (C.Allocate Accept) where+    type AllocHint Accept = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Accept (C.Parsed Accept))+instance (C.AllocateList Accept) where+    type ListAllocHint Accept = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Accept (C.Parsed Accept))+data instance C.Parsed Accept+    = Accept +        {questionId :: (RP.Parsed Std_.Word32)+        ,provision :: (RP.Parsed Basics.AnyPointer)+        ,embargo :: (RP.Parsed Std_.Bool)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Accept))+deriving instance (Std_.Eq (C.Parsed Accept))+instance (C.Parse Accept (C.Parsed Accept)) where+    parse raw_ = (Accept <$> (GH.parseField #questionId raw_)+                         <*> (GH.parseField #provision raw_)+                         <*> (GH.parseField #embargo raw_))+instance (C.Marshal Accept (C.Parsed Accept)) where+    marshalInto raw_ Accept{..} = (do+        (GH.encodeField #questionId questionId raw_)+        (GH.encodeField #provision provision raw_)+        (GH.encodeField #embargo embargo raw_)+        (Std_.pure ())+        )+instance (GH.HasField "questionId" GH.Slot Accept Std_.Word32) where+    fieldByLabel  = (GH.dataField 0 0 32 0)+instance (GH.HasField "provision" GH.Slot Accept Basics.AnyPointer) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "embargo" GH.Slot Accept Std_.Bool) where+    fieldByLabel  = (GH.dataField 32 0 1 0)+data Join +type instance (R.ReprFor Join) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Join) where+    numStructWords  = 1+    numStructPtrs  = 2+instance (C.Allocate Join) where+    type AllocHint Join = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Join (C.Parsed Join))+instance (C.AllocateList Join) where+    type ListAllocHint Join = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Join (C.Parsed Join))+data instance C.Parsed Join+    = Join +        {questionId :: (RP.Parsed Std_.Word32)+        ,target :: (RP.Parsed MessageTarget)+        ,keyPart :: (RP.Parsed Basics.AnyPointer)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Join))+deriving instance (Std_.Eq (C.Parsed Join))+instance (C.Parse Join (C.Parsed Join)) where+    parse raw_ = (Join <$> (GH.parseField #questionId raw_)+                       <*> (GH.parseField #target raw_)+                       <*> (GH.parseField #keyPart raw_))+instance (C.Marshal Join (C.Parsed Join)) where+    marshalInto raw_ Join{..} = (do+        (GH.encodeField #questionId questionId raw_)+        (GH.encodeField #target target raw_)+        (GH.encodeField #keyPart keyPart raw_)+        (Std_.pure ())+        )+instance (GH.HasField "questionId" GH.Slot Join Std_.Word32) where+    fieldByLabel  = (GH.dataField 0 0 32 0)+instance (GH.HasField "target" GH.Slot Join MessageTarget) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "keyPart" GH.Slot Join Basics.AnyPointer) where+    fieldByLabel  = (GH.ptrField 1)+data MessageTarget +type instance (R.ReprFor MessageTarget) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct MessageTarget) where+    numStructWords  = 1+    numStructPtrs  = 1+instance (C.Allocate MessageTarget) where+    type AllocHint MessageTarget = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc MessageTarget (C.Parsed MessageTarget))+instance (C.AllocateList MessageTarget) where+    type ListAllocHint MessageTarget = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc MessageTarget (C.Parsed MessageTarget))+data instance C.Parsed MessageTarget+    = MessageTarget +        {union' :: (C.Parsed (GH.Which MessageTarget))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed MessageTarget))+deriving instance (Std_.Eq (C.Parsed MessageTarget))+instance (C.Parse MessageTarget (C.Parsed MessageTarget)) where+    parse raw_ = (MessageTarget <$> (C.parse (GH.structUnion raw_)))+instance (C.Marshal MessageTarget (C.Parsed MessageTarget)) where+    marshalInto raw_ MessageTarget{..} = (do+        (C.marshalInto (GH.structUnion raw_) union')+        )+instance (GH.HasUnion MessageTarget) where+    unionField  = (GH.dataField 32 0 16 0)+    data RawWhich mut_ MessageTarget+        = RW_MessageTarget'importedCap (R.Raw mut_ Std_.Word32)+        | RW_MessageTarget'promisedAnswer (R.Raw mut_ PromisedAnswer)+        | RW_MessageTarget'unknown' Std_.Word16+    internalWhich tag_ struct_ = case tag_ of+        0 ->+            (RW_MessageTarget'importedCap <$> (GH.readVariant #importedCap struct_))+        1 ->+            (RW_MessageTarget'promisedAnswer <$> (GH.readVariant #promisedAnswer struct_))+        _ ->+            (Std_.pure (RW_MessageTarget'unknown' tag_))+    data Which MessageTarget+instance (GH.HasVariant "importedCap" GH.Slot MessageTarget Std_.Word32) where+    variantByLabel  = (GH.Variant (GH.dataField 0 0 32 0) 0)+instance (GH.HasVariant "promisedAnswer" GH.Slot MessageTarget PromisedAnswer) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 1)+data instance C.Parsed (GH.Which MessageTarget)+    = MessageTarget'importedCap (RP.Parsed Std_.Word32)+    | MessageTarget'promisedAnswer (RP.Parsed PromisedAnswer)+    | MessageTarget'unknown' Std_.Word16+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed (GH.Which MessageTarget)))+deriving instance (Std_.Eq (C.Parsed (GH.Which MessageTarget)))+instance (C.Parse (GH.Which MessageTarget) (C.Parsed (GH.Which MessageTarget))) where+    parse raw_ = (do+        rawWhich_ <- (GH.unionWhich raw_)+        case rawWhich_ of+            (RW_MessageTarget'importedCap rawArg_) ->+                (MessageTarget'importedCap <$> (C.parse rawArg_))+            (RW_MessageTarget'promisedAnswer rawArg_) ->+                (MessageTarget'promisedAnswer <$> (C.parse rawArg_))+            (RW_MessageTarget'unknown' tag_) ->+                (Std_.pure (MessageTarget'unknown' tag_))+        )+instance (C.Marshal (GH.Which MessageTarget) (C.Parsed (GH.Which MessageTarget))) where+    marshalInto raw_ parsed_ = case parsed_ of+        (MessageTarget'importedCap arg_) ->+            (GH.encodeVariant #importedCap arg_ (GH.unionStruct raw_))+        (MessageTarget'promisedAnswer arg_) ->+            (GH.encodeVariant #promisedAnswer arg_ (GH.unionStruct raw_))+        (MessageTarget'unknown' tag_) ->+            (GH.encodeField GH.unionField tag_ (GH.unionStruct raw_))+data Payload +type instance (R.ReprFor Payload) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Payload) where+    numStructWords  = 0+    numStructPtrs  = 2+instance (C.Allocate Payload) where+    type AllocHint Payload = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Payload (C.Parsed Payload))+instance (C.AllocateList Payload) where+    type ListAllocHint Payload = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Payload (C.Parsed Payload))+data instance C.Parsed Payload+    = Payload +        {content :: (RP.Parsed Basics.AnyPointer)+        ,capTable :: (RP.Parsed (R.List CapDescriptor))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Payload))+deriving instance (Std_.Eq (C.Parsed Payload))+instance (C.Parse Payload (C.Parsed Payload)) where+    parse raw_ = (Payload <$> (GH.parseField #content raw_)+                          <*> (GH.parseField #capTable raw_))+instance (C.Marshal Payload (C.Parsed Payload)) where+    marshalInto raw_ Payload{..} = (do+        (GH.encodeField #content content raw_)+        (GH.encodeField #capTable capTable raw_)+        (Std_.pure ())+        )+instance (GH.HasField "content" GH.Slot Payload Basics.AnyPointer) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "capTable" GH.Slot Payload (R.List CapDescriptor)) where+    fieldByLabel  = (GH.ptrField 1)+data CapDescriptor +type instance (R.ReprFor CapDescriptor) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct CapDescriptor) where+    numStructWords  = 1+    numStructPtrs  = 1+instance (C.Allocate CapDescriptor) where+    type AllocHint CapDescriptor = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc CapDescriptor (C.Parsed CapDescriptor))+instance (C.AllocateList CapDescriptor) where+    type ListAllocHint CapDescriptor = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc CapDescriptor (C.Parsed CapDescriptor))+data instance C.Parsed CapDescriptor+    = CapDescriptor +        {attachedFd :: (RP.Parsed Std_.Word8)+        ,union' :: (C.Parsed (GH.Which CapDescriptor))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed CapDescriptor))+deriving instance (Std_.Eq (C.Parsed CapDescriptor))+instance (C.Parse CapDescriptor (C.Parsed CapDescriptor)) where+    parse raw_ = (CapDescriptor <$> (GH.parseField #attachedFd raw_)+                                <*> (C.parse (GH.structUnion raw_)))+instance (C.Marshal CapDescriptor (C.Parsed CapDescriptor)) where+    marshalInto raw_ CapDescriptor{..} = (do+        (GH.encodeField #attachedFd attachedFd raw_)+        (C.marshalInto (GH.structUnion raw_) union')+        )+instance (GH.HasUnion CapDescriptor) where+    unionField  = (GH.dataField 0 0 16 0)+    data RawWhich mut_ CapDescriptor+        = RW_CapDescriptor'none (R.Raw mut_ ())+        | RW_CapDescriptor'senderHosted (R.Raw mut_ Std_.Word32)+        | RW_CapDescriptor'senderPromise (R.Raw mut_ Std_.Word32)+        | RW_CapDescriptor'receiverHosted (R.Raw mut_ Std_.Word32)+        | RW_CapDescriptor'receiverAnswer (R.Raw mut_ PromisedAnswer)+        | RW_CapDescriptor'thirdPartyHosted (R.Raw mut_ ThirdPartyCapDescriptor)+        | RW_CapDescriptor'unknown' Std_.Word16+    internalWhich tag_ struct_ = case tag_ of+        0 ->+            (RW_CapDescriptor'none <$> (GH.readVariant #none struct_))+        1 ->+            (RW_CapDescriptor'senderHosted <$> (GH.readVariant #senderHosted struct_))+        2 ->+            (RW_CapDescriptor'senderPromise <$> (GH.readVariant #senderPromise struct_))+        3 ->+            (RW_CapDescriptor'receiverHosted <$> (GH.readVariant #receiverHosted struct_))+        4 ->+            (RW_CapDescriptor'receiverAnswer <$> (GH.readVariant #receiverAnswer struct_))+        5 ->+            (RW_CapDescriptor'thirdPartyHosted <$> (GH.readVariant #thirdPartyHosted struct_))+        _ ->+            (Std_.pure (RW_CapDescriptor'unknown' tag_))+    data Which CapDescriptor+instance (GH.HasVariant "none" GH.Slot CapDescriptor ()) where+    variantByLabel  = (GH.Variant GH.voidField 0)+instance (GH.HasVariant "senderHosted" GH.Slot CapDescriptor Std_.Word32) where+    variantByLabel  = (GH.Variant (GH.dataField 32 0 32 0) 1)+instance (GH.HasVariant "senderPromise" GH.Slot CapDescriptor Std_.Word32) where+    variantByLabel  = (GH.Variant (GH.dataField 32 0 32 0) 2)+instance (GH.HasVariant "receiverHosted" GH.Slot CapDescriptor Std_.Word32) where+    variantByLabel  = (GH.Variant (GH.dataField 32 0 32 0) 3)+instance (GH.HasVariant "receiverAnswer" GH.Slot CapDescriptor PromisedAnswer) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 4)+instance (GH.HasVariant "thirdPartyHosted" GH.Slot CapDescriptor ThirdPartyCapDescriptor) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 5)+data instance C.Parsed (GH.Which CapDescriptor)+    = CapDescriptor'none +    | CapDescriptor'senderHosted (RP.Parsed Std_.Word32)+    | CapDescriptor'senderPromise (RP.Parsed Std_.Word32)+    | CapDescriptor'receiverHosted (RP.Parsed Std_.Word32)+    | CapDescriptor'receiverAnswer (RP.Parsed PromisedAnswer)+    | CapDescriptor'thirdPartyHosted (RP.Parsed ThirdPartyCapDescriptor)+    | CapDescriptor'unknown' Std_.Word16+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed (GH.Which CapDescriptor)))+deriving instance (Std_.Eq (C.Parsed (GH.Which CapDescriptor)))+instance (C.Parse (GH.Which CapDescriptor) (C.Parsed (GH.Which CapDescriptor))) where+    parse raw_ = (do+        rawWhich_ <- (GH.unionWhich raw_)+        case rawWhich_ of+            (RW_CapDescriptor'none _) ->+                (Std_.pure CapDescriptor'none)+            (RW_CapDescriptor'senderHosted rawArg_) ->+                (CapDescriptor'senderHosted <$> (C.parse rawArg_))+            (RW_CapDescriptor'senderPromise rawArg_) ->+                (CapDescriptor'senderPromise <$> (C.parse rawArg_))+            (RW_CapDescriptor'receiverHosted rawArg_) ->+                (CapDescriptor'receiverHosted <$> (C.parse rawArg_))+            (RW_CapDescriptor'receiverAnswer rawArg_) ->+                (CapDescriptor'receiverAnswer <$> (C.parse rawArg_))+            (RW_CapDescriptor'thirdPartyHosted rawArg_) ->+                (CapDescriptor'thirdPartyHosted <$> (C.parse rawArg_))+            (RW_CapDescriptor'unknown' tag_) ->+                (Std_.pure (CapDescriptor'unknown' tag_))+        )+instance (C.Marshal (GH.Which CapDescriptor) (C.Parsed (GH.Which CapDescriptor))) where+    marshalInto raw_ parsed_ = case parsed_ of+        (CapDescriptor'none) ->+            (GH.encodeVariant #none () (GH.unionStruct raw_))+        (CapDescriptor'senderHosted arg_) ->+            (GH.encodeVariant #senderHosted arg_ (GH.unionStruct raw_))+        (CapDescriptor'senderPromise arg_) ->+            (GH.encodeVariant #senderPromise arg_ (GH.unionStruct raw_))+        (CapDescriptor'receiverHosted arg_) ->+            (GH.encodeVariant #receiverHosted arg_ (GH.unionStruct raw_))+        (CapDescriptor'receiverAnswer arg_) ->+            (GH.encodeVariant #receiverAnswer arg_ (GH.unionStruct raw_))+        (CapDescriptor'thirdPartyHosted arg_) ->+            (GH.encodeVariant #thirdPartyHosted arg_ (GH.unionStruct raw_))+        (CapDescriptor'unknown' tag_) ->+            (GH.encodeField GH.unionField tag_ (GH.unionStruct raw_))+instance (GH.HasField "attachedFd" GH.Slot CapDescriptor Std_.Word8) where+    fieldByLabel  = (GH.dataField 16 0 8 255)+data PromisedAnswer +type instance (R.ReprFor PromisedAnswer) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct PromisedAnswer) where+    numStructWords  = 1+    numStructPtrs  = 1+instance (C.Allocate PromisedAnswer) where+    type AllocHint PromisedAnswer = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc PromisedAnswer (C.Parsed PromisedAnswer))+instance (C.AllocateList PromisedAnswer) where+    type ListAllocHint PromisedAnswer = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc PromisedAnswer (C.Parsed PromisedAnswer))+data instance C.Parsed PromisedAnswer+    = PromisedAnswer +        {questionId :: (RP.Parsed Std_.Word32)+        ,transform :: (RP.Parsed (R.List PromisedAnswer'Op))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed PromisedAnswer))+deriving instance (Std_.Eq (C.Parsed PromisedAnswer))+instance (C.Parse PromisedAnswer (C.Parsed PromisedAnswer)) where+    parse raw_ = (PromisedAnswer <$> (GH.parseField #questionId raw_)+                                 <*> (GH.parseField #transform raw_))+instance (C.Marshal PromisedAnswer (C.Parsed PromisedAnswer)) where+    marshalInto raw_ PromisedAnswer{..} = (do+        (GH.encodeField #questionId questionId raw_)+        (GH.encodeField #transform transform raw_)+        (Std_.pure ())+        )+instance (GH.HasField "questionId" GH.Slot PromisedAnswer Std_.Word32) where+    fieldByLabel  = (GH.dataField 0 0 32 0)+instance (GH.HasField "transform" GH.Slot PromisedAnswer (R.List PromisedAnswer'Op)) where+    fieldByLabel  = (GH.ptrField 0)+data PromisedAnswer'Op +type instance (R.ReprFor PromisedAnswer'Op) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct PromisedAnswer'Op) where+    numStructWords  = 1+    numStructPtrs  = 0+instance (C.Allocate PromisedAnswer'Op) where+    type AllocHint PromisedAnswer'Op = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc PromisedAnswer'Op (C.Parsed PromisedAnswer'Op))+instance (C.AllocateList PromisedAnswer'Op) where+    type ListAllocHint PromisedAnswer'Op = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc PromisedAnswer'Op (C.Parsed PromisedAnswer'Op))+data instance C.Parsed PromisedAnswer'Op+    = PromisedAnswer'Op +        {union' :: (C.Parsed (GH.Which PromisedAnswer'Op))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed PromisedAnswer'Op))+deriving instance (Std_.Eq (C.Parsed PromisedAnswer'Op))+instance (C.Parse PromisedAnswer'Op (C.Parsed PromisedAnswer'Op)) where+    parse raw_ = (PromisedAnswer'Op <$> (C.parse (GH.structUnion raw_)))+instance (C.Marshal PromisedAnswer'Op (C.Parsed PromisedAnswer'Op)) where+    marshalInto raw_ PromisedAnswer'Op{..} = (do+        (C.marshalInto (GH.structUnion raw_) union')+        )+instance (GH.HasUnion PromisedAnswer'Op) where+    unionField  = (GH.dataField 0 0 16 0)+    data RawWhich mut_ PromisedAnswer'Op+        = RW_PromisedAnswer'Op'noop (R.Raw mut_ ())+        | RW_PromisedAnswer'Op'getPointerField (R.Raw mut_ Std_.Word16)+        | RW_PromisedAnswer'Op'unknown' Std_.Word16+    internalWhich tag_ struct_ = case tag_ of+        0 ->+            (RW_PromisedAnswer'Op'noop <$> (GH.readVariant #noop struct_))+        1 ->+            (RW_PromisedAnswer'Op'getPointerField <$> (GH.readVariant #getPointerField struct_))+        _ ->+            (Std_.pure (RW_PromisedAnswer'Op'unknown' tag_))+    data Which PromisedAnswer'Op+instance (GH.HasVariant "noop" GH.Slot PromisedAnswer'Op ()) where+    variantByLabel  = (GH.Variant GH.voidField 0)+instance (GH.HasVariant "getPointerField" GH.Slot PromisedAnswer'Op Std_.Word16) where+    variantByLabel  = (GH.Variant (GH.dataField 16 0 16 0) 1)+data instance C.Parsed (GH.Which PromisedAnswer'Op)+    = PromisedAnswer'Op'noop +    | PromisedAnswer'Op'getPointerField (RP.Parsed Std_.Word16)+    | PromisedAnswer'Op'unknown' Std_.Word16+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed (GH.Which PromisedAnswer'Op)))+deriving instance (Std_.Eq (C.Parsed (GH.Which PromisedAnswer'Op)))+instance (C.Parse (GH.Which PromisedAnswer'Op) (C.Parsed (GH.Which PromisedAnswer'Op))) where+    parse raw_ = (do+        rawWhich_ <- (GH.unionWhich raw_)+        case rawWhich_ of+            (RW_PromisedAnswer'Op'noop _) ->+                (Std_.pure PromisedAnswer'Op'noop)+            (RW_PromisedAnswer'Op'getPointerField rawArg_) ->+                (PromisedAnswer'Op'getPointerField <$> (C.parse rawArg_))+            (RW_PromisedAnswer'Op'unknown' tag_) ->+                (Std_.pure (PromisedAnswer'Op'unknown' tag_))+        )+instance (C.Marshal (GH.Which PromisedAnswer'Op) (C.Parsed (GH.Which PromisedAnswer'Op))) where+    marshalInto raw_ parsed_ = case parsed_ of+        (PromisedAnswer'Op'noop) ->+            (GH.encodeVariant #noop () (GH.unionStruct raw_))+        (PromisedAnswer'Op'getPointerField arg_) ->+            (GH.encodeVariant #getPointerField arg_ (GH.unionStruct raw_))+        (PromisedAnswer'Op'unknown' tag_) ->+            (GH.encodeField GH.unionField tag_ (GH.unionStruct raw_))+data ThirdPartyCapDescriptor +type instance (R.ReprFor ThirdPartyCapDescriptor) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct ThirdPartyCapDescriptor) where+    numStructWords  = 1+    numStructPtrs  = 1+instance (C.Allocate ThirdPartyCapDescriptor) where+    type AllocHint ThirdPartyCapDescriptor = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc ThirdPartyCapDescriptor (C.Parsed ThirdPartyCapDescriptor))+instance (C.AllocateList ThirdPartyCapDescriptor) where+    type ListAllocHint ThirdPartyCapDescriptor = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc ThirdPartyCapDescriptor (C.Parsed ThirdPartyCapDescriptor))+data instance C.Parsed ThirdPartyCapDescriptor+    = ThirdPartyCapDescriptor +        {id :: (RP.Parsed Basics.AnyPointer)+        ,vineId :: (RP.Parsed Std_.Word32)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed ThirdPartyCapDescriptor))+deriving instance (Std_.Eq (C.Parsed ThirdPartyCapDescriptor))+instance (C.Parse ThirdPartyCapDescriptor (C.Parsed ThirdPartyCapDescriptor)) where+    parse raw_ = (ThirdPartyCapDescriptor <$> (GH.parseField #id raw_)+                                          <*> (GH.parseField #vineId raw_))+instance (C.Marshal ThirdPartyCapDescriptor (C.Parsed ThirdPartyCapDescriptor)) where+    marshalInto raw_ ThirdPartyCapDescriptor{..} = (do+        (GH.encodeField #id id raw_)+        (GH.encodeField #vineId vineId raw_)+        (Std_.pure ())+        )+instance (GH.HasField "id" GH.Slot ThirdPartyCapDescriptor Basics.AnyPointer) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "vineId" GH.Slot ThirdPartyCapDescriptor Std_.Word32) where+    fieldByLabel  = (GH.dataField 0 0 32 0)+data Exception +type instance (R.ReprFor Exception) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Exception) where+    numStructWords  = 1+    numStructPtrs  = 1+instance (C.Allocate Exception) where+    type AllocHint Exception = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Exception (C.Parsed Exception))+instance (C.AllocateList Exception) where+    type ListAllocHint Exception = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Exception (C.Parsed Exception))+data instance C.Parsed Exception+    = Exception +        {reason :: (RP.Parsed Basics.Text)+        ,obsoleteIsCallersFault :: (RP.Parsed Std_.Bool)+        ,obsoleteDurability :: (RP.Parsed Std_.Word16)+        ,type_ :: (RP.Parsed Exception'Type)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Exception))+deriving instance (Std_.Eq (C.Parsed Exception))+instance (C.Parse Exception (C.Parsed Exception)) where+    parse raw_ = (Exception <$> (GH.parseField #reason raw_)+                            <*> (GH.parseField #obsoleteIsCallersFault raw_)+                            <*> (GH.parseField #obsoleteDurability raw_)+                            <*> (GH.parseField #type_ raw_))+instance (C.Marshal Exception (C.Parsed Exception)) where+    marshalInto raw_ Exception{..} = (do+        (GH.encodeField #reason reason raw_)+        (GH.encodeField #obsoleteIsCallersFault obsoleteIsCallersFault raw_)+        (GH.encodeField #obsoleteDurability obsoleteDurability raw_)+        (GH.encodeField #type_ type_ raw_)+        (Std_.pure ())+        )+instance (GH.HasField "reason" GH.Slot Exception Basics.Text) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "obsoleteIsCallersFault" GH.Slot Exception Std_.Bool) where+    fieldByLabel  = (GH.dataField 0 0 1 0)+instance (GH.HasField "obsoleteDurability" GH.Slot Exception Std_.Word16) where+    fieldByLabel  = (GH.dataField 16 0 16 0)+instance (GH.HasField "type_" GH.Slot Exception Exception'Type) where+    fieldByLabel  = (GH.dataField 32 0 16 0)+data Exception'Type +    = Exception'Type'failed +    | Exception'Type'overloaded +    | Exception'Type'disconnected +    | Exception'Type'unimplemented +    | Exception'Type'unknown' Std_.Word16+    deriving(Std_.Eq,Std_.Show)+type instance (R.ReprFor Exception'Type) = (R.Data R.Sz16)+instance (Std_.Enum Exception'Type) where+    toEnum n_ = case n_ of+        0 ->+            Exception'Type'failed+        1 ->+            Exception'Type'overloaded+        2 ->+            Exception'Type'disconnected+        3 ->+            Exception'Type'unimplemented+        tag_ ->+            (Exception'Type'unknown' (Std_.fromIntegral tag_))+    fromEnum value_ = case value_ of+        (Exception'Type'failed) ->+            0+        (Exception'Type'overloaded) ->+            1+        (Exception'Type'disconnected) ->+            2+        (Exception'Type'unimplemented) ->+            3+        (Exception'Type'unknown' tag_) ->+            (Std_.fromIntegral tag_)+instance (C.IsWord Exception'Type) where+    fromWord w_ = (Std_.toEnum (Std_.fromIntegral w_))+    toWord v_ = (Std_.fromIntegral (Std_.fromEnum v_))+instance (C.Parse Exception'Type Exception'Type) where+    parse  = GH.parseEnum+    encode  = GH.encodeEnum+instance (C.AllocateList Exception'Type) where+    type ListAllocHint Exception'Type = Std_.Int+instance (C.EstimateListAlloc Exception'Type Exception'Type)
gen/lib/Capnp/Gen/Capnp/Rpc/Pure.hs view
@@ -13,6 +13,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.Capnp.Rpc.Pure(Capnp.Gen.ById.Xb312981b2552a250.Exception'Type(..)                                ,Message(..)                                ,Bootstrap(..)@@ -73,12 +74,12 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Message)) where+instance (Default.Default Message) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Message)) where+instance (Classes.FromStruct Message.Const Message) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Message)) where-    type Cerial msg (Message) = (Capnp.Gen.ById.Xb312981b2552a250.Message msg)+instance (Classes.Decerialize Message) where+    type Cerial msg Message = (Capnp.Gen.ById.Xb312981b2552a250.Message msg)     decerialize raw = (do         raw <- (Capnp.Gen.ById.Xb312981b2552a250.get_Message' raw)         case raw of@@ -113,7 +114,7 @@             (Capnp.Gen.ById.Xb312981b2552a250.Message'unknown' tag) ->                 (Std_.pure (Message'unknown' tag))         )-instance (Classes.Marshal s (Message)) where+instance (Classes.Marshal s Message) where     marshalInto raw_ value_ = case value_ of         (Message'unimplemented arg_) ->             ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.Xb312981b2552a250.set_Message'unimplemented raw_))@@ -145,20 +146,20 @@             ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.Xb312981b2552a250.set_Message'disembargo raw_))         (Message'unknown' tag) ->             (Capnp.Gen.ById.Xb312981b2552a250.set_Message'unknown' raw_ tag)-instance (Classes.Cerialize s (Message))-instance (Classes.Cerialize s (V.Vector (Message))) where+instance (Classes.Cerialize s Message)+instance (Classes.Cerialize s (V.Vector Message)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Message)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Message))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Message))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Message)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Message)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Message))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Message))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Message)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Message)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Message))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Message))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Message)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Bootstrap      = Bootstrap @@ -167,15 +168,15 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Bootstrap)) where+instance (Default.Default Bootstrap) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Bootstrap)) where+instance (Classes.FromStruct Message.Const Bootstrap) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Bootstrap)) where-    type Cerial msg (Bootstrap) = (Capnp.Gen.ById.Xb312981b2552a250.Bootstrap msg)+instance (Classes.Decerialize Bootstrap) where+    type Cerial msg Bootstrap = (Capnp.Gen.ById.Xb312981b2552a250.Bootstrap msg)     decerialize raw = (Bootstrap <$> (Capnp.Gen.ById.Xb312981b2552a250.get_Bootstrap'questionId raw)                                  <*> ((Capnp.Gen.ById.Xb312981b2552a250.get_Bootstrap'deprecatedObjectId raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Bootstrap)) where+instance (Classes.Marshal s Bootstrap) where     marshalInto raw_ value_ = case value_ of         Bootstrap{..} ->             (do@@ -183,20 +184,20 @@                 ((Classes.cerialize (Untyped.message raw_) deprecatedObjectId) >>= (Capnp.Gen.ById.Xb312981b2552a250.set_Bootstrap'deprecatedObjectId raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Bootstrap))-instance (Classes.Cerialize s (V.Vector (Bootstrap))) where+instance (Classes.Cerialize s Bootstrap)+instance (Classes.Cerialize s (V.Vector Bootstrap)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Bootstrap)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Bootstrap))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Bootstrap))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Bootstrap)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Bootstrap)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Bootstrap))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Bootstrap))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Bootstrap)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Bootstrap)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Bootstrap))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Bootstrap))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Bootstrap)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Call      = Call @@ -210,12 +211,12 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Call)) where+instance (Default.Default Call) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Call)) where+instance (Classes.FromStruct Message.Const Call) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Call)) where-    type Cerial msg (Call) = (Capnp.Gen.ById.Xb312981b2552a250.Call msg)+instance (Classes.Decerialize Call) where+    type Cerial msg Call = (Capnp.Gen.ById.Xb312981b2552a250.Call msg)     decerialize raw = (Call <$> (Capnp.Gen.ById.Xb312981b2552a250.get_Call'questionId raw)                             <*> ((Capnp.Gen.ById.Xb312981b2552a250.get_Call'target raw) >>= Classes.decerialize)                             <*> (Capnp.Gen.ById.Xb312981b2552a250.get_Call'interfaceId raw)@@ -223,7 +224,7 @@                             <*> ((Capnp.Gen.ById.Xb312981b2552a250.get_Call'params raw) >>= Classes.decerialize)                             <*> ((Capnp.Gen.ById.Xb312981b2552a250.get_Call'sendResultsTo raw) >>= Classes.decerialize)                             <*> (Capnp.Gen.ById.Xb312981b2552a250.get_Call'allowThirdPartyTailCall raw))-instance (Classes.Marshal s (Call)) where+instance (Classes.Marshal s Call) where     marshalInto raw_ value_ = case value_ of         Call{..} ->             (do@@ -239,20 +240,20 @@                 (Capnp.Gen.ById.Xb312981b2552a250.set_Call'allowThirdPartyTailCall raw_ allowThirdPartyTailCall)                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Call))-instance (Classes.Cerialize s (V.Vector (Call))) where+instance (Classes.Cerialize s Call)+instance (Classes.Cerialize s (V.Vector Call)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Call)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Call))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Call))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Call)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Call)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Call))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Call))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Call)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Call)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Call))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Call))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Call)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Call'sendResultsTo      = Call'sendResultsTo'caller @@ -262,12 +263,12 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Call'sendResultsTo)) where+instance (Default.Default Call'sendResultsTo) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Call'sendResultsTo)) where+instance (Classes.FromStruct Message.Const Call'sendResultsTo) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Call'sendResultsTo)) where-    type Cerial msg (Call'sendResultsTo) = (Capnp.Gen.ById.Xb312981b2552a250.Call'sendResultsTo msg)+instance (Classes.Decerialize Call'sendResultsTo) where+    type Cerial msg Call'sendResultsTo = (Capnp.Gen.ById.Xb312981b2552a250.Call'sendResultsTo msg)     decerialize raw = (do         raw <- (Capnp.Gen.ById.Xb312981b2552a250.get_Call'sendResultsTo' raw)         case raw of@@ -280,7 +281,7 @@             (Capnp.Gen.ById.Xb312981b2552a250.Call'sendResultsTo'unknown' tag) ->                 (Std_.pure (Call'sendResultsTo'unknown' tag))         )-instance (Classes.Marshal s (Call'sendResultsTo)) where+instance (Classes.Marshal s Call'sendResultsTo) where     marshalInto raw_ value_ = case value_ of         (Call'sendResultsTo'caller) ->             (Capnp.Gen.ById.Xb312981b2552a250.set_Call'sendResultsTo'caller raw_)@@ -298,16 +299,16 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Return)) where+instance (Default.Default Return) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Return)) where+instance (Classes.FromStruct Message.Const Return) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Return)) where-    type Cerial msg (Return) = (Capnp.Gen.ById.Xb312981b2552a250.Return msg)+instance (Classes.Decerialize Return) where+    type Cerial msg Return = (Capnp.Gen.ById.Xb312981b2552a250.Return msg)     decerialize raw = (Return <$> (Capnp.Gen.ById.Xb312981b2552a250.get_Return'answerId raw)                               <*> (Capnp.Gen.ById.Xb312981b2552a250.get_Return'releaseParamCaps raw)                               <*> (Classes.decerialize raw))-instance (Classes.Marshal s (Return)) where+instance (Classes.Marshal s Return) where     marshalInto raw_ value_ = case value_ of         Return{..} ->             (do@@ -318,20 +319,20 @@                     )                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Return))-instance (Classes.Cerialize s (V.Vector (Return))) where+instance (Classes.Cerialize s Return)+instance (Classes.Cerialize s (V.Vector Return)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Return)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Return))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Return))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Return)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Return)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Return))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Return))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Return)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Return)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Return))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Return))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Return)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Return'      = Return'results Payload@@ -344,12 +345,12 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Return')) where+instance (Default.Default Return') where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Return')) where+instance (Classes.FromStruct Message.Const Return') where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Return')) where-    type Cerial msg (Return') = (Capnp.Gen.ById.Xb312981b2552a250.Return msg)+instance (Classes.Decerialize Return') where+    type Cerial msg Return' = (Capnp.Gen.ById.Xb312981b2552a250.Return msg)     decerialize raw = (do         raw <- (Capnp.Gen.ById.Xb312981b2552a250.get_Return' raw)         case raw of@@ -368,7 +369,7 @@             (Capnp.Gen.ById.Xb312981b2552a250.Return'unknown' tag) ->                 (Std_.pure (Return'unknown' tag))         )-instance (Classes.Marshal s (Return')) where+instance (Classes.Marshal s Return') where     marshalInto raw_ value_ = case value_ of         (Return'results arg_) ->             ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.Xb312981b2552a250.set_Return'results raw_))@@ -391,15 +392,15 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Finish)) where+instance (Default.Default Finish) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Finish)) where+instance (Classes.FromStruct Message.Const Finish) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Finish)) where-    type Cerial msg (Finish) = (Capnp.Gen.ById.Xb312981b2552a250.Finish msg)+instance (Classes.Decerialize Finish) where+    type Cerial msg Finish = (Capnp.Gen.ById.Xb312981b2552a250.Finish msg)     decerialize raw = (Finish <$> (Capnp.Gen.ById.Xb312981b2552a250.get_Finish'questionId raw)                               <*> (Capnp.Gen.ById.Xb312981b2552a250.get_Finish'releaseResultCaps raw))-instance (Classes.Marshal s (Finish)) where+instance (Classes.Marshal s Finish) where     marshalInto raw_ value_ = case value_ of         Finish{..} ->             (do@@ -407,20 +408,20 @@                 (Capnp.Gen.ById.Xb312981b2552a250.set_Finish'releaseResultCaps raw_ releaseResultCaps)                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Finish))-instance (Classes.Cerialize s (V.Vector (Finish))) where+instance (Classes.Cerialize s Finish)+instance (Classes.Cerialize s (V.Vector Finish)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Finish)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Finish))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Finish))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Finish)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Finish)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Finish))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Finish))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Finish)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Finish)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Finish))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Finish))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Finish)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Resolve      = Resolve @@ -429,15 +430,15 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Resolve)) where+instance (Default.Default Resolve) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Resolve)) where+instance (Classes.FromStruct Message.Const Resolve) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Resolve)) where-    type Cerial msg (Resolve) = (Capnp.Gen.ById.Xb312981b2552a250.Resolve msg)+instance (Classes.Decerialize Resolve) where+    type Cerial msg Resolve = (Capnp.Gen.ById.Xb312981b2552a250.Resolve msg)     decerialize raw = (Resolve <$> (Capnp.Gen.ById.Xb312981b2552a250.get_Resolve'promiseId raw)                                <*> (Classes.decerialize raw))-instance (Classes.Marshal s (Resolve)) where+instance (Classes.Marshal s Resolve) where     marshalInto raw_ value_ = case value_ of         Resolve{..} ->             (do@@ -447,20 +448,20 @@                     )                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Resolve))-instance (Classes.Cerialize s (V.Vector (Resolve))) where+instance (Classes.Cerialize s Resolve)+instance (Classes.Cerialize s (V.Vector Resolve)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Resolve)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Resolve))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Resolve))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Resolve)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Resolve)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Resolve))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Resolve))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Resolve)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Resolve)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Resolve))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Resolve))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Resolve)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Resolve'      = Resolve'cap CapDescriptor@@ -469,12 +470,12 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Resolve')) where+instance (Default.Default Resolve') where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Resolve')) where+instance (Classes.FromStruct Message.Const Resolve') where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Resolve')) where-    type Cerial msg (Resolve') = (Capnp.Gen.ById.Xb312981b2552a250.Resolve msg)+instance (Classes.Decerialize Resolve') where+    type Cerial msg Resolve' = (Capnp.Gen.ById.Xb312981b2552a250.Resolve msg)     decerialize raw = (do         raw <- (Capnp.Gen.ById.Xb312981b2552a250.get_Resolve' raw)         case raw of@@ -485,7 +486,7 @@             (Capnp.Gen.ById.Xb312981b2552a250.Resolve'unknown' tag) ->                 (Std_.pure (Resolve'unknown' tag))         )-instance (Classes.Marshal s (Resolve')) where+instance (Classes.Marshal s Resolve') where     marshalInto raw_ value_ = case value_ of         (Resolve'cap arg_) ->             ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.Xb312981b2552a250.set_Resolve'cap raw_))@@ -500,15 +501,15 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Release)) where+instance (Default.Default Release) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Release)) where+instance (Classes.FromStruct Message.Const Release) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Release)) where-    type Cerial msg (Release) = (Capnp.Gen.ById.Xb312981b2552a250.Release msg)+instance (Classes.Decerialize Release) where+    type Cerial msg Release = (Capnp.Gen.ById.Xb312981b2552a250.Release msg)     decerialize raw = (Release <$> (Capnp.Gen.ById.Xb312981b2552a250.get_Release'id raw)                                <*> (Capnp.Gen.ById.Xb312981b2552a250.get_Release'referenceCount raw))-instance (Classes.Marshal s (Release)) where+instance (Classes.Marshal s Release) where     marshalInto raw_ value_ = case value_ of         Release{..} ->             (do@@ -516,20 +517,20 @@                 (Capnp.Gen.ById.Xb312981b2552a250.set_Release'referenceCount raw_ referenceCount)                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Release))-instance (Classes.Cerialize s (V.Vector (Release))) where+instance (Classes.Cerialize s Release)+instance (Classes.Cerialize s (V.Vector Release)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Release)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Release))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Release))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Release)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Release)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Release))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Release))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Release)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Release)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Release))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Release))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Release)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Disembargo      = Disembargo @@ -538,15 +539,15 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Disembargo)) where+instance (Default.Default Disembargo) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Disembargo)) where+instance (Classes.FromStruct Message.Const Disembargo) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Disembargo)) where-    type Cerial msg (Disembargo) = (Capnp.Gen.ById.Xb312981b2552a250.Disembargo msg)+instance (Classes.Decerialize Disembargo) where+    type Cerial msg Disembargo = (Capnp.Gen.ById.Xb312981b2552a250.Disembargo msg)     decerialize raw = (Disembargo <$> ((Capnp.Gen.ById.Xb312981b2552a250.get_Disembargo'target raw) >>= Classes.decerialize)                                   <*> ((Capnp.Gen.ById.Xb312981b2552a250.get_Disembargo'context raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Disembargo)) where+instance (Classes.Marshal s Disembargo) where     marshalInto raw_ value_ = case value_ of         Disembargo{..} ->             (do@@ -557,20 +558,20 @@                     )                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Disembargo))-instance (Classes.Cerialize s (V.Vector (Disembargo))) where+instance (Classes.Cerialize s Disembargo)+instance (Classes.Cerialize s (V.Vector Disembargo)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Disembargo)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Disembargo))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Disembargo))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Disembargo)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Disembargo)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Disembargo))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Disembargo))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Disembargo)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Disembargo)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Disembargo))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Disembargo))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Disembargo)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Disembargo'context      = Disembargo'context'senderLoopback Std_.Word32@@ -581,12 +582,12 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Disembargo'context)) where+instance (Default.Default Disembargo'context) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Disembargo'context)) where+instance (Classes.FromStruct Message.Const Disembargo'context) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Disembargo'context)) where-    type Cerial msg (Disembargo'context) = (Capnp.Gen.ById.Xb312981b2552a250.Disembargo'context msg)+instance (Classes.Decerialize Disembargo'context) where+    type Cerial msg Disembargo'context = (Capnp.Gen.ById.Xb312981b2552a250.Disembargo'context msg)     decerialize raw = (do         raw <- (Capnp.Gen.ById.Xb312981b2552a250.get_Disembargo'context' raw)         case raw of@@ -601,7 +602,7 @@             (Capnp.Gen.ById.Xb312981b2552a250.Disembargo'context'unknown' tag) ->                 (Std_.pure (Disembargo'context'unknown' tag))         )-instance (Classes.Marshal s (Disembargo'context)) where+instance (Classes.Marshal s Disembargo'context) where     marshalInto raw_ value_ = case value_ of         (Disembargo'context'senderLoopback arg_) ->             (Capnp.Gen.ById.Xb312981b2552a250.set_Disembargo'context'senderLoopback raw_ arg_)@@ -621,16 +622,16 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Provide)) where+instance (Default.Default Provide) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Provide)) where+instance (Classes.FromStruct Message.Const Provide) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Provide)) where-    type Cerial msg (Provide) = (Capnp.Gen.ById.Xb312981b2552a250.Provide msg)+instance (Classes.Decerialize Provide) where+    type Cerial msg Provide = (Capnp.Gen.ById.Xb312981b2552a250.Provide msg)     decerialize raw = (Provide <$> (Capnp.Gen.ById.Xb312981b2552a250.get_Provide'questionId raw)                                <*> ((Capnp.Gen.ById.Xb312981b2552a250.get_Provide'target raw) >>= Classes.decerialize)                                <*> ((Capnp.Gen.ById.Xb312981b2552a250.get_Provide'recipient raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Provide)) where+instance (Classes.Marshal s Provide) where     marshalInto raw_ value_ = case value_ of         Provide{..} ->             (do@@ -639,20 +640,20 @@                 ((Classes.cerialize (Untyped.message raw_) recipient) >>= (Capnp.Gen.ById.Xb312981b2552a250.set_Provide'recipient raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Provide))-instance (Classes.Cerialize s (V.Vector (Provide))) where+instance (Classes.Cerialize s Provide)+instance (Classes.Cerialize s (V.Vector Provide)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Provide)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Provide))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Provide))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Provide)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Provide)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Provide))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Provide))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Provide)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Provide)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Provide))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Provide))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Provide)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Accept      = Accept @@ -662,16 +663,16 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Accept)) where+instance (Default.Default Accept) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Accept)) where+instance (Classes.FromStruct Message.Const Accept) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Accept)) where-    type Cerial msg (Accept) = (Capnp.Gen.ById.Xb312981b2552a250.Accept msg)+instance (Classes.Decerialize Accept) where+    type Cerial msg Accept = (Capnp.Gen.ById.Xb312981b2552a250.Accept msg)     decerialize raw = (Accept <$> (Capnp.Gen.ById.Xb312981b2552a250.get_Accept'questionId raw)                               <*> ((Capnp.Gen.ById.Xb312981b2552a250.get_Accept'provision raw) >>= Classes.decerialize)                               <*> (Capnp.Gen.ById.Xb312981b2552a250.get_Accept'embargo raw))-instance (Classes.Marshal s (Accept)) where+instance (Classes.Marshal s Accept) where     marshalInto raw_ value_ = case value_ of         Accept{..} ->             (do@@ -680,20 +681,20 @@                 (Capnp.Gen.ById.Xb312981b2552a250.set_Accept'embargo raw_ embargo)                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Accept))-instance (Classes.Cerialize s (V.Vector (Accept))) where+instance (Classes.Cerialize s Accept)+instance (Classes.Cerialize s (V.Vector Accept)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Accept)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Accept))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Accept))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Accept)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Accept)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Accept))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Accept))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Accept)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Accept)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Accept))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Accept))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Accept)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Join      = Join @@ -703,16 +704,16 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Join)) where+instance (Default.Default Join) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Join)) where+instance (Classes.FromStruct Message.Const Join) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Join)) where-    type Cerial msg (Join) = (Capnp.Gen.ById.Xb312981b2552a250.Join msg)+instance (Classes.Decerialize Join) where+    type Cerial msg Join = (Capnp.Gen.ById.Xb312981b2552a250.Join msg)     decerialize raw = (Join <$> (Capnp.Gen.ById.Xb312981b2552a250.get_Join'questionId raw)                             <*> ((Capnp.Gen.ById.Xb312981b2552a250.get_Join'target raw) >>= Classes.decerialize)                             <*> ((Capnp.Gen.ById.Xb312981b2552a250.get_Join'keyPart raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Join)) where+instance (Classes.Marshal s Join) where     marshalInto raw_ value_ = case value_ of         Join{..} ->             (do@@ -721,20 +722,20 @@                 ((Classes.cerialize (Untyped.message raw_) keyPart) >>= (Capnp.Gen.ById.Xb312981b2552a250.set_Join'keyPart raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Join))-instance (Classes.Cerialize s (V.Vector (Join))) where+instance (Classes.Cerialize s Join)+instance (Classes.Cerialize s (V.Vector Join)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Join)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Join))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Join))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Join)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Join)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Join))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Join))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Join)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Join)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Join))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Join))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Join)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data MessageTarget      = MessageTarget'importedCap Std_.Word32@@ -743,12 +744,12 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (MessageTarget)) where+instance (Default.Default MessageTarget) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (MessageTarget)) where+instance (Classes.FromStruct Message.Const MessageTarget) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (MessageTarget)) where-    type Cerial msg (MessageTarget) = (Capnp.Gen.ById.Xb312981b2552a250.MessageTarget msg)+instance (Classes.Decerialize MessageTarget) where+    type Cerial msg MessageTarget = (Capnp.Gen.ById.Xb312981b2552a250.MessageTarget msg)     decerialize raw = (do         raw <- (Capnp.Gen.ById.Xb312981b2552a250.get_MessageTarget' raw)         case raw of@@ -759,7 +760,7 @@             (Capnp.Gen.ById.Xb312981b2552a250.MessageTarget'unknown' tag) ->                 (Std_.pure (MessageTarget'unknown' tag))         )-instance (Classes.Marshal s (MessageTarget)) where+instance (Classes.Marshal s MessageTarget) where     marshalInto raw_ value_ = case value_ of         (MessageTarget'importedCap arg_) ->             (Capnp.Gen.ById.Xb312981b2552a250.set_MessageTarget'importedCap raw_ arg_)@@ -767,20 +768,20 @@             ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.Xb312981b2552a250.set_MessageTarget'promisedAnswer raw_))         (MessageTarget'unknown' tag) ->             (Capnp.Gen.ById.Xb312981b2552a250.set_MessageTarget'unknown' raw_ tag)-instance (Classes.Cerialize s (MessageTarget))-instance (Classes.Cerialize s (V.Vector (MessageTarget))) where+instance (Classes.Cerialize s MessageTarget)+instance (Classes.Cerialize s (V.Vector MessageTarget)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (MessageTarget)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector MessageTarget))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (MessageTarget))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector MessageTarget)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (MessageTarget)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector MessageTarget))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (MessageTarget))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector MessageTarget)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (MessageTarget)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector MessageTarget))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (MessageTarget))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector MessageTarget)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Payload      = Payload @@ -789,15 +790,15 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Payload)) where+instance (Default.Default Payload) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Payload)) where+instance (Classes.FromStruct Message.Const Payload) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Payload)) where-    type Cerial msg (Payload) = (Capnp.Gen.ById.Xb312981b2552a250.Payload msg)+instance (Classes.Decerialize Payload) where+    type Cerial msg Payload = (Capnp.Gen.ById.Xb312981b2552a250.Payload msg)     decerialize raw = (Payload <$> ((Capnp.Gen.ById.Xb312981b2552a250.get_Payload'content raw) >>= Classes.decerialize)                                <*> ((Capnp.Gen.ById.Xb312981b2552a250.get_Payload'capTable raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Payload)) where+instance (Classes.Marshal s Payload) where     marshalInto raw_ value_ = case value_ of         Payload{..} ->             (do@@ -805,20 +806,20 @@                 ((Classes.cerialize (Untyped.message raw_) capTable) >>= (Capnp.Gen.ById.Xb312981b2552a250.set_Payload'capTable raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Payload))-instance (Classes.Cerialize s (V.Vector (Payload))) where+instance (Classes.Cerialize s Payload)+instance (Classes.Cerialize s (V.Vector Payload)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Payload)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Payload))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Payload))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Payload)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Payload)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Payload))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Payload))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Payload)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Payload)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Payload))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Payload))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Payload)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data CapDescriptor      = CapDescriptor @@ -827,15 +828,15 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (CapDescriptor)) where+instance (Default.Default CapDescriptor) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (CapDescriptor)) where+instance (Classes.FromStruct Message.Const CapDescriptor) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (CapDescriptor)) where-    type Cerial msg (CapDescriptor) = (Capnp.Gen.ById.Xb312981b2552a250.CapDescriptor msg)+instance (Classes.Decerialize CapDescriptor) where+    type Cerial msg CapDescriptor = (Capnp.Gen.ById.Xb312981b2552a250.CapDescriptor msg)     decerialize raw = (CapDescriptor <$> (Capnp.Gen.ById.Xb312981b2552a250.get_CapDescriptor'attachedFd raw)                                      <*> (Classes.decerialize raw))-instance (Classes.Marshal s (CapDescriptor)) where+instance (Classes.Marshal s CapDescriptor) where     marshalInto raw_ value_ = case value_ of         CapDescriptor{..} ->             (do@@ -845,20 +846,20 @@                     )                 (Std_.pure ())                 )-instance (Classes.Cerialize s (CapDescriptor))-instance (Classes.Cerialize s (V.Vector (CapDescriptor))) where+instance (Classes.Cerialize s CapDescriptor)+instance (Classes.Cerialize s (V.Vector CapDescriptor)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (CapDescriptor)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector CapDescriptor))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (CapDescriptor))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector CapDescriptor)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (CapDescriptor)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector CapDescriptor))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CapDescriptor))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CapDescriptor)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CapDescriptor)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CapDescriptor))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CapDescriptor))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CapDescriptor)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data CapDescriptor'      = CapDescriptor'none @@ -871,12 +872,12 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (CapDescriptor')) where+instance (Default.Default CapDescriptor') where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (CapDescriptor')) where+instance (Classes.FromStruct Message.Const CapDescriptor') where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (CapDescriptor')) where-    type Cerial msg (CapDescriptor') = (Capnp.Gen.ById.Xb312981b2552a250.CapDescriptor msg)+instance (Classes.Decerialize CapDescriptor') where+    type Cerial msg CapDescriptor' = (Capnp.Gen.ById.Xb312981b2552a250.CapDescriptor msg)     decerialize raw = (do         raw <- (Capnp.Gen.ById.Xb312981b2552a250.get_CapDescriptor' raw)         case raw of@@ -895,7 +896,7 @@             (Capnp.Gen.ById.Xb312981b2552a250.CapDescriptor'unknown' tag) ->                 (Std_.pure (CapDescriptor'unknown' tag))         )-instance (Classes.Marshal s (CapDescriptor')) where+instance (Classes.Marshal s CapDescriptor') where     marshalInto raw_ value_ = case value_ of         (CapDescriptor'none) ->             (Capnp.Gen.ById.Xb312981b2552a250.set_CapDescriptor'none raw_)@@ -918,15 +919,15 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (PromisedAnswer)) where+instance (Default.Default PromisedAnswer) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (PromisedAnswer)) where+instance (Classes.FromStruct Message.Const PromisedAnswer) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (PromisedAnswer)) where-    type Cerial msg (PromisedAnswer) = (Capnp.Gen.ById.Xb312981b2552a250.PromisedAnswer msg)+instance (Classes.Decerialize PromisedAnswer) where+    type Cerial msg PromisedAnswer = (Capnp.Gen.ById.Xb312981b2552a250.PromisedAnswer msg)     decerialize raw = (PromisedAnswer <$> (Capnp.Gen.ById.Xb312981b2552a250.get_PromisedAnswer'questionId raw)                                       <*> ((Capnp.Gen.ById.Xb312981b2552a250.get_PromisedAnswer'transform raw) >>= Classes.decerialize))-instance (Classes.Marshal s (PromisedAnswer)) where+instance (Classes.Marshal s PromisedAnswer) where     marshalInto raw_ value_ = case value_ of         PromisedAnswer{..} ->             (do@@ -934,20 +935,20 @@                 ((Classes.cerialize (Untyped.message raw_) transform) >>= (Capnp.Gen.ById.Xb312981b2552a250.set_PromisedAnswer'transform raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (PromisedAnswer))-instance (Classes.Cerialize s (V.Vector (PromisedAnswer))) where+instance (Classes.Cerialize s PromisedAnswer)+instance (Classes.Cerialize s (V.Vector PromisedAnswer)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (PromisedAnswer)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector PromisedAnswer))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (PromisedAnswer))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector PromisedAnswer)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (PromisedAnswer)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector PromisedAnswer))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (PromisedAnswer))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector PromisedAnswer)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (PromisedAnswer)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector PromisedAnswer))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (PromisedAnswer))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector PromisedAnswer)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data PromisedAnswer'Op      = PromisedAnswer'Op'noop @@ -956,12 +957,12 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (PromisedAnswer'Op)) where+instance (Default.Default PromisedAnswer'Op) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (PromisedAnswer'Op)) where+instance (Classes.FromStruct Message.Const PromisedAnswer'Op) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (PromisedAnswer'Op)) where-    type Cerial msg (PromisedAnswer'Op) = (Capnp.Gen.ById.Xb312981b2552a250.PromisedAnswer'Op msg)+instance (Classes.Decerialize PromisedAnswer'Op) where+    type Cerial msg PromisedAnswer'Op = (Capnp.Gen.ById.Xb312981b2552a250.PromisedAnswer'Op msg)     decerialize raw = (do         raw <- (Capnp.Gen.ById.Xb312981b2552a250.get_PromisedAnswer'Op' raw)         case raw of@@ -972,7 +973,7 @@             (Capnp.Gen.ById.Xb312981b2552a250.PromisedAnswer'Op'unknown' tag) ->                 (Std_.pure (PromisedAnswer'Op'unknown' tag))         )-instance (Classes.Marshal s (PromisedAnswer'Op)) where+instance (Classes.Marshal s PromisedAnswer'Op) where     marshalInto raw_ value_ = case value_ of         (PromisedAnswer'Op'noop) ->             (Capnp.Gen.ById.Xb312981b2552a250.set_PromisedAnswer'Op'noop raw_)@@ -980,20 +981,20 @@             (Capnp.Gen.ById.Xb312981b2552a250.set_PromisedAnswer'Op'getPointerField raw_ arg_)         (PromisedAnswer'Op'unknown' tag) ->             (Capnp.Gen.ById.Xb312981b2552a250.set_PromisedAnswer'Op'unknown' raw_ tag)-instance (Classes.Cerialize s (PromisedAnswer'Op))-instance (Classes.Cerialize s (V.Vector (PromisedAnswer'Op))) where+instance (Classes.Cerialize s PromisedAnswer'Op)+instance (Classes.Cerialize s (V.Vector PromisedAnswer'Op)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (PromisedAnswer'Op)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector PromisedAnswer'Op))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (PromisedAnswer'Op))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector PromisedAnswer'Op)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (PromisedAnswer'Op)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector PromisedAnswer'Op))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (PromisedAnswer'Op))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector PromisedAnswer'Op)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (PromisedAnswer'Op)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector PromisedAnswer'Op))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (PromisedAnswer'Op))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector PromisedAnswer'Op)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data ThirdPartyCapDescriptor      = ThirdPartyCapDescriptor @@ -1002,15 +1003,15 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (ThirdPartyCapDescriptor)) where+instance (Default.Default ThirdPartyCapDescriptor) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (ThirdPartyCapDescriptor)) where+instance (Classes.FromStruct Message.Const ThirdPartyCapDescriptor) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (ThirdPartyCapDescriptor)) where-    type Cerial msg (ThirdPartyCapDescriptor) = (Capnp.Gen.ById.Xb312981b2552a250.ThirdPartyCapDescriptor msg)+instance (Classes.Decerialize ThirdPartyCapDescriptor) where+    type Cerial msg ThirdPartyCapDescriptor = (Capnp.Gen.ById.Xb312981b2552a250.ThirdPartyCapDescriptor msg)     decerialize raw = (ThirdPartyCapDescriptor <$> ((Capnp.Gen.ById.Xb312981b2552a250.get_ThirdPartyCapDescriptor'id raw) >>= Classes.decerialize)                                                <*> (Capnp.Gen.ById.Xb312981b2552a250.get_ThirdPartyCapDescriptor'vineId raw))-instance (Classes.Marshal s (ThirdPartyCapDescriptor)) where+instance (Classes.Marshal s ThirdPartyCapDescriptor) where     marshalInto raw_ value_ = case value_ of         ThirdPartyCapDescriptor{..} ->             (do@@ -1018,20 +1019,20 @@                 (Capnp.Gen.ById.Xb312981b2552a250.set_ThirdPartyCapDescriptor'vineId raw_ vineId)                 (Std_.pure ())                 )-instance (Classes.Cerialize s (ThirdPartyCapDescriptor))-instance (Classes.Cerialize s (V.Vector (ThirdPartyCapDescriptor))) where+instance (Classes.Cerialize s ThirdPartyCapDescriptor)+instance (Classes.Cerialize s (V.Vector ThirdPartyCapDescriptor)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (ThirdPartyCapDescriptor)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector ThirdPartyCapDescriptor))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (ThirdPartyCapDescriptor))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector ThirdPartyCapDescriptor)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (ThirdPartyCapDescriptor)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector ThirdPartyCapDescriptor))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (ThirdPartyCapDescriptor))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector ThirdPartyCapDescriptor)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (ThirdPartyCapDescriptor)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector ThirdPartyCapDescriptor))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (ThirdPartyCapDescriptor))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector ThirdPartyCapDescriptor)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Exception      = Exception @@ -1042,17 +1043,17 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Exception)) where+instance (Default.Default Exception) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Exception)) where+instance (Classes.FromStruct Message.Const Exception) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Exception)) where-    type Cerial msg (Exception) = (Capnp.Gen.ById.Xb312981b2552a250.Exception msg)+instance (Classes.Decerialize Exception) where+    type Cerial msg Exception = (Capnp.Gen.ById.Xb312981b2552a250.Exception msg)     decerialize raw = (Exception <$> ((Capnp.Gen.ById.Xb312981b2552a250.get_Exception'reason raw) >>= Classes.decerialize)                                  <*> (Capnp.Gen.ById.Xb312981b2552a250.get_Exception'obsoleteIsCallersFault raw)                                  <*> (Capnp.Gen.ById.Xb312981b2552a250.get_Exception'obsoleteDurability raw)                                  <*> (Capnp.Gen.ById.Xb312981b2552a250.get_Exception'type_ raw))-instance (Classes.Marshal s (Exception)) where+instance (Classes.Marshal s Exception) where     marshalInto raw_ value_ = case value_ of         Exception{..} ->             (do@@ -1062,20 +1063,20 @@                 (Capnp.Gen.ById.Xb312981b2552a250.set_Exception'type_ raw_ type_)                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Exception))-instance (Classes.Cerialize s (V.Vector (Exception))) where+instance (Classes.Cerialize s Exception)+instance (Classes.Cerialize s (V.Vector Exception)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Exception)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Exception))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Exception))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Exception)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Exception)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Exception))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Exception))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Exception)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Exception)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Exception))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Exception))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Exception)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec instance (Classes.Decerialize Capnp.Gen.ById.Xb312981b2552a250.Exception'Type) where     type Cerial msg Capnp.Gen.ById.Xb312981b2552a250.Exception'Type = Capnp.Gen.ById.Xb312981b2552a250.Exception'Type
gen/lib/Capnp/Gen/Capnp/RpcTwoparty.hs view
@@ -10,6 +10,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.Capnp.RpcTwoparty where import qualified Capnp.Message as Message import qualified Capnp.Untyped as Untyped
+ gen/lib/Capnp/Gen/Capnp/RpcTwoparty/New.hs view
@@ -0,0 +1,239 @@+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE EmptyDataDeriving #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE UndecidableInstances #-}+{-# LANGUAGE OverloadedLabels #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE RecordWildCards #-}+{-# OPTIONS_GHC -Wno-unused-imports #-}+{-# OPTIONS_GHC -Wno-dodgy-exports #-}+{-# OPTIONS_GHC -Wno-unused-matches #-}+{-# OPTIONS_GHC -Wno-orphans #-}+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-}+module Capnp.Gen.Capnp.RpcTwoparty.New where+import qualified Capnp.Repr as R+import qualified Capnp.Repr.Parsed as RP+import qualified Capnp.New.Basics as Basics+import qualified GHC.OverloadedLabels as OL+import qualified Capnp.GenHelpers.New as GH+import qualified Capnp.New.Classes as C+import qualified GHC.Generics as Generics+import qualified Capnp.GenHelpers.ReExports.Data.ByteString as BS+import qualified Prelude as Std_+import qualified Data.Word as Std_+import qualified Data.Int as Std_+import Prelude ((<$>), (<*>), (>>=))+data Side +    = Side'server +    | Side'client +    | Side'unknown' Std_.Word16+    deriving(Std_.Eq,Std_.Show)+type instance (R.ReprFor Side) = (R.Data R.Sz16)+instance (Std_.Enum Side) where+    toEnum n_ = case n_ of+        0 ->+            Side'server+        1 ->+            Side'client+        tag_ ->+            (Side'unknown' (Std_.fromIntegral tag_))+    fromEnum value_ = case value_ of+        (Side'server) ->+            0+        (Side'client) ->+            1+        (Side'unknown' tag_) ->+            (Std_.fromIntegral tag_)+instance (C.IsWord Side) where+    fromWord w_ = (Std_.toEnum (Std_.fromIntegral w_))+    toWord v_ = (Std_.fromIntegral (Std_.fromEnum v_))+instance (C.Parse Side Side) where+    parse  = GH.parseEnum+    encode  = GH.encodeEnum+instance (C.AllocateList Side) where+    type ListAllocHint Side = Std_.Int+instance (C.EstimateListAlloc Side Side)+data VatId +type instance (R.ReprFor VatId) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct VatId) where+    numStructWords  = 1+    numStructPtrs  = 0+instance (C.Allocate VatId) where+    type AllocHint VatId = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc VatId (C.Parsed VatId))+instance (C.AllocateList VatId) where+    type ListAllocHint VatId = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc VatId (C.Parsed VatId))+data instance C.Parsed VatId+    = VatId +        {side :: (RP.Parsed Side)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed VatId))+deriving instance (Std_.Eq (C.Parsed VatId))+instance (C.Parse VatId (C.Parsed VatId)) where+    parse raw_ = (VatId <$> (GH.parseField #side raw_))+instance (C.Marshal VatId (C.Parsed VatId)) where+    marshalInto raw_ VatId{..} = (do+        (GH.encodeField #side side raw_)+        (Std_.pure ())+        )+instance (GH.HasField "side" GH.Slot VatId Side) where+    fieldByLabel  = (GH.dataField 0 0 16 0)+data ProvisionId +type instance (R.ReprFor ProvisionId) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct ProvisionId) where+    numStructWords  = 1+    numStructPtrs  = 0+instance (C.Allocate ProvisionId) where+    type AllocHint ProvisionId = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc ProvisionId (C.Parsed ProvisionId))+instance (C.AllocateList ProvisionId) where+    type ListAllocHint ProvisionId = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc ProvisionId (C.Parsed ProvisionId))+data instance C.Parsed ProvisionId+    = ProvisionId +        {joinId :: (RP.Parsed Std_.Word32)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed ProvisionId))+deriving instance (Std_.Eq (C.Parsed ProvisionId))+instance (C.Parse ProvisionId (C.Parsed ProvisionId)) where+    parse raw_ = (ProvisionId <$> (GH.parseField #joinId raw_))+instance (C.Marshal ProvisionId (C.Parsed ProvisionId)) where+    marshalInto raw_ ProvisionId{..} = (do+        (GH.encodeField #joinId joinId raw_)+        (Std_.pure ())+        )+instance (GH.HasField "joinId" GH.Slot ProvisionId Std_.Word32) where+    fieldByLabel  = (GH.dataField 0 0 32 0)+data RecipientId +type instance (R.ReprFor RecipientId) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct RecipientId) where+    numStructWords  = 0+    numStructPtrs  = 0+instance (C.Allocate RecipientId) where+    type AllocHint RecipientId = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc RecipientId (C.Parsed RecipientId))+instance (C.AllocateList RecipientId) where+    type ListAllocHint RecipientId = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc RecipientId (C.Parsed RecipientId))+data instance C.Parsed RecipientId+    = RecipientId +        {}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed RecipientId))+deriving instance (Std_.Eq (C.Parsed RecipientId))+instance (C.Parse RecipientId (C.Parsed RecipientId)) where+    parse raw_ = (Std_.pure RecipientId)+instance (C.Marshal RecipientId (C.Parsed RecipientId)) where+    marshalInto _raw (RecipientId) = (Std_.pure ())+data ThirdPartyCapId +type instance (R.ReprFor ThirdPartyCapId) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct ThirdPartyCapId) where+    numStructWords  = 0+    numStructPtrs  = 0+instance (C.Allocate ThirdPartyCapId) where+    type AllocHint ThirdPartyCapId = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc ThirdPartyCapId (C.Parsed ThirdPartyCapId))+instance (C.AllocateList ThirdPartyCapId) where+    type ListAllocHint ThirdPartyCapId = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc ThirdPartyCapId (C.Parsed ThirdPartyCapId))+data instance C.Parsed ThirdPartyCapId+    = ThirdPartyCapId +        {}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed ThirdPartyCapId))+deriving instance (Std_.Eq (C.Parsed ThirdPartyCapId))+instance (C.Parse ThirdPartyCapId (C.Parsed ThirdPartyCapId)) where+    parse raw_ = (Std_.pure ThirdPartyCapId)+instance (C.Marshal ThirdPartyCapId (C.Parsed ThirdPartyCapId)) where+    marshalInto _raw (ThirdPartyCapId) = (Std_.pure ())+data JoinKeyPart +type instance (R.ReprFor JoinKeyPart) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct JoinKeyPart) where+    numStructWords  = 1+    numStructPtrs  = 0+instance (C.Allocate JoinKeyPart) where+    type AllocHint JoinKeyPart = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc JoinKeyPart (C.Parsed JoinKeyPart))+instance (C.AllocateList JoinKeyPart) where+    type ListAllocHint JoinKeyPart = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc JoinKeyPart (C.Parsed JoinKeyPart))+data instance C.Parsed JoinKeyPart+    = JoinKeyPart +        {joinId :: (RP.Parsed Std_.Word32)+        ,partCount :: (RP.Parsed Std_.Word16)+        ,partNum :: (RP.Parsed Std_.Word16)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed JoinKeyPart))+deriving instance (Std_.Eq (C.Parsed JoinKeyPart))+instance (C.Parse JoinKeyPart (C.Parsed JoinKeyPart)) where+    parse raw_ = (JoinKeyPart <$> (GH.parseField #joinId raw_)+                              <*> (GH.parseField #partCount raw_)+                              <*> (GH.parseField #partNum raw_))+instance (C.Marshal JoinKeyPart (C.Parsed JoinKeyPart)) where+    marshalInto raw_ JoinKeyPart{..} = (do+        (GH.encodeField #joinId joinId raw_)+        (GH.encodeField #partCount partCount raw_)+        (GH.encodeField #partNum partNum raw_)+        (Std_.pure ())+        )+instance (GH.HasField "joinId" GH.Slot JoinKeyPart Std_.Word32) where+    fieldByLabel  = (GH.dataField 0 0 32 0)+instance (GH.HasField "partCount" GH.Slot JoinKeyPart Std_.Word16) where+    fieldByLabel  = (GH.dataField 32 0 16 0)+instance (GH.HasField "partNum" GH.Slot JoinKeyPart Std_.Word16) where+    fieldByLabel  = (GH.dataField 48 0 16 0)+data JoinResult +type instance (R.ReprFor JoinResult) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct JoinResult) where+    numStructWords  = 1+    numStructPtrs  = 1+instance (C.Allocate JoinResult) where+    type AllocHint JoinResult = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc JoinResult (C.Parsed JoinResult))+instance (C.AllocateList JoinResult) where+    type ListAllocHint JoinResult = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc JoinResult (C.Parsed JoinResult))+data instance C.Parsed JoinResult+    = JoinResult +        {joinId :: (RP.Parsed Std_.Word32)+        ,succeeded :: (RP.Parsed Std_.Bool)+        ,cap :: (RP.Parsed Basics.AnyPointer)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed JoinResult))+deriving instance (Std_.Eq (C.Parsed JoinResult))+instance (C.Parse JoinResult (C.Parsed JoinResult)) where+    parse raw_ = (JoinResult <$> (GH.parseField #joinId raw_)+                             <*> (GH.parseField #succeeded raw_)+                             <*> (GH.parseField #cap raw_))+instance (C.Marshal JoinResult (C.Parsed JoinResult)) where+    marshalInto raw_ JoinResult{..} = (do+        (GH.encodeField #joinId joinId raw_)+        (GH.encodeField #succeeded succeeded raw_)+        (GH.encodeField #cap cap raw_)+        (Std_.pure ())+        )+instance (GH.HasField "joinId" GH.Slot JoinResult Std_.Word32) where+    fieldByLabel  = (GH.dataField 0 0 32 0)+instance (GH.HasField "succeeded" GH.Slot JoinResult Std_.Bool) where+    fieldByLabel  = (GH.dataField 32 0 1 0)+instance (GH.HasField "cap" GH.Slot JoinResult Basics.AnyPointer) where+    fieldByLabel  = (GH.ptrField 0)
gen/lib/Capnp/Gen/Capnp/RpcTwoparty/Pure.hs view
@@ -13,6 +13,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.Capnp.RpcTwoparty.Pure(Capnp.Gen.ById.Xa184c7885cdaf2a1.Side(..)                                        ,VatId(..)                                        ,ProvisionId(..)@@ -43,34 +44,34 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (VatId)) where+instance (Default.Default VatId) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (VatId)) where+instance (Classes.FromStruct Message.Const VatId) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (VatId)) where-    type Cerial msg (VatId) = (Capnp.Gen.ById.Xa184c7885cdaf2a1.VatId msg)+instance (Classes.Decerialize VatId) where+    type Cerial msg VatId = (Capnp.Gen.ById.Xa184c7885cdaf2a1.VatId msg)     decerialize raw = (VatId <$> (Capnp.Gen.ById.Xa184c7885cdaf2a1.get_VatId'side raw))-instance (Classes.Marshal s (VatId)) where+instance (Classes.Marshal s VatId) where     marshalInto raw_ value_ = case value_ of         VatId{..} ->             (do                 (Capnp.Gen.ById.Xa184c7885cdaf2a1.set_VatId'side raw_ side)                 (Std_.pure ())                 )-instance (Classes.Cerialize s (VatId))-instance (Classes.Cerialize s (V.Vector (VatId))) where+instance (Classes.Cerialize s VatId)+instance (Classes.Cerialize s (V.Vector VatId)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (VatId)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector VatId))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (VatId))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector VatId)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (VatId)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector VatId))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VatId))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VatId)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VatId)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VatId))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VatId))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VatId)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data ProvisionId      = ProvisionId @@ -78,34 +79,34 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (ProvisionId)) where+instance (Default.Default ProvisionId) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (ProvisionId)) where+instance (Classes.FromStruct Message.Const ProvisionId) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (ProvisionId)) where-    type Cerial msg (ProvisionId) = (Capnp.Gen.ById.Xa184c7885cdaf2a1.ProvisionId msg)+instance (Classes.Decerialize ProvisionId) where+    type Cerial msg ProvisionId = (Capnp.Gen.ById.Xa184c7885cdaf2a1.ProvisionId msg)     decerialize raw = (ProvisionId <$> (Capnp.Gen.ById.Xa184c7885cdaf2a1.get_ProvisionId'joinId raw))-instance (Classes.Marshal s (ProvisionId)) where+instance (Classes.Marshal s ProvisionId) where     marshalInto raw_ value_ = case value_ of         ProvisionId{..} ->             (do                 (Capnp.Gen.ById.Xa184c7885cdaf2a1.set_ProvisionId'joinId raw_ joinId)                 (Std_.pure ())                 )-instance (Classes.Cerialize s (ProvisionId))-instance (Classes.Cerialize s (V.Vector (ProvisionId))) where+instance (Classes.Cerialize s ProvisionId)+instance (Classes.Cerialize s (V.Vector ProvisionId)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (ProvisionId)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector ProvisionId))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (ProvisionId))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector ProvisionId)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (ProvisionId)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector ProvisionId))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (ProvisionId))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector ProvisionId)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (ProvisionId)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector ProvisionId))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (ProvisionId))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector ProvisionId)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data RecipientId      = RecipientId @@ -113,33 +114,33 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (RecipientId)) where+instance (Default.Default RecipientId) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (RecipientId)) where+instance (Classes.FromStruct Message.Const RecipientId) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (RecipientId)) where-    type Cerial msg (RecipientId) = (Capnp.Gen.ById.Xa184c7885cdaf2a1.RecipientId msg)+instance (Classes.Decerialize RecipientId) where+    type Cerial msg RecipientId = (Capnp.Gen.ById.Xa184c7885cdaf2a1.RecipientId msg)     decerialize raw = (Std_.pure RecipientId)-instance (Classes.Marshal s (RecipientId)) where+instance (Classes.Marshal s RecipientId) where     marshalInto raw_ value_ = case value_ of         (RecipientId) ->             (do                 (Std_.pure ())                 )-instance (Classes.Cerialize s (RecipientId))-instance (Classes.Cerialize s (V.Vector (RecipientId))) where+instance (Classes.Cerialize s RecipientId)+instance (Classes.Cerialize s (V.Vector RecipientId)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (RecipientId)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector RecipientId))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (RecipientId))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector RecipientId)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (RecipientId)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector RecipientId))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (RecipientId))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector RecipientId)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (RecipientId)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector RecipientId))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (RecipientId))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector RecipientId)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data ThirdPartyCapId      = ThirdPartyCapId @@ -147,33 +148,33 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (ThirdPartyCapId)) where+instance (Default.Default ThirdPartyCapId) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (ThirdPartyCapId)) where+instance (Classes.FromStruct Message.Const ThirdPartyCapId) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (ThirdPartyCapId)) where-    type Cerial msg (ThirdPartyCapId) = (Capnp.Gen.ById.Xa184c7885cdaf2a1.ThirdPartyCapId msg)+instance (Classes.Decerialize ThirdPartyCapId) where+    type Cerial msg ThirdPartyCapId = (Capnp.Gen.ById.Xa184c7885cdaf2a1.ThirdPartyCapId msg)     decerialize raw = (Std_.pure ThirdPartyCapId)-instance (Classes.Marshal s (ThirdPartyCapId)) where+instance (Classes.Marshal s ThirdPartyCapId) where     marshalInto raw_ value_ = case value_ of         (ThirdPartyCapId) ->             (do                 (Std_.pure ())                 )-instance (Classes.Cerialize s (ThirdPartyCapId))-instance (Classes.Cerialize s (V.Vector (ThirdPartyCapId))) where+instance (Classes.Cerialize s ThirdPartyCapId)+instance (Classes.Cerialize s (V.Vector ThirdPartyCapId)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (ThirdPartyCapId)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector ThirdPartyCapId))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (ThirdPartyCapId))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector ThirdPartyCapId)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (ThirdPartyCapId)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector ThirdPartyCapId))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (ThirdPartyCapId))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector ThirdPartyCapId)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (ThirdPartyCapId)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector ThirdPartyCapId))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (ThirdPartyCapId))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector ThirdPartyCapId)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data JoinKeyPart      = JoinKeyPart @@ -183,16 +184,16 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (JoinKeyPart)) where+instance (Default.Default JoinKeyPart) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (JoinKeyPart)) where+instance (Classes.FromStruct Message.Const JoinKeyPart) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (JoinKeyPart)) where-    type Cerial msg (JoinKeyPart) = (Capnp.Gen.ById.Xa184c7885cdaf2a1.JoinKeyPart msg)+instance (Classes.Decerialize JoinKeyPart) where+    type Cerial msg JoinKeyPart = (Capnp.Gen.ById.Xa184c7885cdaf2a1.JoinKeyPart msg)     decerialize raw = (JoinKeyPart <$> (Capnp.Gen.ById.Xa184c7885cdaf2a1.get_JoinKeyPart'joinId raw)                                    <*> (Capnp.Gen.ById.Xa184c7885cdaf2a1.get_JoinKeyPart'partCount raw)                                    <*> (Capnp.Gen.ById.Xa184c7885cdaf2a1.get_JoinKeyPart'partNum raw))-instance (Classes.Marshal s (JoinKeyPart)) where+instance (Classes.Marshal s JoinKeyPart) where     marshalInto raw_ value_ = case value_ of         JoinKeyPart{..} ->             (do@@ -201,20 +202,20 @@                 (Capnp.Gen.ById.Xa184c7885cdaf2a1.set_JoinKeyPart'partNum raw_ partNum)                 (Std_.pure ())                 )-instance (Classes.Cerialize s (JoinKeyPart))-instance (Classes.Cerialize s (V.Vector (JoinKeyPart))) where+instance (Classes.Cerialize s JoinKeyPart)+instance (Classes.Cerialize s (V.Vector JoinKeyPart)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (JoinKeyPart)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector JoinKeyPart))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (JoinKeyPart))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector JoinKeyPart)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (JoinKeyPart)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector JoinKeyPart))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (JoinKeyPart))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector JoinKeyPart)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (JoinKeyPart)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector JoinKeyPart))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (JoinKeyPart))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector JoinKeyPart)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data JoinResult      = JoinResult @@ -224,16 +225,16 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (JoinResult)) where+instance (Default.Default JoinResult) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (JoinResult)) where+instance (Classes.FromStruct Message.Const JoinResult) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (JoinResult)) where-    type Cerial msg (JoinResult) = (Capnp.Gen.ById.Xa184c7885cdaf2a1.JoinResult msg)+instance (Classes.Decerialize JoinResult) where+    type Cerial msg JoinResult = (Capnp.Gen.ById.Xa184c7885cdaf2a1.JoinResult msg)     decerialize raw = (JoinResult <$> (Capnp.Gen.ById.Xa184c7885cdaf2a1.get_JoinResult'joinId raw)                                   <*> (Capnp.Gen.ById.Xa184c7885cdaf2a1.get_JoinResult'succeeded raw)                                   <*> ((Capnp.Gen.ById.Xa184c7885cdaf2a1.get_JoinResult'cap raw) >>= Classes.decerialize))-instance (Classes.Marshal s (JoinResult)) where+instance (Classes.Marshal s JoinResult) where     marshalInto raw_ value_ = case value_ of         JoinResult{..} ->             (do@@ -242,20 +243,20 @@                 ((Classes.cerialize (Untyped.message raw_) cap) >>= (Capnp.Gen.ById.Xa184c7885cdaf2a1.set_JoinResult'cap raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (JoinResult))-instance (Classes.Cerialize s (V.Vector (JoinResult))) where+instance (Classes.Cerialize s JoinResult)+instance (Classes.Cerialize s (V.Vector JoinResult)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (JoinResult)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector JoinResult))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (JoinResult))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector JoinResult)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (JoinResult)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector JoinResult))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (JoinResult))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector JoinResult)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (JoinResult)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector JoinResult))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (JoinResult))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector JoinResult)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec instance (Classes.Decerialize Capnp.Gen.ById.Xa184c7885cdaf2a1.Side) where     type Cerial msg Capnp.Gen.ById.Xa184c7885cdaf2a1.Side = Capnp.Gen.ById.Xa184c7885cdaf2a1.Side
gen/lib/Capnp/Gen/Capnp/Schema.hs view
@@ -10,6 +10,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.Capnp.Schema where import qualified Capnp.Message as Message import qualified Capnp.Untyped as Untyped
+ gen/lib/Capnp/Gen/Capnp/Schema/New.hs view
@@ -0,0 +1,2220 @@+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE EmptyDataDeriving #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE UndecidableInstances #-}+{-# LANGUAGE OverloadedLabels #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE RecordWildCards #-}+{-# OPTIONS_GHC -Wno-unused-imports #-}+{-# OPTIONS_GHC -Wno-dodgy-exports #-}+{-# OPTIONS_GHC -Wno-unused-matches #-}+{-# OPTIONS_GHC -Wno-orphans #-}+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-}+module Capnp.Gen.Capnp.Schema.New where+import qualified Capnp.Repr as R+import qualified Capnp.Repr.Parsed as RP+import qualified Capnp.New.Basics as Basics+import qualified GHC.OverloadedLabels as OL+import qualified Capnp.GenHelpers.New as GH+import qualified Capnp.New.Classes as C+import qualified GHC.Generics as Generics+import qualified Capnp.GenHelpers.ReExports.Data.ByteString as BS+import qualified Prelude as Std_+import qualified Data.Word as Std_+import qualified Data.Int as Std_+import Prelude ((<$>), (<*>), (>>=))+data Node +type instance (R.ReprFor Node) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Node) where+    numStructWords  = 5+    numStructPtrs  = 6+instance (C.Allocate Node) where+    type AllocHint Node = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Node (C.Parsed Node))+instance (C.AllocateList Node) where+    type ListAllocHint Node = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Node (C.Parsed Node))+data instance C.Parsed Node+    = Node +        {id :: (RP.Parsed Std_.Word64)+        ,displayName :: (RP.Parsed Basics.Text)+        ,displayNamePrefixLength :: (RP.Parsed Std_.Word32)+        ,scopeId :: (RP.Parsed Std_.Word64)+        ,nestedNodes :: (RP.Parsed (R.List Node'NestedNode))+        ,annotations :: (RP.Parsed (R.List Annotation))+        ,parameters :: (RP.Parsed (R.List Node'Parameter))+        ,isGeneric :: (RP.Parsed Std_.Bool)+        ,union' :: (C.Parsed (GH.Which Node))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Node))+deriving instance (Std_.Eq (C.Parsed Node))+instance (C.Parse Node (C.Parsed Node)) where+    parse raw_ = (Node <$> (GH.parseField #id raw_)+                       <*> (GH.parseField #displayName raw_)+                       <*> (GH.parseField #displayNamePrefixLength raw_)+                       <*> (GH.parseField #scopeId raw_)+                       <*> (GH.parseField #nestedNodes raw_)+                       <*> (GH.parseField #annotations raw_)+                       <*> (GH.parseField #parameters raw_)+                       <*> (GH.parseField #isGeneric raw_)+                       <*> (C.parse (GH.structUnion raw_)))+instance (C.Marshal Node (C.Parsed Node)) where+    marshalInto raw_ Node{..} = (do+        (GH.encodeField #id id raw_)+        (GH.encodeField #displayName displayName raw_)+        (GH.encodeField #displayNamePrefixLength displayNamePrefixLength raw_)+        (GH.encodeField #scopeId scopeId raw_)+        (GH.encodeField #nestedNodes nestedNodes raw_)+        (GH.encodeField #annotations annotations raw_)+        (GH.encodeField #parameters parameters raw_)+        (GH.encodeField #isGeneric isGeneric raw_)+        (C.marshalInto (GH.structUnion raw_) union')+        )+instance (GH.HasUnion Node) where+    unionField  = (GH.dataField 32 1 16 0)+    data RawWhich mut_ Node+        = RW_Node'file (R.Raw mut_ ())+        | RW_Node'struct (R.Raw mut_ Node'struct)+        | RW_Node'enum (R.Raw mut_ Node'enum)+        | RW_Node'interface (R.Raw mut_ Node'interface)+        | RW_Node'const (R.Raw mut_ Node'const)+        | RW_Node'annotation (R.Raw mut_ Node'annotation)+        | RW_Node'unknown' Std_.Word16+    internalWhich tag_ struct_ = case tag_ of+        0 ->+            (RW_Node'file <$> (GH.readVariant #file struct_))+        1 ->+            (RW_Node'struct <$> (GH.readVariant #struct struct_))+        2 ->+            (RW_Node'enum <$> (GH.readVariant #enum struct_))+        3 ->+            (RW_Node'interface <$> (GH.readVariant #interface struct_))+        4 ->+            (RW_Node'const <$> (GH.readVariant #const struct_))+        5 ->+            (RW_Node'annotation <$> (GH.readVariant #annotation struct_))+        _ ->+            (Std_.pure (RW_Node'unknown' tag_))+    data Which Node+instance (GH.HasVariant "file" GH.Slot Node ()) where+    variantByLabel  = (GH.Variant GH.voidField 0)+instance (GH.HasVariant "struct" GH.Group Node Node'struct) where+    variantByLabel  = (GH.Variant GH.groupField 1)+instance (GH.HasVariant "enum" GH.Group Node Node'enum) where+    variantByLabel  = (GH.Variant GH.groupField 2)+instance (GH.HasVariant "interface" GH.Group Node Node'interface) where+    variantByLabel  = (GH.Variant GH.groupField 3)+instance (GH.HasVariant "const" GH.Group Node Node'const) where+    variantByLabel  = (GH.Variant GH.groupField 4)+instance (GH.HasVariant "annotation" GH.Group Node Node'annotation) where+    variantByLabel  = (GH.Variant GH.groupField 5)+data instance C.Parsed (GH.Which Node)+    = Node'file +    | Node'struct (RP.Parsed Node'struct)+    | Node'enum (RP.Parsed Node'enum)+    | Node'interface (RP.Parsed Node'interface)+    | Node'const (RP.Parsed Node'const)+    | Node'annotation (RP.Parsed Node'annotation)+    | Node'unknown' Std_.Word16+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed (GH.Which Node)))+deriving instance (Std_.Eq (C.Parsed (GH.Which Node)))+instance (C.Parse (GH.Which Node) (C.Parsed (GH.Which Node))) where+    parse raw_ = (do+        rawWhich_ <- (GH.unionWhich raw_)+        case rawWhich_ of+            (RW_Node'file _) ->+                (Std_.pure Node'file)+            (RW_Node'struct rawArg_) ->+                (Node'struct <$> (C.parse rawArg_))+            (RW_Node'enum rawArg_) ->+                (Node'enum <$> (C.parse rawArg_))+            (RW_Node'interface rawArg_) ->+                (Node'interface <$> (C.parse rawArg_))+            (RW_Node'const rawArg_) ->+                (Node'const <$> (C.parse rawArg_))+            (RW_Node'annotation rawArg_) ->+                (Node'annotation <$> (C.parse rawArg_))+            (RW_Node'unknown' tag_) ->+                (Std_.pure (Node'unknown' tag_))+        )+instance (C.Marshal (GH.Which Node) (C.Parsed (GH.Which Node))) where+    marshalInto raw_ parsed_ = case parsed_ of+        (Node'file) ->+            (GH.encodeVariant #file () (GH.unionStruct raw_))+        (Node'struct arg_) ->+            (do+                rawGroup_ <- (GH.initVariant #struct (GH.unionStruct raw_))+                (C.marshalInto rawGroup_ arg_)+                )+        (Node'enum arg_) ->+            (do+                rawGroup_ <- (GH.initVariant #enum (GH.unionStruct raw_))+                (C.marshalInto rawGroup_ arg_)+                )+        (Node'interface arg_) ->+            (do+                rawGroup_ <- (GH.initVariant #interface (GH.unionStruct raw_))+                (C.marshalInto rawGroup_ arg_)+                )+        (Node'const arg_) ->+            (do+                rawGroup_ <- (GH.initVariant #const (GH.unionStruct raw_))+                (C.marshalInto rawGroup_ arg_)+                )+        (Node'annotation arg_) ->+            (do+                rawGroup_ <- (GH.initVariant #annotation (GH.unionStruct raw_))+                (C.marshalInto rawGroup_ arg_)+                )+        (Node'unknown' tag_) ->+            (GH.encodeField GH.unionField tag_ (GH.unionStruct raw_))+instance (GH.HasField "id" GH.Slot Node Std_.Word64) where+    fieldByLabel  = (GH.dataField 0 0 64 0)+instance (GH.HasField "displayName" GH.Slot Node Basics.Text) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "displayNamePrefixLength" GH.Slot Node Std_.Word32) where+    fieldByLabel  = (GH.dataField 0 1 32 0)+instance (GH.HasField "scopeId" GH.Slot Node Std_.Word64) where+    fieldByLabel  = (GH.dataField 0 2 64 0)+instance (GH.HasField "nestedNodes" GH.Slot Node (R.List Node'NestedNode)) where+    fieldByLabel  = (GH.ptrField 1)+instance (GH.HasField "annotations" GH.Slot Node (R.List Annotation)) where+    fieldByLabel  = (GH.ptrField 2)+instance (GH.HasField "parameters" GH.Slot Node (R.List Node'Parameter)) where+    fieldByLabel  = (GH.ptrField 5)+instance (GH.HasField "isGeneric" GH.Slot Node Std_.Bool) where+    fieldByLabel  = (GH.dataField 32 4 1 0)+data Node'struct +type instance (R.ReprFor Node'struct) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Node'struct) where+    numStructWords  = 5+    numStructPtrs  = 6+instance (C.Allocate Node'struct) where+    type AllocHint Node'struct = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Node'struct (C.Parsed Node'struct))+instance (C.AllocateList Node'struct) where+    type ListAllocHint Node'struct = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Node'struct (C.Parsed Node'struct))+data instance C.Parsed Node'struct+    = Node'struct' +        {dataWordCount :: (RP.Parsed Std_.Word16)+        ,pointerCount :: (RP.Parsed Std_.Word16)+        ,preferredListEncoding :: (RP.Parsed ElementSize)+        ,isGroup :: (RP.Parsed Std_.Bool)+        ,discriminantCount :: (RP.Parsed Std_.Word16)+        ,discriminantOffset :: (RP.Parsed Std_.Word32)+        ,fields :: (RP.Parsed (R.List Field))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Node'struct))+deriving instance (Std_.Eq (C.Parsed Node'struct))+instance (C.Parse Node'struct (C.Parsed Node'struct)) where+    parse raw_ = (Node'struct' <$> (GH.parseField #dataWordCount raw_)+                               <*> (GH.parseField #pointerCount raw_)+                               <*> (GH.parseField #preferredListEncoding raw_)+                               <*> (GH.parseField #isGroup raw_)+                               <*> (GH.parseField #discriminantCount raw_)+                               <*> (GH.parseField #discriminantOffset raw_)+                               <*> (GH.parseField #fields raw_))+instance (C.Marshal Node'struct (C.Parsed Node'struct)) where+    marshalInto raw_ Node'struct'{..} = (do+        (GH.encodeField #dataWordCount dataWordCount raw_)+        (GH.encodeField #pointerCount pointerCount raw_)+        (GH.encodeField #preferredListEncoding preferredListEncoding raw_)+        (GH.encodeField #isGroup isGroup raw_)+        (GH.encodeField #discriminantCount discriminantCount raw_)+        (GH.encodeField #discriminantOffset discriminantOffset raw_)+        (GH.encodeField #fields fields raw_)+        (Std_.pure ())+        )+instance (GH.HasField "dataWordCount" GH.Slot Node'struct Std_.Word16) where+    fieldByLabel  = (GH.dataField 48 1 16 0)+instance (GH.HasField "pointerCount" GH.Slot Node'struct Std_.Word16) where+    fieldByLabel  = (GH.dataField 0 3 16 0)+instance (GH.HasField "preferredListEncoding" GH.Slot Node'struct ElementSize) where+    fieldByLabel  = (GH.dataField 16 3 16 0)+instance (GH.HasField "isGroup" GH.Slot Node'struct Std_.Bool) where+    fieldByLabel  = (GH.dataField 32 3 1 0)+instance (GH.HasField "discriminantCount" GH.Slot Node'struct Std_.Word16) where+    fieldByLabel  = (GH.dataField 48 3 16 0)+instance (GH.HasField "discriminantOffset" GH.Slot Node'struct Std_.Word32) where+    fieldByLabel  = (GH.dataField 0 4 32 0)+instance (GH.HasField "fields" GH.Slot Node'struct (R.List Field)) where+    fieldByLabel  = (GH.ptrField 3)+data Node'enum +type instance (R.ReprFor Node'enum) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Node'enum) where+    numStructWords  = 5+    numStructPtrs  = 6+instance (C.Allocate Node'enum) where+    type AllocHint Node'enum = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Node'enum (C.Parsed Node'enum))+instance (C.AllocateList Node'enum) where+    type ListAllocHint Node'enum = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Node'enum (C.Parsed Node'enum))+data instance C.Parsed Node'enum+    = Node'enum' +        {enumerants :: (RP.Parsed (R.List Enumerant))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Node'enum))+deriving instance (Std_.Eq (C.Parsed Node'enum))+instance (C.Parse Node'enum (C.Parsed Node'enum)) where+    parse raw_ = (Node'enum' <$> (GH.parseField #enumerants raw_))+instance (C.Marshal Node'enum (C.Parsed Node'enum)) where+    marshalInto raw_ Node'enum'{..} = (do+        (GH.encodeField #enumerants enumerants raw_)+        (Std_.pure ())+        )+instance (GH.HasField "enumerants" GH.Slot Node'enum (R.List Enumerant)) where+    fieldByLabel  = (GH.ptrField 3)+data Node'interface +type instance (R.ReprFor Node'interface) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Node'interface) where+    numStructWords  = 5+    numStructPtrs  = 6+instance (C.Allocate Node'interface) where+    type AllocHint Node'interface = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Node'interface (C.Parsed Node'interface))+instance (C.AllocateList Node'interface) where+    type ListAllocHint Node'interface = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Node'interface (C.Parsed Node'interface))+data instance C.Parsed Node'interface+    = Node'interface' +        {methods :: (RP.Parsed (R.List Method))+        ,superclasses :: (RP.Parsed (R.List Superclass))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Node'interface))+deriving instance (Std_.Eq (C.Parsed Node'interface))+instance (C.Parse Node'interface (C.Parsed Node'interface)) where+    parse raw_ = (Node'interface' <$> (GH.parseField #methods raw_)+                                  <*> (GH.parseField #superclasses raw_))+instance (C.Marshal Node'interface (C.Parsed Node'interface)) where+    marshalInto raw_ Node'interface'{..} = (do+        (GH.encodeField #methods methods raw_)+        (GH.encodeField #superclasses superclasses raw_)+        (Std_.pure ())+        )+instance (GH.HasField "methods" GH.Slot Node'interface (R.List Method)) where+    fieldByLabel  = (GH.ptrField 3)+instance (GH.HasField "superclasses" GH.Slot Node'interface (R.List Superclass)) where+    fieldByLabel  = (GH.ptrField 4)+data Node'const +type instance (R.ReprFor Node'const) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Node'const) where+    numStructWords  = 5+    numStructPtrs  = 6+instance (C.Allocate Node'const) where+    type AllocHint Node'const = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Node'const (C.Parsed Node'const))+instance (C.AllocateList Node'const) where+    type ListAllocHint Node'const = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Node'const (C.Parsed Node'const))+data instance C.Parsed Node'const+    = Node'const' +        {type_ :: (RP.Parsed Type)+        ,value :: (RP.Parsed Value)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Node'const))+deriving instance (Std_.Eq (C.Parsed Node'const))+instance (C.Parse Node'const (C.Parsed Node'const)) where+    parse raw_ = (Node'const' <$> (GH.parseField #type_ raw_)+                              <*> (GH.parseField #value raw_))+instance (C.Marshal Node'const (C.Parsed Node'const)) where+    marshalInto raw_ Node'const'{..} = (do+        (GH.encodeField #type_ type_ raw_)+        (GH.encodeField #value value raw_)+        (Std_.pure ())+        )+instance (GH.HasField "type_" GH.Slot Node'const Type) where+    fieldByLabel  = (GH.ptrField 3)+instance (GH.HasField "value" GH.Slot Node'const Value) where+    fieldByLabel  = (GH.ptrField 4)+data Node'annotation +type instance (R.ReprFor Node'annotation) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Node'annotation) where+    numStructWords  = 5+    numStructPtrs  = 6+instance (C.Allocate Node'annotation) where+    type AllocHint Node'annotation = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Node'annotation (C.Parsed Node'annotation))+instance (C.AllocateList Node'annotation) where+    type ListAllocHint Node'annotation = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Node'annotation (C.Parsed Node'annotation))+data instance C.Parsed Node'annotation+    = Node'annotation' +        {type_ :: (RP.Parsed Type)+        ,targetsFile :: (RP.Parsed Std_.Bool)+        ,targetsConst :: (RP.Parsed Std_.Bool)+        ,targetsEnum :: (RP.Parsed Std_.Bool)+        ,targetsEnumerant :: (RP.Parsed Std_.Bool)+        ,targetsStruct :: (RP.Parsed Std_.Bool)+        ,targetsField :: (RP.Parsed Std_.Bool)+        ,targetsUnion :: (RP.Parsed Std_.Bool)+        ,targetsGroup :: (RP.Parsed Std_.Bool)+        ,targetsInterface :: (RP.Parsed Std_.Bool)+        ,targetsMethod :: (RP.Parsed Std_.Bool)+        ,targetsParam :: (RP.Parsed Std_.Bool)+        ,targetsAnnotation :: (RP.Parsed Std_.Bool)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Node'annotation))+deriving instance (Std_.Eq (C.Parsed Node'annotation))+instance (C.Parse Node'annotation (C.Parsed Node'annotation)) where+    parse raw_ = (Node'annotation' <$> (GH.parseField #type_ raw_)+                                   <*> (GH.parseField #targetsFile raw_)+                                   <*> (GH.parseField #targetsConst raw_)+                                   <*> (GH.parseField #targetsEnum raw_)+                                   <*> (GH.parseField #targetsEnumerant raw_)+                                   <*> (GH.parseField #targetsStruct raw_)+                                   <*> (GH.parseField #targetsField raw_)+                                   <*> (GH.parseField #targetsUnion raw_)+                                   <*> (GH.parseField #targetsGroup raw_)+                                   <*> (GH.parseField #targetsInterface raw_)+                                   <*> (GH.parseField #targetsMethod raw_)+                                   <*> (GH.parseField #targetsParam raw_)+                                   <*> (GH.parseField #targetsAnnotation raw_))+instance (C.Marshal Node'annotation (C.Parsed Node'annotation)) where+    marshalInto raw_ Node'annotation'{..} = (do+        (GH.encodeField #type_ type_ raw_)+        (GH.encodeField #targetsFile targetsFile raw_)+        (GH.encodeField #targetsConst targetsConst raw_)+        (GH.encodeField #targetsEnum targetsEnum raw_)+        (GH.encodeField #targetsEnumerant targetsEnumerant raw_)+        (GH.encodeField #targetsStruct targetsStruct raw_)+        (GH.encodeField #targetsField targetsField raw_)+        (GH.encodeField #targetsUnion targetsUnion raw_)+        (GH.encodeField #targetsGroup targetsGroup raw_)+        (GH.encodeField #targetsInterface targetsInterface raw_)+        (GH.encodeField #targetsMethod targetsMethod raw_)+        (GH.encodeField #targetsParam targetsParam raw_)+        (GH.encodeField #targetsAnnotation targetsAnnotation raw_)+        (Std_.pure ())+        )+instance (GH.HasField "type_" GH.Slot Node'annotation Type) where+    fieldByLabel  = (GH.ptrField 3)+instance (GH.HasField "targetsFile" GH.Slot Node'annotation Std_.Bool) where+    fieldByLabel  = (GH.dataField 48 1 1 0)+instance (GH.HasField "targetsConst" GH.Slot Node'annotation Std_.Bool) where+    fieldByLabel  = (GH.dataField 49 1 1 0)+instance (GH.HasField "targetsEnum" GH.Slot Node'annotation Std_.Bool) where+    fieldByLabel  = (GH.dataField 50 1 1 0)+instance (GH.HasField "targetsEnumerant" GH.Slot Node'annotation Std_.Bool) where+    fieldByLabel  = (GH.dataField 51 1 1 0)+instance (GH.HasField "targetsStruct" GH.Slot Node'annotation Std_.Bool) where+    fieldByLabel  = (GH.dataField 52 1 1 0)+instance (GH.HasField "targetsField" GH.Slot Node'annotation Std_.Bool) where+    fieldByLabel  = (GH.dataField 53 1 1 0)+instance (GH.HasField "targetsUnion" GH.Slot Node'annotation Std_.Bool) where+    fieldByLabel  = (GH.dataField 54 1 1 0)+instance (GH.HasField "targetsGroup" GH.Slot Node'annotation Std_.Bool) where+    fieldByLabel  = (GH.dataField 55 1 1 0)+instance (GH.HasField "targetsInterface" GH.Slot Node'annotation Std_.Bool) where+    fieldByLabel  = (GH.dataField 56 1 1 0)+instance (GH.HasField "targetsMethod" GH.Slot Node'annotation Std_.Bool) where+    fieldByLabel  = (GH.dataField 57 1 1 0)+instance (GH.HasField "targetsParam" GH.Slot Node'annotation Std_.Bool) where+    fieldByLabel  = (GH.dataField 58 1 1 0)+instance (GH.HasField "targetsAnnotation" GH.Slot Node'annotation Std_.Bool) where+    fieldByLabel  = (GH.dataField 59 1 1 0)+data Node'Parameter +type instance (R.ReprFor Node'Parameter) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Node'Parameter) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate Node'Parameter) where+    type AllocHint Node'Parameter = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Node'Parameter (C.Parsed Node'Parameter))+instance (C.AllocateList Node'Parameter) where+    type ListAllocHint Node'Parameter = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Node'Parameter (C.Parsed Node'Parameter))+data instance C.Parsed Node'Parameter+    = Node'Parameter +        {name :: (RP.Parsed Basics.Text)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Node'Parameter))+deriving instance (Std_.Eq (C.Parsed Node'Parameter))+instance (C.Parse Node'Parameter (C.Parsed Node'Parameter)) where+    parse raw_ = (Node'Parameter <$> (GH.parseField #name raw_))+instance (C.Marshal Node'Parameter (C.Parsed Node'Parameter)) where+    marshalInto raw_ Node'Parameter{..} = (do+        (GH.encodeField #name name raw_)+        (Std_.pure ())+        )+instance (GH.HasField "name" GH.Slot Node'Parameter Basics.Text) where+    fieldByLabel  = (GH.ptrField 0)+data Node'NestedNode +type instance (R.ReprFor Node'NestedNode) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Node'NestedNode) where+    numStructWords  = 1+    numStructPtrs  = 1+instance (C.Allocate Node'NestedNode) where+    type AllocHint Node'NestedNode = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Node'NestedNode (C.Parsed Node'NestedNode))+instance (C.AllocateList Node'NestedNode) where+    type ListAllocHint Node'NestedNode = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Node'NestedNode (C.Parsed Node'NestedNode))+data instance C.Parsed Node'NestedNode+    = Node'NestedNode +        {name :: (RP.Parsed Basics.Text)+        ,id :: (RP.Parsed Std_.Word64)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Node'NestedNode))+deriving instance (Std_.Eq (C.Parsed Node'NestedNode))+instance (C.Parse Node'NestedNode (C.Parsed Node'NestedNode)) where+    parse raw_ = (Node'NestedNode <$> (GH.parseField #name raw_)+                                  <*> (GH.parseField #id raw_))+instance (C.Marshal Node'NestedNode (C.Parsed Node'NestedNode)) where+    marshalInto raw_ Node'NestedNode{..} = (do+        (GH.encodeField #name name raw_)+        (GH.encodeField #id id raw_)+        (Std_.pure ())+        )+instance (GH.HasField "name" GH.Slot Node'NestedNode Basics.Text) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "id" GH.Slot Node'NestedNode Std_.Word64) where+    fieldByLabel  = (GH.dataField 0 0 64 0)+data Node'SourceInfo +type instance (R.ReprFor Node'SourceInfo) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Node'SourceInfo) where+    numStructWords  = 1+    numStructPtrs  = 2+instance (C.Allocate Node'SourceInfo) where+    type AllocHint Node'SourceInfo = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Node'SourceInfo (C.Parsed Node'SourceInfo))+instance (C.AllocateList Node'SourceInfo) where+    type ListAllocHint Node'SourceInfo = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Node'SourceInfo (C.Parsed Node'SourceInfo))+data instance C.Parsed Node'SourceInfo+    = Node'SourceInfo +        {id :: (RP.Parsed Std_.Word64)+        ,docComment :: (RP.Parsed Basics.Text)+        ,members :: (RP.Parsed (R.List Node'SourceInfo'Member))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Node'SourceInfo))+deriving instance (Std_.Eq (C.Parsed Node'SourceInfo))+instance (C.Parse Node'SourceInfo (C.Parsed Node'SourceInfo)) where+    parse raw_ = (Node'SourceInfo <$> (GH.parseField #id raw_)+                                  <*> (GH.parseField #docComment raw_)+                                  <*> (GH.parseField #members raw_))+instance (C.Marshal Node'SourceInfo (C.Parsed Node'SourceInfo)) where+    marshalInto raw_ Node'SourceInfo{..} = (do+        (GH.encodeField #id id raw_)+        (GH.encodeField #docComment docComment raw_)+        (GH.encodeField #members members raw_)+        (Std_.pure ())+        )+instance (GH.HasField "id" GH.Slot Node'SourceInfo Std_.Word64) where+    fieldByLabel  = (GH.dataField 0 0 64 0)+instance (GH.HasField "docComment" GH.Slot Node'SourceInfo Basics.Text) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "members" GH.Slot Node'SourceInfo (R.List Node'SourceInfo'Member)) where+    fieldByLabel  = (GH.ptrField 1)+data Node'SourceInfo'Member +type instance (R.ReprFor Node'SourceInfo'Member) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Node'SourceInfo'Member) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate Node'SourceInfo'Member) where+    type AllocHint Node'SourceInfo'Member = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Node'SourceInfo'Member (C.Parsed Node'SourceInfo'Member))+instance (C.AllocateList Node'SourceInfo'Member) where+    type ListAllocHint Node'SourceInfo'Member = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Node'SourceInfo'Member (C.Parsed Node'SourceInfo'Member))+data instance C.Parsed Node'SourceInfo'Member+    = Node'SourceInfo'Member +        {docComment :: (RP.Parsed Basics.Text)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Node'SourceInfo'Member))+deriving instance (Std_.Eq (C.Parsed Node'SourceInfo'Member))+instance (C.Parse Node'SourceInfo'Member (C.Parsed Node'SourceInfo'Member)) where+    parse raw_ = (Node'SourceInfo'Member <$> (GH.parseField #docComment raw_))+instance (C.Marshal Node'SourceInfo'Member (C.Parsed Node'SourceInfo'Member)) where+    marshalInto raw_ Node'SourceInfo'Member{..} = (do+        (GH.encodeField #docComment docComment raw_)+        (Std_.pure ())+        )+instance (GH.HasField "docComment" GH.Slot Node'SourceInfo'Member Basics.Text) where+    fieldByLabel  = (GH.ptrField 0)+data Field +type instance (R.ReprFor Field) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Field) where+    numStructWords  = 3+    numStructPtrs  = 4+instance (C.Allocate Field) where+    type AllocHint Field = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Field (C.Parsed Field))+instance (C.AllocateList Field) where+    type ListAllocHint Field = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Field (C.Parsed Field))+data instance C.Parsed Field+    = Field +        {name :: (RP.Parsed Basics.Text)+        ,codeOrder :: (RP.Parsed Std_.Word16)+        ,annotations :: (RP.Parsed (R.List Annotation))+        ,discriminantValue :: (RP.Parsed Std_.Word16)+        ,ordinal :: (RP.Parsed Field'ordinal)+        ,union' :: (C.Parsed (GH.Which Field))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Field))+deriving instance (Std_.Eq (C.Parsed Field))+instance (C.Parse Field (C.Parsed Field)) where+    parse raw_ = (Field <$> (GH.parseField #name raw_)+                        <*> (GH.parseField #codeOrder raw_)+                        <*> (GH.parseField #annotations raw_)+                        <*> (GH.parseField #discriminantValue raw_)+                        <*> (GH.parseField #ordinal raw_)+                        <*> (C.parse (GH.structUnion raw_)))+instance (C.Marshal Field (C.Parsed Field)) where+    marshalInto raw_ Field{..} = (do+        (GH.encodeField #name name raw_)+        (GH.encodeField #codeOrder codeOrder raw_)+        (GH.encodeField #annotations annotations raw_)+        (GH.encodeField #discriminantValue discriminantValue raw_)+        (do+            group_ <- (GH.readField #ordinal raw_)+            (C.marshalInto group_ ordinal)+            )+        (C.marshalInto (GH.structUnion raw_) union')+        )+instance (GH.HasUnion Field) where+    unionField  = (GH.dataField 0 1 16 0)+    data RawWhich mut_ Field+        = RW_Field'slot (R.Raw mut_ Field'slot)+        | RW_Field'group (R.Raw mut_ Field'group)+        | RW_Field'unknown' Std_.Word16+    internalWhich tag_ struct_ = case tag_ of+        0 ->+            (RW_Field'slot <$> (GH.readVariant #slot struct_))+        1 ->+            (RW_Field'group <$> (GH.readVariant #group struct_))+        _ ->+            (Std_.pure (RW_Field'unknown' tag_))+    data Which Field+instance (GH.HasVariant "slot" GH.Group Field Field'slot) where+    variantByLabel  = (GH.Variant GH.groupField 0)+instance (GH.HasVariant "group" GH.Group Field Field'group) where+    variantByLabel  = (GH.Variant GH.groupField 1)+data instance C.Parsed (GH.Which Field)+    = Field'slot (RP.Parsed Field'slot)+    | Field'group (RP.Parsed Field'group)+    | Field'unknown' Std_.Word16+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed (GH.Which Field)))+deriving instance (Std_.Eq (C.Parsed (GH.Which Field)))+instance (C.Parse (GH.Which Field) (C.Parsed (GH.Which Field))) where+    parse raw_ = (do+        rawWhich_ <- (GH.unionWhich raw_)+        case rawWhich_ of+            (RW_Field'slot rawArg_) ->+                (Field'slot <$> (C.parse rawArg_))+            (RW_Field'group rawArg_) ->+                (Field'group <$> (C.parse rawArg_))+            (RW_Field'unknown' tag_) ->+                (Std_.pure (Field'unknown' tag_))+        )+instance (C.Marshal (GH.Which Field) (C.Parsed (GH.Which Field))) where+    marshalInto raw_ parsed_ = case parsed_ of+        (Field'slot arg_) ->+            (do+                rawGroup_ <- (GH.initVariant #slot (GH.unionStruct raw_))+                (C.marshalInto rawGroup_ arg_)+                )+        (Field'group arg_) ->+            (do+                rawGroup_ <- (GH.initVariant #group (GH.unionStruct raw_))+                (C.marshalInto rawGroup_ arg_)+                )+        (Field'unknown' tag_) ->+            (GH.encodeField GH.unionField tag_ (GH.unionStruct raw_))+instance (GH.HasField "name" GH.Slot Field Basics.Text) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "codeOrder" GH.Slot Field Std_.Word16) where+    fieldByLabel  = (GH.dataField 0 0 16 0)+instance (GH.HasField "annotations" GH.Slot Field (R.List Annotation)) where+    fieldByLabel  = (GH.ptrField 1)+instance (GH.HasField "discriminantValue" GH.Slot Field Std_.Word16) where+    fieldByLabel  = (GH.dataField 16 0 16 65535)+instance (GH.HasField "ordinal" GH.Group Field Field'ordinal) where+    fieldByLabel  = GH.groupField+data Field'slot +type instance (R.ReprFor Field'slot) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Field'slot) where+    numStructWords  = 3+    numStructPtrs  = 4+instance (C.Allocate Field'slot) where+    type AllocHint Field'slot = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Field'slot (C.Parsed Field'slot))+instance (C.AllocateList Field'slot) where+    type ListAllocHint Field'slot = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Field'slot (C.Parsed Field'slot))+data instance C.Parsed Field'slot+    = Field'slot' +        {offset :: (RP.Parsed Std_.Word32)+        ,type_ :: (RP.Parsed Type)+        ,defaultValue :: (RP.Parsed Value)+        ,hadExplicitDefault :: (RP.Parsed Std_.Bool)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Field'slot))+deriving instance (Std_.Eq (C.Parsed Field'slot))+instance (C.Parse Field'slot (C.Parsed Field'slot)) where+    parse raw_ = (Field'slot' <$> (GH.parseField #offset raw_)+                              <*> (GH.parseField #type_ raw_)+                              <*> (GH.parseField #defaultValue raw_)+                              <*> (GH.parseField #hadExplicitDefault raw_))+instance (C.Marshal Field'slot (C.Parsed Field'slot)) where+    marshalInto raw_ Field'slot'{..} = (do+        (GH.encodeField #offset offset raw_)+        (GH.encodeField #type_ type_ raw_)+        (GH.encodeField #defaultValue defaultValue raw_)+        (GH.encodeField #hadExplicitDefault hadExplicitDefault raw_)+        (Std_.pure ())+        )+instance (GH.HasField "offset" GH.Slot Field'slot Std_.Word32) where+    fieldByLabel  = (GH.dataField 32 0 32 0)+instance (GH.HasField "type_" GH.Slot Field'slot Type) where+    fieldByLabel  = (GH.ptrField 2)+instance (GH.HasField "defaultValue" GH.Slot Field'slot Value) where+    fieldByLabel  = (GH.ptrField 3)+instance (GH.HasField "hadExplicitDefault" GH.Slot Field'slot Std_.Bool) where+    fieldByLabel  = (GH.dataField 0 2 1 0)+data Field'group +type instance (R.ReprFor Field'group) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Field'group) where+    numStructWords  = 3+    numStructPtrs  = 4+instance (C.Allocate Field'group) where+    type AllocHint Field'group = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Field'group (C.Parsed Field'group))+instance (C.AllocateList Field'group) where+    type ListAllocHint Field'group = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Field'group (C.Parsed Field'group))+data instance C.Parsed Field'group+    = Field'group' +        {typeId :: (RP.Parsed Std_.Word64)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Field'group))+deriving instance (Std_.Eq (C.Parsed Field'group))+instance (C.Parse Field'group (C.Parsed Field'group)) where+    parse raw_ = (Field'group' <$> (GH.parseField #typeId raw_))+instance (C.Marshal Field'group (C.Parsed Field'group)) where+    marshalInto raw_ Field'group'{..} = (do+        (GH.encodeField #typeId typeId raw_)+        (Std_.pure ())+        )+instance (GH.HasField "typeId" GH.Slot Field'group Std_.Word64) where+    fieldByLabel  = (GH.dataField 0 2 64 0)+data Field'ordinal +type instance (R.ReprFor Field'ordinal) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Field'ordinal) where+    numStructWords  = 3+    numStructPtrs  = 4+instance (C.Allocate Field'ordinal) where+    type AllocHint Field'ordinal = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Field'ordinal (C.Parsed Field'ordinal))+instance (C.AllocateList Field'ordinal) where+    type ListAllocHint Field'ordinal = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Field'ordinal (C.Parsed Field'ordinal))+data instance C.Parsed Field'ordinal+    = Field'ordinal' +        {union' :: (C.Parsed (GH.Which Field'ordinal))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Field'ordinal))+deriving instance (Std_.Eq (C.Parsed Field'ordinal))+instance (C.Parse Field'ordinal (C.Parsed Field'ordinal)) where+    parse raw_ = (Field'ordinal' <$> (C.parse (GH.structUnion raw_)))+instance (C.Marshal Field'ordinal (C.Parsed Field'ordinal)) where+    marshalInto raw_ Field'ordinal'{..} = (do+        (C.marshalInto (GH.structUnion raw_) union')+        )+instance (GH.HasUnion Field'ordinal) where+    unionField  = (GH.dataField 16 1 16 0)+    data RawWhich mut_ Field'ordinal+        = RW_Field'ordinal'implicit (R.Raw mut_ ())+        | RW_Field'ordinal'explicit (R.Raw mut_ Std_.Word16)+        | RW_Field'ordinal'unknown' Std_.Word16+    internalWhich tag_ struct_ = case tag_ of+        0 ->+            (RW_Field'ordinal'implicit <$> (GH.readVariant #implicit struct_))+        1 ->+            (RW_Field'ordinal'explicit <$> (GH.readVariant #explicit struct_))+        _ ->+            (Std_.pure (RW_Field'ordinal'unknown' tag_))+    data Which Field'ordinal+instance (GH.HasVariant "implicit" GH.Slot Field'ordinal ()) where+    variantByLabel  = (GH.Variant GH.voidField 0)+instance (GH.HasVariant "explicit" GH.Slot Field'ordinal Std_.Word16) where+    variantByLabel  = (GH.Variant (GH.dataField 32 1 16 0) 1)+data instance C.Parsed (GH.Which Field'ordinal)+    = Field'ordinal'implicit +    | Field'ordinal'explicit (RP.Parsed Std_.Word16)+    | Field'ordinal'unknown' Std_.Word16+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed (GH.Which Field'ordinal)))+deriving instance (Std_.Eq (C.Parsed (GH.Which Field'ordinal)))+instance (C.Parse (GH.Which Field'ordinal) (C.Parsed (GH.Which Field'ordinal))) where+    parse raw_ = (do+        rawWhich_ <- (GH.unionWhich raw_)+        case rawWhich_ of+            (RW_Field'ordinal'implicit _) ->+                (Std_.pure Field'ordinal'implicit)+            (RW_Field'ordinal'explicit rawArg_) ->+                (Field'ordinal'explicit <$> (C.parse rawArg_))+            (RW_Field'ordinal'unknown' tag_) ->+                (Std_.pure (Field'ordinal'unknown' tag_))+        )+instance (C.Marshal (GH.Which Field'ordinal) (C.Parsed (GH.Which Field'ordinal))) where+    marshalInto raw_ parsed_ = case parsed_ of+        (Field'ordinal'implicit) ->+            (GH.encodeVariant #implicit () (GH.unionStruct raw_))+        (Field'ordinal'explicit arg_) ->+            (GH.encodeVariant #explicit arg_ (GH.unionStruct raw_))+        (Field'ordinal'unknown' tag_) ->+            (GH.encodeField GH.unionField tag_ (GH.unionStruct raw_))+field'noDiscriminant :: Std_.Word16+field'noDiscriminant  = (C.fromWord 65535)+data Enumerant +type instance (R.ReprFor Enumerant) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Enumerant) where+    numStructWords  = 1+    numStructPtrs  = 2+instance (C.Allocate Enumerant) where+    type AllocHint Enumerant = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Enumerant (C.Parsed Enumerant))+instance (C.AllocateList Enumerant) where+    type ListAllocHint Enumerant = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Enumerant (C.Parsed Enumerant))+data instance C.Parsed Enumerant+    = Enumerant +        {name :: (RP.Parsed Basics.Text)+        ,codeOrder :: (RP.Parsed Std_.Word16)+        ,annotations :: (RP.Parsed (R.List Annotation))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Enumerant))+deriving instance (Std_.Eq (C.Parsed Enumerant))+instance (C.Parse Enumerant (C.Parsed Enumerant)) where+    parse raw_ = (Enumerant <$> (GH.parseField #name raw_)+                            <*> (GH.parseField #codeOrder raw_)+                            <*> (GH.parseField #annotations raw_))+instance (C.Marshal Enumerant (C.Parsed Enumerant)) where+    marshalInto raw_ Enumerant{..} = (do+        (GH.encodeField #name name raw_)+        (GH.encodeField #codeOrder codeOrder raw_)+        (GH.encodeField #annotations annotations raw_)+        (Std_.pure ())+        )+instance (GH.HasField "name" GH.Slot Enumerant Basics.Text) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "codeOrder" GH.Slot Enumerant Std_.Word16) where+    fieldByLabel  = (GH.dataField 0 0 16 0)+instance (GH.HasField "annotations" GH.Slot Enumerant (R.List Annotation)) where+    fieldByLabel  = (GH.ptrField 1)+data Superclass +type instance (R.ReprFor Superclass) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Superclass) where+    numStructWords  = 1+    numStructPtrs  = 1+instance (C.Allocate Superclass) where+    type AllocHint Superclass = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Superclass (C.Parsed Superclass))+instance (C.AllocateList Superclass) where+    type ListAllocHint Superclass = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Superclass (C.Parsed Superclass))+data instance C.Parsed Superclass+    = Superclass +        {id :: (RP.Parsed Std_.Word64)+        ,brand :: (RP.Parsed Brand)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Superclass))+deriving instance (Std_.Eq (C.Parsed Superclass))+instance (C.Parse Superclass (C.Parsed Superclass)) where+    parse raw_ = (Superclass <$> (GH.parseField #id raw_)+                             <*> (GH.parseField #brand raw_))+instance (C.Marshal Superclass (C.Parsed Superclass)) where+    marshalInto raw_ Superclass{..} = (do+        (GH.encodeField #id id raw_)+        (GH.encodeField #brand brand raw_)+        (Std_.pure ())+        )+instance (GH.HasField "id" GH.Slot Superclass Std_.Word64) where+    fieldByLabel  = (GH.dataField 0 0 64 0)+instance (GH.HasField "brand" GH.Slot Superclass Brand) where+    fieldByLabel  = (GH.ptrField 0)+data Method +type instance (R.ReprFor Method) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Method) where+    numStructWords  = 3+    numStructPtrs  = 5+instance (C.Allocate Method) where+    type AllocHint Method = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Method (C.Parsed Method))+instance (C.AllocateList Method) where+    type ListAllocHint Method = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Method (C.Parsed Method))+data instance C.Parsed Method+    = Method +        {name :: (RP.Parsed Basics.Text)+        ,codeOrder :: (RP.Parsed Std_.Word16)+        ,paramStructType :: (RP.Parsed Std_.Word64)+        ,resultStructType :: (RP.Parsed Std_.Word64)+        ,annotations :: (RP.Parsed (R.List Annotation))+        ,paramBrand :: (RP.Parsed Brand)+        ,resultBrand :: (RP.Parsed Brand)+        ,implicitParameters :: (RP.Parsed (R.List Node'Parameter))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Method))+deriving instance (Std_.Eq (C.Parsed Method))+instance (C.Parse Method (C.Parsed Method)) where+    parse raw_ = (Method <$> (GH.parseField #name raw_)+                         <*> (GH.parseField #codeOrder raw_)+                         <*> (GH.parseField #paramStructType raw_)+                         <*> (GH.parseField #resultStructType raw_)+                         <*> (GH.parseField #annotations raw_)+                         <*> (GH.parseField #paramBrand raw_)+                         <*> (GH.parseField #resultBrand raw_)+                         <*> (GH.parseField #implicitParameters raw_))+instance (C.Marshal Method (C.Parsed Method)) where+    marshalInto raw_ Method{..} = (do+        (GH.encodeField #name name raw_)+        (GH.encodeField #codeOrder codeOrder raw_)+        (GH.encodeField #paramStructType paramStructType raw_)+        (GH.encodeField #resultStructType resultStructType raw_)+        (GH.encodeField #annotations annotations raw_)+        (GH.encodeField #paramBrand paramBrand raw_)+        (GH.encodeField #resultBrand resultBrand raw_)+        (GH.encodeField #implicitParameters implicitParameters raw_)+        (Std_.pure ())+        )+instance (GH.HasField "name" GH.Slot Method Basics.Text) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "codeOrder" GH.Slot Method Std_.Word16) where+    fieldByLabel  = (GH.dataField 0 0 16 0)+instance (GH.HasField "paramStructType" GH.Slot Method Std_.Word64) where+    fieldByLabel  = (GH.dataField 0 1 64 0)+instance (GH.HasField "resultStructType" GH.Slot Method Std_.Word64) where+    fieldByLabel  = (GH.dataField 0 2 64 0)+instance (GH.HasField "annotations" GH.Slot Method (R.List Annotation)) where+    fieldByLabel  = (GH.ptrField 1)+instance (GH.HasField "paramBrand" GH.Slot Method Brand) where+    fieldByLabel  = (GH.ptrField 2)+instance (GH.HasField "resultBrand" GH.Slot Method Brand) where+    fieldByLabel  = (GH.ptrField 3)+instance (GH.HasField "implicitParameters" GH.Slot Method (R.List Node'Parameter)) where+    fieldByLabel  = (GH.ptrField 4)+data Type +type instance (R.ReprFor Type) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Type) where+    numStructWords  = 3+    numStructPtrs  = 1+instance (C.Allocate Type) where+    type AllocHint Type = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Type (C.Parsed Type))+instance (C.AllocateList Type) where+    type ListAllocHint Type = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Type (C.Parsed Type))+data instance C.Parsed Type+    = Type +        {union' :: (C.Parsed (GH.Which Type))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Type))+deriving instance (Std_.Eq (C.Parsed Type))+instance (C.Parse Type (C.Parsed Type)) where+    parse raw_ = (Type <$> (C.parse (GH.structUnion raw_)))+instance (C.Marshal Type (C.Parsed Type)) where+    marshalInto raw_ Type{..} = (do+        (C.marshalInto (GH.structUnion raw_) union')+        )+instance (GH.HasUnion Type) where+    unionField  = (GH.dataField 0 0 16 0)+    data RawWhich mut_ Type+        = RW_Type'void (R.Raw mut_ ())+        | RW_Type'bool (R.Raw mut_ ())+        | RW_Type'int8 (R.Raw mut_ ())+        | RW_Type'int16 (R.Raw mut_ ())+        | RW_Type'int32 (R.Raw mut_ ())+        | RW_Type'int64 (R.Raw mut_ ())+        | RW_Type'uint8 (R.Raw mut_ ())+        | RW_Type'uint16 (R.Raw mut_ ())+        | RW_Type'uint32 (R.Raw mut_ ())+        | RW_Type'uint64 (R.Raw mut_ ())+        | RW_Type'float32 (R.Raw mut_ ())+        | RW_Type'float64 (R.Raw mut_ ())+        | RW_Type'text (R.Raw mut_ ())+        | RW_Type'data_ (R.Raw mut_ ())+        | RW_Type'list (R.Raw mut_ Type'list)+        | RW_Type'enum (R.Raw mut_ Type'enum)+        | RW_Type'struct (R.Raw mut_ Type'struct)+        | RW_Type'interface (R.Raw mut_ Type'interface)+        | RW_Type'anyPointer (R.Raw mut_ Type'anyPointer)+        | RW_Type'unknown' Std_.Word16+    internalWhich tag_ struct_ = case tag_ of+        0 ->+            (RW_Type'void <$> (GH.readVariant #void struct_))+        1 ->+            (RW_Type'bool <$> (GH.readVariant #bool struct_))+        2 ->+            (RW_Type'int8 <$> (GH.readVariant #int8 struct_))+        3 ->+            (RW_Type'int16 <$> (GH.readVariant #int16 struct_))+        4 ->+            (RW_Type'int32 <$> (GH.readVariant #int32 struct_))+        5 ->+            (RW_Type'int64 <$> (GH.readVariant #int64 struct_))+        6 ->+            (RW_Type'uint8 <$> (GH.readVariant #uint8 struct_))+        7 ->+            (RW_Type'uint16 <$> (GH.readVariant #uint16 struct_))+        8 ->+            (RW_Type'uint32 <$> (GH.readVariant #uint32 struct_))+        9 ->+            (RW_Type'uint64 <$> (GH.readVariant #uint64 struct_))+        10 ->+            (RW_Type'float32 <$> (GH.readVariant #float32 struct_))+        11 ->+            (RW_Type'float64 <$> (GH.readVariant #float64 struct_))+        12 ->+            (RW_Type'text <$> (GH.readVariant #text struct_))+        13 ->+            (RW_Type'data_ <$> (GH.readVariant #data_ struct_))+        14 ->+            (RW_Type'list <$> (GH.readVariant #list struct_))+        15 ->+            (RW_Type'enum <$> (GH.readVariant #enum struct_))+        16 ->+            (RW_Type'struct <$> (GH.readVariant #struct struct_))+        17 ->+            (RW_Type'interface <$> (GH.readVariant #interface struct_))+        18 ->+            (RW_Type'anyPointer <$> (GH.readVariant #anyPointer struct_))+        _ ->+            (Std_.pure (RW_Type'unknown' tag_))+    data Which Type+instance (GH.HasVariant "void" GH.Slot Type ()) where+    variantByLabel  = (GH.Variant GH.voidField 0)+instance (GH.HasVariant "bool" GH.Slot Type ()) where+    variantByLabel  = (GH.Variant GH.voidField 1)+instance (GH.HasVariant "int8" GH.Slot Type ()) where+    variantByLabel  = (GH.Variant GH.voidField 2)+instance (GH.HasVariant "int16" GH.Slot Type ()) where+    variantByLabel  = (GH.Variant GH.voidField 3)+instance (GH.HasVariant "int32" GH.Slot Type ()) where+    variantByLabel  = (GH.Variant GH.voidField 4)+instance (GH.HasVariant "int64" GH.Slot Type ()) where+    variantByLabel  = (GH.Variant GH.voidField 5)+instance (GH.HasVariant "uint8" GH.Slot Type ()) where+    variantByLabel  = (GH.Variant GH.voidField 6)+instance (GH.HasVariant "uint16" GH.Slot Type ()) where+    variantByLabel  = (GH.Variant GH.voidField 7)+instance (GH.HasVariant "uint32" GH.Slot Type ()) where+    variantByLabel  = (GH.Variant GH.voidField 8)+instance (GH.HasVariant "uint64" GH.Slot Type ()) where+    variantByLabel  = (GH.Variant GH.voidField 9)+instance (GH.HasVariant "float32" GH.Slot Type ()) where+    variantByLabel  = (GH.Variant GH.voidField 10)+instance (GH.HasVariant "float64" GH.Slot Type ()) where+    variantByLabel  = (GH.Variant GH.voidField 11)+instance (GH.HasVariant "text" GH.Slot Type ()) where+    variantByLabel  = (GH.Variant GH.voidField 12)+instance (GH.HasVariant "data_" GH.Slot Type ()) where+    variantByLabel  = (GH.Variant GH.voidField 13)+instance (GH.HasVariant "list" GH.Group Type Type'list) where+    variantByLabel  = (GH.Variant GH.groupField 14)+instance (GH.HasVariant "enum" GH.Group Type Type'enum) where+    variantByLabel  = (GH.Variant GH.groupField 15)+instance (GH.HasVariant "struct" GH.Group Type Type'struct) where+    variantByLabel  = (GH.Variant GH.groupField 16)+instance (GH.HasVariant "interface" GH.Group Type Type'interface) where+    variantByLabel  = (GH.Variant GH.groupField 17)+instance (GH.HasVariant "anyPointer" GH.Group Type Type'anyPointer) where+    variantByLabel  = (GH.Variant GH.groupField 18)+data instance C.Parsed (GH.Which Type)+    = Type'void +    | Type'bool +    | Type'int8 +    | Type'int16 +    | Type'int32 +    | Type'int64 +    | Type'uint8 +    | Type'uint16 +    | Type'uint32 +    | Type'uint64 +    | Type'float32 +    | Type'float64 +    | Type'text +    | Type'data_ +    | Type'list (RP.Parsed Type'list)+    | Type'enum (RP.Parsed Type'enum)+    | Type'struct (RP.Parsed Type'struct)+    | Type'interface (RP.Parsed Type'interface)+    | Type'anyPointer (RP.Parsed Type'anyPointer)+    | Type'unknown' Std_.Word16+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed (GH.Which Type)))+deriving instance (Std_.Eq (C.Parsed (GH.Which Type)))+instance (C.Parse (GH.Which Type) (C.Parsed (GH.Which Type))) where+    parse raw_ = (do+        rawWhich_ <- (GH.unionWhich raw_)+        case rawWhich_ of+            (RW_Type'void _) ->+                (Std_.pure Type'void)+            (RW_Type'bool _) ->+                (Std_.pure Type'bool)+            (RW_Type'int8 _) ->+                (Std_.pure Type'int8)+            (RW_Type'int16 _) ->+                (Std_.pure Type'int16)+            (RW_Type'int32 _) ->+                (Std_.pure Type'int32)+            (RW_Type'int64 _) ->+                (Std_.pure Type'int64)+            (RW_Type'uint8 _) ->+                (Std_.pure Type'uint8)+            (RW_Type'uint16 _) ->+                (Std_.pure Type'uint16)+            (RW_Type'uint32 _) ->+                (Std_.pure Type'uint32)+            (RW_Type'uint64 _) ->+                (Std_.pure Type'uint64)+            (RW_Type'float32 _) ->+                (Std_.pure Type'float32)+            (RW_Type'float64 _) ->+                (Std_.pure Type'float64)+            (RW_Type'text _) ->+                (Std_.pure Type'text)+            (RW_Type'data_ _) ->+                (Std_.pure Type'data_)+            (RW_Type'list rawArg_) ->+                (Type'list <$> (C.parse rawArg_))+            (RW_Type'enum rawArg_) ->+                (Type'enum <$> (C.parse rawArg_))+            (RW_Type'struct rawArg_) ->+                (Type'struct <$> (C.parse rawArg_))+            (RW_Type'interface rawArg_) ->+                (Type'interface <$> (C.parse rawArg_))+            (RW_Type'anyPointer rawArg_) ->+                (Type'anyPointer <$> (C.parse rawArg_))+            (RW_Type'unknown' tag_) ->+                (Std_.pure (Type'unknown' tag_))+        )+instance (C.Marshal (GH.Which Type) (C.Parsed (GH.Which Type))) where+    marshalInto raw_ parsed_ = case parsed_ of+        (Type'void) ->+            (GH.encodeVariant #void () (GH.unionStruct raw_))+        (Type'bool) ->+            (GH.encodeVariant #bool () (GH.unionStruct raw_))+        (Type'int8) ->+            (GH.encodeVariant #int8 () (GH.unionStruct raw_))+        (Type'int16) ->+            (GH.encodeVariant #int16 () (GH.unionStruct raw_))+        (Type'int32) ->+            (GH.encodeVariant #int32 () (GH.unionStruct raw_))+        (Type'int64) ->+            (GH.encodeVariant #int64 () (GH.unionStruct raw_))+        (Type'uint8) ->+            (GH.encodeVariant #uint8 () (GH.unionStruct raw_))+        (Type'uint16) ->+            (GH.encodeVariant #uint16 () (GH.unionStruct raw_))+        (Type'uint32) ->+            (GH.encodeVariant #uint32 () (GH.unionStruct raw_))+        (Type'uint64) ->+            (GH.encodeVariant #uint64 () (GH.unionStruct raw_))+        (Type'float32) ->+            (GH.encodeVariant #float32 () (GH.unionStruct raw_))+        (Type'float64) ->+            (GH.encodeVariant #float64 () (GH.unionStruct raw_))+        (Type'text) ->+            (GH.encodeVariant #text () (GH.unionStruct raw_))+        (Type'data_) ->+            (GH.encodeVariant #data_ () (GH.unionStruct raw_))+        (Type'list arg_) ->+            (do+                rawGroup_ <- (GH.initVariant #list (GH.unionStruct raw_))+                (C.marshalInto rawGroup_ arg_)+                )+        (Type'enum arg_) ->+            (do+                rawGroup_ <- (GH.initVariant #enum (GH.unionStruct raw_))+                (C.marshalInto rawGroup_ arg_)+                )+        (Type'struct arg_) ->+            (do+                rawGroup_ <- (GH.initVariant #struct (GH.unionStruct raw_))+                (C.marshalInto rawGroup_ arg_)+                )+        (Type'interface arg_) ->+            (do+                rawGroup_ <- (GH.initVariant #interface (GH.unionStruct raw_))+                (C.marshalInto rawGroup_ arg_)+                )+        (Type'anyPointer arg_) ->+            (do+                rawGroup_ <- (GH.initVariant #anyPointer (GH.unionStruct raw_))+                (C.marshalInto rawGroup_ arg_)+                )+        (Type'unknown' tag_) ->+            (GH.encodeField GH.unionField tag_ (GH.unionStruct raw_))+data Type'list +type instance (R.ReprFor Type'list) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Type'list) where+    numStructWords  = 3+    numStructPtrs  = 1+instance (C.Allocate Type'list) where+    type AllocHint Type'list = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Type'list (C.Parsed Type'list))+instance (C.AllocateList Type'list) where+    type ListAllocHint Type'list = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Type'list (C.Parsed Type'list))+data instance C.Parsed Type'list+    = Type'list' +        {elementType :: (RP.Parsed Type)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Type'list))+deriving instance (Std_.Eq (C.Parsed Type'list))+instance (C.Parse Type'list (C.Parsed Type'list)) where+    parse raw_ = (Type'list' <$> (GH.parseField #elementType raw_))+instance (C.Marshal Type'list (C.Parsed Type'list)) where+    marshalInto raw_ Type'list'{..} = (do+        (GH.encodeField #elementType elementType raw_)+        (Std_.pure ())+        )+instance (GH.HasField "elementType" GH.Slot Type'list Type) where+    fieldByLabel  = (GH.ptrField 0)+data Type'enum +type instance (R.ReprFor Type'enum) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Type'enum) where+    numStructWords  = 3+    numStructPtrs  = 1+instance (C.Allocate Type'enum) where+    type AllocHint Type'enum = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Type'enum (C.Parsed Type'enum))+instance (C.AllocateList Type'enum) where+    type ListAllocHint Type'enum = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Type'enum (C.Parsed Type'enum))+data instance C.Parsed Type'enum+    = Type'enum' +        {typeId :: (RP.Parsed Std_.Word64)+        ,brand :: (RP.Parsed Brand)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Type'enum))+deriving instance (Std_.Eq (C.Parsed Type'enum))+instance (C.Parse Type'enum (C.Parsed Type'enum)) where+    parse raw_ = (Type'enum' <$> (GH.parseField #typeId raw_)+                             <*> (GH.parseField #brand raw_))+instance (C.Marshal Type'enum (C.Parsed Type'enum)) where+    marshalInto raw_ Type'enum'{..} = (do+        (GH.encodeField #typeId typeId raw_)+        (GH.encodeField #brand brand raw_)+        (Std_.pure ())+        )+instance (GH.HasField "typeId" GH.Slot Type'enum Std_.Word64) where+    fieldByLabel  = (GH.dataField 0 1 64 0)+instance (GH.HasField "brand" GH.Slot Type'enum Brand) where+    fieldByLabel  = (GH.ptrField 0)+data Type'struct +type instance (R.ReprFor Type'struct) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Type'struct) where+    numStructWords  = 3+    numStructPtrs  = 1+instance (C.Allocate Type'struct) where+    type AllocHint Type'struct = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Type'struct (C.Parsed Type'struct))+instance (C.AllocateList Type'struct) where+    type ListAllocHint Type'struct = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Type'struct (C.Parsed Type'struct))+data instance C.Parsed Type'struct+    = Type'struct' +        {typeId :: (RP.Parsed Std_.Word64)+        ,brand :: (RP.Parsed Brand)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Type'struct))+deriving instance (Std_.Eq (C.Parsed Type'struct))+instance (C.Parse Type'struct (C.Parsed Type'struct)) where+    parse raw_ = (Type'struct' <$> (GH.parseField #typeId raw_)+                               <*> (GH.parseField #brand raw_))+instance (C.Marshal Type'struct (C.Parsed Type'struct)) where+    marshalInto raw_ Type'struct'{..} = (do+        (GH.encodeField #typeId typeId raw_)+        (GH.encodeField #brand brand raw_)+        (Std_.pure ())+        )+instance (GH.HasField "typeId" GH.Slot Type'struct Std_.Word64) where+    fieldByLabel  = (GH.dataField 0 1 64 0)+instance (GH.HasField "brand" GH.Slot Type'struct Brand) where+    fieldByLabel  = (GH.ptrField 0)+data Type'interface +type instance (R.ReprFor Type'interface) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Type'interface) where+    numStructWords  = 3+    numStructPtrs  = 1+instance (C.Allocate Type'interface) where+    type AllocHint Type'interface = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Type'interface (C.Parsed Type'interface))+instance (C.AllocateList Type'interface) where+    type ListAllocHint Type'interface = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Type'interface (C.Parsed Type'interface))+data instance C.Parsed Type'interface+    = Type'interface' +        {typeId :: (RP.Parsed Std_.Word64)+        ,brand :: (RP.Parsed Brand)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Type'interface))+deriving instance (Std_.Eq (C.Parsed Type'interface))+instance (C.Parse Type'interface (C.Parsed Type'interface)) where+    parse raw_ = (Type'interface' <$> (GH.parseField #typeId raw_)+                                  <*> (GH.parseField #brand raw_))+instance (C.Marshal Type'interface (C.Parsed Type'interface)) where+    marshalInto raw_ Type'interface'{..} = (do+        (GH.encodeField #typeId typeId raw_)+        (GH.encodeField #brand brand raw_)+        (Std_.pure ())+        )+instance (GH.HasField "typeId" GH.Slot Type'interface Std_.Word64) where+    fieldByLabel  = (GH.dataField 0 1 64 0)+instance (GH.HasField "brand" GH.Slot Type'interface Brand) where+    fieldByLabel  = (GH.ptrField 0)+data Type'anyPointer +type instance (R.ReprFor Type'anyPointer) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Type'anyPointer) where+    numStructWords  = 3+    numStructPtrs  = 1+instance (C.Allocate Type'anyPointer) where+    type AllocHint Type'anyPointer = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Type'anyPointer (C.Parsed Type'anyPointer))+instance (C.AllocateList Type'anyPointer) where+    type ListAllocHint Type'anyPointer = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Type'anyPointer (C.Parsed Type'anyPointer))+data instance C.Parsed Type'anyPointer+    = Type'anyPointer' +        {union' :: (C.Parsed (GH.Which Type'anyPointer))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Type'anyPointer))+deriving instance (Std_.Eq (C.Parsed Type'anyPointer))+instance (C.Parse Type'anyPointer (C.Parsed Type'anyPointer)) where+    parse raw_ = (Type'anyPointer' <$> (C.parse (GH.structUnion raw_)))+instance (C.Marshal Type'anyPointer (C.Parsed Type'anyPointer)) where+    marshalInto raw_ Type'anyPointer'{..} = (do+        (C.marshalInto (GH.structUnion raw_) union')+        )+instance (GH.HasUnion Type'anyPointer) where+    unionField  = (GH.dataField 0 1 16 0)+    data RawWhich mut_ Type'anyPointer+        = RW_Type'anyPointer'unconstrained (R.Raw mut_ Type'anyPointer'unconstrained)+        | RW_Type'anyPointer'parameter (R.Raw mut_ Type'anyPointer'parameter)+        | RW_Type'anyPointer'implicitMethodParameter (R.Raw mut_ Type'anyPointer'implicitMethodParameter)+        | RW_Type'anyPointer'unknown' Std_.Word16+    internalWhich tag_ struct_ = case tag_ of+        0 ->+            (RW_Type'anyPointer'unconstrained <$> (GH.readVariant #unconstrained struct_))+        1 ->+            (RW_Type'anyPointer'parameter <$> (GH.readVariant #parameter struct_))+        2 ->+            (RW_Type'anyPointer'implicitMethodParameter <$> (GH.readVariant #implicitMethodParameter struct_))+        _ ->+            (Std_.pure (RW_Type'anyPointer'unknown' tag_))+    data Which Type'anyPointer+instance (GH.HasVariant "unconstrained" GH.Group Type'anyPointer Type'anyPointer'unconstrained) where+    variantByLabel  = (GH.Variant GH.groupField 0)+instance (GH.HasVariant "parameter" GH.Group Type'anyPointer Type'anyPointer'parameter) where+    variantByLabel  = (GH.Variant GH.groupField 1)+instance (GH.HasVariant "implicitMethodParameter" GH.Group Type'anyPointer Type'anyPointer'implicitMethodParameter) where+    variantByLabel  = (GH.Variant GH.groupField 2)+data instance C.Parsed (GH.Which Type'anyPointer)+    = Type'anyPointer'unconstrained (RP.Parsed Type'anyPointer'unconstrained)+    | Type'anyPointer'parameter (RP.Parsed Type'anyPointer'parameter)+    | Type'anyPointer'implicitMethodParameter (RP.Parsed Type'anyPointer'implicitMethodParameter)+    | Type'anyPointer'unknown' Std_.Word16+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed (GH.Which Type'anyPointer)))+deriving instance (Std_.Eq (C.Parsed (GH.Which Type'anyPointer)))+instance (C.Parse (GH.Which Type'anyPointer) (C.Parsed (GH.Which Type'anyPointer))) where+    parse raw_ = (do+        rawWhich_ <- (GH.unionWhich raw_)+        case rawWhich_ of+            (RW_Type'anyPointer'unconstrained rawArg_) ->+                (Type'anyPointer'unconstrained <$> (C.parse rawArg_))+            (RW_Type'anyPointer'parameter rawArg_) ->+                (Type'anyPointer'parameter <$> (C.parse rawArg_))+            (RW_Type'anyPointer'implicitMethodParameter rawArg_) ->+                (Type'anyPointer'implicitMethodParameter <$> (C.parse rawArg_))+            (RW_Type'anyPointer'unknown' tag_) ->+                (Std_.pure (Type'anyPointer'unknown' tag_))+        )+instance (C.Marshal (GH.Which Type'anyPointer) (C.Parsed (GH.Which Type'anyPointer))) where+    marshalInto raw_ parsed_ = case parsed_ of+        (Type'anyPointer'unconstrained arg_) ->+            (do+                rawGroup_ <- (GH.initVariant #unconstrained (GH.unionStruct raw_))+                (C.marshalInto rawGroup_ arg_)+                )+        (Type'anyPointer'parameter arg_) ->+            (do+                rawGroup_ <- (GH.initVariant #parameter (GH.unionStruct raw_))+                (C.marshalInto rawGroup_ arg_)+                )+        (Type'anyPointer'implicitMethodParameter arg_) ->+            (do+                rawGroup_ <- (GH.initVariant #implicitMethodParameter (GH.unionStruct raw_))+                (C.marshalInto rawGroup_ arg_)+                )+        (Type'anyPointer'unknown' tag_) ->+            (GH.encodeField GH.unionField tag_ (GH.unionStruct raw_))+data Type'anyPointer'unconstrained +type instance (R.ReprFor Type'anyPointer'unconstrained) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Type'anyPointer'unconstrained) where+    numStructWords  = 3+    numStructPtrs  = 1+instance (C.Allocate Type'anyPointer'unconstrained) where+    type AllocHint Type'anyPointer'unconstrained = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Type'anyPointer'unconstrained (C.Parsed Type'anyPointer'unconstrained))+instance (C.AllocateList Type'anyPointer'unconstrained) where+    type ListAllocHint Type'anyPointer'unconstrained = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Type'anyPointer'unconstrained (C.Parsed Type'anyPointer'unconstrained))+data instance C.Parsed Type'anyPointer'unconstrained+    = Type'anyPointer'unconstrained' +        {union' :: (C.Parsed (GH.Which Type'anyPointer'unconstrained))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Type'anyPointer'unconstrained))+deriving instance (Std_.Eq (C.Parsed Type'anyPointer'unconstrained))+instance (C.Parse Type'anyPointer'unconstrained (C.Parsed Type'anyPointer'unconstrained)) where+    parse raw_ = (Type'anyPointer'unconstrained' <$> (C.parse (GH.structUnion raw_)))+instance (C.Marshal Type'anyPointer'unconstrained (C.Parsed Type'anyPointer'unconstrained)) where+    marshalInto raw_ Type'anyPointer'unconstrained'{..} = (do+        (C.marshalInto (GH.structUnion raw_) union')+        )+instance (GH.HasUnion Type'anyPointer'unconstrained) where+    unionField  = (GH.dataField 16 1 16 0)+    data RawWhich mut_ Type'anyPointer'unconstrained+        = RW_Type'anyPointer'unconstrained'anyKind (R.Raw mut_ ())+        | RW_Type'anyPointer'unconstrained'struct (R.Raw mut_ ())+        | RW_Type'anyPointer'unconstrained'list (R.Raw mut_ ())+        | RW_Type'anyPointer'unconstrained'capability (R.Raw mut_ ())+        | RW_Type'anyPointer'unconstrained'unknown' Std_.Word16+    internalWhich tag_ struct_ = case tag_ of+        0 ->+            (RW_Type'anyPointer'unconstrained'anyKind <$> (GH.readVariant #anyKind struct_))+        1 ->+            (RW_Type'anyPointer'unconstrained'struct <$> (GH.readVariant #struct struct_))+        2 ->+            (RW_Type'anyPointer'unconstrained'list <$> (GH.readVariant #list struct_))+        3 ->+            (RW_Type'anyPointer'unconstrained'capability <$> (GH.readVariant #capability struct_))+        _ ->+            (Std_.pure (RW_Type'anyPointer'unconstrained'unknown' tag_))+    data Which Type'anyPointer'unconstrained+instance (GH.HasVariant "anyKind" GH.Slot Type'anyPointer'unconstrained ()) where+    variantByLabel  = (GH.Variant GH.voidField 0)+instance (GH.HasVariant "struct" GH.Slot Type'anyPointer'unconstrained ()) where+    variantByLabel  = (GH.Variant GH.voidField 1)+instance (GH.HasVariant "list" GH.Slot Type'anyPointer'unconstrained ()) where+    variantByLabel  = (GH.Variant GH.voidField 2)+instance (GH.HasVariant "capability" GH.Slot Type'anyPointer'unconstrained ()) where+    variantByLabel  = (GH.Variant GH.voidField 3)+data instance C.Parsed (GH.Which Type'anyPointer'unconstrained)+    = Type'anyPointer'unconstrained'anyKind +    | Type'anyPointer'unconstrained'struct +    | Type'anyPointer'unconstrained'list +    | Type'anyPointer'unconstrained'capability +    | Type'anyPointer'unconstrained'unknown' Std_.Word16+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed (GH.Which Type'anyPointer'unconstrained)))+deriving instance (Std_.Eq (C.Parsed (GH.Which Type'anyPointer'unconstrained)))+instance (C.Parse (GH.Which Type'anyPointer'unconstrained) (C.Parsed (GH.Which Type'anyPointer'unconstrained))) where+    parse raw_ = (do+        rawWhich_ <- (GH.unionWhich raw_)+        case rawWhich_ of+            (RW_Type'anyPointer'unconstrained'anyKind _) ->+                (Std_.pure Type'anyPointer'unconstrained'anyKind)+            (RW_Type'anyPointer'unconstrained'struct _) ->+                (Std_.pure Type'anyPointer'unconstrained'struct)+            (RW_Type'anyPointer'unconstrained'list _) ->+                (Std_.pure Type'anyPointer'unconstrained'list)+            (RW_Type'anyPointer'unconstrained'capability _) ->+                (Std_.pure Type'anyPointer'unconstrained'capability)+            (RW_Type'anyPointer'unconstrained'unknown' tag_) ->+                (Std_.pure (Type'anyPointer'unconstrained'unknown' tag_))+        )+instance (C.Marshal (GH.Which Type'anyPointer'unconstrained) (C.Parsed (GH.Which Type'anyPointer'unconstrained))) where+    marshalInto raw_ parsed_ = case parsed_ of+        (Type'anyPointer'unconstrained'anyKind) ->+            (GH.encodeVariant #anyKind () (GH.unionStruct raw_))+        (Type'anyPointer'unconstrained'struct) ->+            (GH.encodeVariant #struct () (GH.unionStruct raw_))+        (Type'anyPointer'unconstrained'list) ->+            (GH.encodeVariant #list () (GH.unionStruct raw_))+        (Type'anyPointer'unconstrained'capability) ->+            (GH.encodeVariant #capability () (GH.unionStruct raw_))+        (Type'anyPointer'unconstrained'unknown' tag_) ->+            (GH.encodeField GH.unionField tag_ (GH.unionStruct raw_))+data Type'anyPointer'parameter +type instance (R.ReprFor Type'anyPointer'parameter) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Type'anyPointer'parameter) where+    numStructWords  = 3+    numStructPtrs  = 1+instance (C.Allocate Type'anyPointer'parameter) where+    type AllocHint Type'anyPointer'parameter = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Type'anyPointer'parameter (C.Parsed Type'anyPointer'parameter))+instance (C.AllocateList Type'anyPointer'parameter) where+    type ListAllocHint Type'anyPointer'parameter = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Type'anyPointer'parameter (C.Parsed Type'anyPointer'parameter))+data instance C.Parsed Type'anyPointer'parameter+    = Type'anyPointer'parameter' +        {scopeId :: (RP.Parsed Std_.Word64)+        ,parameterIndex :: (RP.Parsed Std_.Word16)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Type'anyPointer'parameter))+deriving instance (Std_.Eq (C.Parsed Type'anyPointer'parameter))+instance (C.Parse Type'anyPointer'parameter (C.Parsed Type'anyPointer'parameter)) where+    parse raw_ = (Type'anyPointer'parameter' <$> (GH.parseField #scopeId raw_)+                                             <*> (GH.parseField #parameterIndex raw_))+instance (C.Marshal Type'anyPointer'parameter (C.Parsed Type'anyPointer'parameter)) where+    marshalInto raw_ Type'anyPointer'parameter'{..} = (do+        (GH.encodeField #scopeId scopeId raw_)+        (GH.encodeField #parameterIndex parameterIndex raw_)+        (Std_.pure ())+        )+instance (GH.HasField "scopeId" GH.Slot Type'anyPointer'parameter Std_.Word64) where+    fieldByLabel  = (GH.dataField 0 2 64 0)+instance (GH.HasField "parameterIndex" GH.Slot Type'anyPointer'parameter Std_.Word16) where+    fieldByLabel  = (GH.dataField 16 1 16 0)+data Type'anyPointer'implicitMethodParameter +type instance (R.ReprFor Type'anyPointer'implicitMethodParameter) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Type'anyPointer'implicitMethodParameter) where+    numStructWords  = 3+    numStructPtrs  = 1+instance (C.Allocate Type'anyPointer'implicitMethodParameter) where+    type AllocHint Type'anyPointer'implicitMethodParameter = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Type'anyPointer'implicitMethodParameter (C.Parsed Type'anyPointer'implicitMethodParameter))+instance (C.AllocateList Type'anyPointer'implicitMethodParameter) where+    type ListAllocHint Type'anyPointer'implicitMethodParameter = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Type'anyPointer'implicitMethodParameter (C.Parsed Type'anyPointer'implicitMethodParameter))+data instance C.Parsed Type'anyPointer'implicitMethodParameter+    = Type'anyPointer'implicitMethodParameter' +        {parameterIndex :: (RP.Parsed Std_.Word16)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Type'anyPointer'implicitMethodParameter))+deriving instance (Std_.Eq (C.Parsed Type'anyPointer'implicitMethodParameter))+instance (C.Parse Type'anyPointer'implicitMethodParameter (C.Parsed Type'anyPointer'implicitMethodParameter)) where+    parse raw_ = (Type'anyPointer'implicitMethodParameter' <$> (GH.parseField #parameterIndex raw_))+instance (C.Marshal Type'anyPointer'implicitMethodParameter (C.Parsed Type'anyPointer'implicitMethodParameter)) where+    marshalInto raw_ Type'anyPointer'implicitMethodParameter'{..} = (do+        (GH.encodeField #parameterIndex parameterIndex raw_)+        (Std_.pure ())+        )+instance (GH.HasField "parameterIndex" GH.Slot Type'anyPointer'implicitMethodParameter Std_.Word16) where+    fieldByLabel  = (GH.dataField 16 1 16 0)+data Brand +type instance (R.ReprFor Brand) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Brand) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate Brand) where+    type AllocHint Brand = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Brand (C.Parsed Brand))+instance (C.AllocateList Brand) where+    type ListAllocHint Brand = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Brand (C.Parsed Brand))+data instance C.Parsed Brand+    = Brand +        {scopes :: (RP.Parsed (R.List Brand'Scope))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Brand))+deriving instance (Std_.Eq (C.Parsed Brand))+instance (C.Parse Brand (C.Parsed Brand)) where+    parse raw_ = (Brand <$> (GH.parseField #scopes raw_))+instance (C.Marshal Brand (C.Parsed Brand)) where+    marshalInto raw_ Brand{..} = (do+        (GH.encodeField #scopes scopes raw_)+        (Std_.pure ())+        )+instance (GH.HasField "scopes" GH.Slot Brand (R.List Brand'Scope)) where+    fieldByLabel  = (GH.ptrField 0)+data Brand'Scope +type instance (R.ReprFor Brand'Scope) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Brand'Scope) where+    numStructWords  = 2+    numStructPtrs  = 1+instance (C.Allocate Brand'Scope) where+    type AllocHint Brand'Scope = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Brand'Scope (C.Parsed Brand'Scope))+instance (C.AllocateList Brand'Scope) where+    type ListAllocHint Brand'Scope = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Brand'Scope (C.Parsed Brand'Scope))+data instance C.Parsed Brand'Scope+    = Brand'Scope +        {scopeId :: (RP.Parsed Std_.Word64)+        ,union' :: (C.Parsed (GH.Which Brand'Scope))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Brand'Scope))+deriving instance (Std_.Eq (C.Parsed Brand'Scope))+instance (C.Parse Brand'Scope (C.Parsed Brand'Scope)) where+    parse raw_ = (Brand'Scope <$> (GH.parseField #scopeId raw_)+                              <*> (C.parse (GH.structUnion raw_)))+instance (C.Marshal Brand'Scope (C.Parsed Brand'Scope)) where+    marshalInto raw_ Brand'Scope{..} = (do+        (GH.encodeField #scopeId scopeId raw_)+        (C.marshalInto (GH.structUnion raw_) union')+        )+instance (GH.HasUnion Brand'Scope) where+    unionField  = (GH.dataField 0 1 16 0)+    data RawWhich mut_ Brand'Scope+        = RW_Brand'Scope'bind (R.Raw mut_ (R.List Brand'Binding))+        | RW_Brand'Scope'inherit (R.Raw mut_ ())+        | RW_Brand'Scope'unknown' Std_.Word16+    internalWhich tag_ struct_ = case tag_ of+        0 ->+            (RW_Brand'Scope'bind <$> (GH.readVariant #bind struct_))+        1 ->+            (RW_Brand'Scope'inherit <$> (GH.readVariant #inherit struct_))+        _ ->+            (Std_.pure (RW_Brand'Scope'unknown' tag_))+    data Which Brand'Scope+instance (GH.HasVariant "bind" GH.Slot Brand'Scope (R.List Brand'Binding)) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 0)+instance (GH.HasVariant "inherit" GH.Slot Brand'Scope ()) where+    variantByLabel  = (GH.Variant GH.voidField 1)+data instance C.Parsed (GH.Which Brand'Scope)+    = Brand'Scope'bind (RP.Parsed (R.List Brand'Binding))+    | Brand'Scope'inherit +    | Brand'Scope'unknown' Std_.Word16+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed (GH.Which Brand'Scope)))+deriving instance (Std_.Eq (C.Parsed (GH.Which Brand'Scope)))+instance (C.Parse (GH.Which Brand'Scope) (C.Parsed (GH.Which Brand'Scope))) where+    parse raw_ = (do+        rawWhich_ <- (GH.unionWhich raw_)+        case rawWhich_ of+            (RW_Brand'Scope'bind rawArg_) ->+                (Brand'Scope'bind <$> (C.parse rawArg_))+            (RW_Brand'Scope'inherit _) ->+                (Std_.pure Brand'Scope'inherit)+            (RW_Brand'Scope'unknown' tag_) ->+                (Std_.pure (Brand'Scope'unknown' tag_))+        )+instance (C.Marshal (GH.Which Brand'Scope) (C.Parsed (GH.Which Brand'Scope))) where+    marshalInto raw_ parsed_ = case parsed_ of+        (Brand'Scope'bind arg_) ->+            (GH.encodeVariant #bind arg_ (GH.unionStruct raw_))+        (Brand'Scope'inherit) ->+            (GH.encodeVariant #inherit () (GH.unionStruct raw_))+        (Brand'Scope'unknown' tag_) ->+            (GH.encodeField GH.unionField tag_ (GH.unionStruct raw_))+instance (GH.HasField "scopeId" GH.Slot Brand'Scope Std_.Word64) where+    fieldByLabel  = (GH.dataField 0 0 64 0)+data Brand'Binding +type instance (R.ReprFor Brand'Binding) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Brand'Binding) where+    numStructWords  = 1+    numStructPtrs  = 1+instance (C.Allocate Brand'Binding) where+    type AllocHint Brand'Binding = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Brand'Binding (C.Parsed Brand'Binding))+instance (C.AllocateList Brand'Binding) where+    type ListAllocHint Brand'Binding = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Brand'Binding (C.Parsed Brand'Binding))+data instance C.Parsed Brand'Binding+    = Brand'Binding +        {union' :: (C.Parsed (GH.Which Brand'Binding))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Brand'Binding))+deriving instance (Std_.Eq (C.Parsed Brand'Binding))+instance (C.Parse Brand'Binding (C.Parsed Brand'Binding)) where+    parse raw_ = (Brand'Binding <$> (C.parse (GH.structUnion raw_)))+instance (C.Marshal Brand'Binding (C.Parsed Brand'Binding)) where+    marshalInto raw_ Brand'Binding{..} = (do+        (C.marshalInto (GH.structUnion raw_) union')+        )+instance (GH.HasUnion Brand'Binding) where+    unionField  = (GH.dataField 0 0 16 0)+    data RawWhich mut_ Brand'Binding+        = RW_Brand'Binding'unbound (R.Raw mut_ ())+        | RW_Brand'Binding'type_ (R.Raw mut_ Type)+        | RW_Brand'Binding'unknown' Std_.Word16+    internalWhich tag_ struct_ = case tag_ of+        0 ->+            (RW_Brand'Binding'unbound <$> (GH.readVariant #unbound struct_))+        1 ->+            (RW_Brand'Binding'type_ <$> (GH.readVariant #type_ struct_))+        _ ->+            (Std_.pure (RW_Brand'Binding'unknown' tag_))+    data Which Brand'Binding+instance (GH.HasVariant "unbound" GH.Slot Brand'Binding ()) where+    variantByLabel  = (GH.Variant GH.voidField 0)+instance (GH.HasVariant "type_" GH.Slot Brand'Binding Type) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 1)+data instance C.Parsed (GH.Which Brand'Binding)+    = Brand'Binding'unbound +    | Brand'Binding'type_ (RP.Parsed Type)+    | Brand'Binding'unknown' Std_.Word16+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed (GH.Which Brand'Binding)))+deriving instance (Std_.Eq (C.Parsed (GH.Which Brand'Binding)))+instance (C.Parse (GH.Which Brand'Binding) (C.Parsed (GH.Which Brand'Binding))) where+    parse raw_ = (do+        rawWhich_ <- (GH.unionWhich raw_)+        case rawWhich_ of+            (RW_Brand'Binding'unbound _) ->+                (Std_.pure Brand'Binding'unbound)+            (RW_Brand'Binding'type_ rawArg_) ->+                (Brand'Binding'type_ <$> (C.parse rawArg_))+            (RW_Brand'Binding'unknown' tag_) ->+                (Std_.pure (Brand'Binding'unknown' tag_))+        )+instance (C.Marshal (GH.Which Brand'Binding) (C.Parsed (GH.Which Brand'Binding))) where+    marshalInto raw_ parsed_ = case parsed_ of+        (Brand'Binding'unbound) ->+            (GH.encodeVariant #unbound () (GH.unionStruct raw_))+        (Brand'Binding'type_ arg_) ->+            (GH.encodeVariant #type_ arg_ (GH.unionStruct raw_))+        (Brand'Binding'unknown' tag_) ->+            (GH.encodeField GH.unionField tag_ (GH.unionStruct raw_))+data Value +type instance (R.ReprFor Value) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Value) where+    numStructWords  = 2+    numStructPtrs  = 1+instance (C.Allocate Value) where+    type AllocHint Value = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Value (C.Parsed Value))+instance (C.AllocateList Value) where+    type ListAllocHint Value = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Value (C.Parsed Value))+data instance C.Parsed Value+    = Value +        {union' :: (C.Parsed (GH.Which Value))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Value))+deriving instance (Std_.Eq (C.Parsed Value))+instance (C.Parse Value (C.Parsed Value)) where+    parse raw_ = (Value <$> (C.parse (GH.structUnion raw_)))+instance (C.Marshal Value (C.Parsed Value)) where+    marshalInto raw_ Value{..} = (do+        (C.marshalInto (GH.structUnion raw_) union')+        )+instance (GH.HasUnion Value) where+    unionField  = (GH.dataField 0 0 16 0)+    data RawWhich mut_ Value+        = RW_Value'void (R.Raw mut_ ())+        | RW_Value'bool (R.Raw mut_ Std_.Bool)+        | RW_Value'int8 (R.Raw mut_ Std_.Int8)+        | RW_Value'int16 (R.Raw mut_ Std_.Int16)+        | RW_Value'int32 (R.Raw mut_ Std_.Int32)+        | RW_Value'int64 (R.Raw mut_ Std_.Int64)+        | RW_Value'uint8 (R.Raw mut_ Std_.Word8)+        | RW_Value'uint16 (R.Raw mut_ Std_.Word16)+        | RW_Value'uint32 (R.Raw mut_ Std_.Word32)+        | RW_Value'uint64 (R.Raw mut_ Std_.Word64)+        | RW_Value'float32 (R.Raw mut_ Std_.Float)+        | RW_Value'float64 (R.Raw mut_ Std_.Double)+        | RW_Value'text (R.Raw mut_ Basics.Text)+        | RW_Value'data_ (R.Raw mut_ Basics.Data)+        | RW_Value'list (R.Raw mut_ Basics.AnyPointer)+        | RW_Value'enum (R.Raw mut_ Std_.Word16)+        | RW_Value'struct (R.Raw mut_ Basics.AnyPointer)+        | RW_Value'interface (R.Raw mut_ ())+        | RW_Value'anyPointer (R.Raw mut_ Basics.AnyPointer)+        | RW_Value'unknown' Std_.Word16+    internalWhich tag_ struct_ = case tag_ of+        0 ->+            (RW_Value'void <$> (GH.readVariant #void struct_))+        1 ->+            (RW_Value'bool <$> (GH.readVariant #bool struct_))+        2 ->+            (RW_Value'int8 <$> (GH.readVariant #int8 struct_))+        3 ->+            (RW_Value'int16 <$> (GH.readVariant #int16 struct_))+        4 ->+            (RW_Value'int32 <$> (GH.readVariant #int32 struct_))+        5 ->+            (RW_Value'int64 <$> (GH.readVariant #int64 struct_))+        6 ->+            (RW_Value'uint8 <$> (GH.readVariant #uint8 struct_))+        7 ->+            (RW_Value'uint16 <$> (GH.readVariant #uint16 struct_))+        8 ->+            (RW_Value'uint32 <$> (GH.readVariant #uint32 struct_))+        9 ->+            (RW_Value'uint64 <$> (GH.readVariant #uint64 struct_))+        10 ->+            (RW_Value'float32 <$> (GH.readVariant #float32 struct_))+        11 ->+            (RW_Value'float64 <$> (GH.readVariant #float64 struct_))+        12 ->+            (RW_Value'text <$> (GH.readVariant #text struct_))+        13 ->+            (RW_Value'data_ <$> (GH.readVariant #data_ struct_))+        14 ->+            (RW_Value'list <$> (GH.readVariant #list struct_))+        15 ->+            (RW_Value'enum <$> (GH.readVariant #enum struct_))+        16 ->+            (RW_Value'struct <$> (GH.readVariant #struct struct_))+        17 ->+            (RW_Value'interface <$> (GH.readVariant #interface struct_))+        18 ->+            (RW_Value'anyPointer <$> (GH.readVariant #anyPointer struct_))+        _ ->+            (Std_.pure (RW_Value'unknown' tag_))+    data Which Value+instance (GH.HasVariant "void" GH.Slot Value ()) where+    variantByLabel  = (GH.Variant GH.voidField 0)+instance (GH.HasVariant "bool" GH.Slot Value Std_.Bool) where+    variantByLabel  = (GH.Variant (GH.dataField 16 0 1 0) 1)+instance (GH.HasVariant "int8" GH.Slot Value Std_.Int8) where+    variantByLabel  = (GH.Variant (GH.dataField 16 0 8 0) 2)+instance (GH.HasVariant "int16" GH.Slot Value Std_.Int16) where+    variantByLabel  = (GH.Variant (GH.dataField 16 0 16 0) 3)+instance (GH.HasVariant "int32" GH.Slot Value Std_.Int32) where+    variantByLabel  = (GH.Variant (GH.dataField 32 0 32 0) 4)+instance (GH.HasVariant "int64" GH.Slot Value Std_.Int64) where+    variantByLabel  = (GH.Variant (GH.dataField 0 1 64 0) 5)+instance (GH.HasVariant "uint8" GH.Slot Value Std_.Word8) where+    variantByLabel  = (GH.Variant (GH.dataField 16 0 8 0) 6)+instance (GH.HasVariant "uint16" GH.Slot Value Std_.Word16) where+    variantByLabel  = (GH.Variant (GH.dataField 16 0 16 0) 7)+instance (GH.HasVariant "uint32" GH.Slot Value Std_.Word32) where+    variantByLabel  = (GH.Variant (GH.dataField 32 0 32 0) 8)+instance (GH.HasVariant "uint64" GH.Slot Value Std_.Word64) where+    variantByLabel  = (GH.Variant (GH.dataField 0 1 64 0) 9)+instance (GH.HasVariant "float32" GH.Slot Value Std_.Float) where+    variantByLabel  = (GH.Variant (GH.dataField 32 0 32 0) 10)+instance (GH.HasVariant "float64" GH.Slot Value Std_.Double) where+    variantByLabel  = (GH.Variant (GH.dataField 0 1 64 0) 11)+instance (GH.HasVariant "text" GH.Slot Value Basics.Text) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 12)+instance (GH.HasVariant "data_" GH.Slot Value Basics.Data) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 13)+instance (GH.HasVariant "list" GH.Slot Value Basics.AnyPointer) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 14)+instance (GH.HasVariant "enum" GH.Slot Value Std_.Word16) where+    variantByLabel  = (GH.Variant (GH.dataField 16 0 16 0) 15)+instance (GH.HasVariant "struct" GH.Slot Value Basics.AnyPointer) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 16)+instance (GH.HasVariant "interface" GH.Slot Value ()) where+    variantByLabel  = (GH.Variant GH.voidField 17)+instance (GH.HasVariant "anyPointer" GH.Slot Value Basics.AnyPointer) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 18)+data instance C.Parsed (GH.Which Value)+    = Value'void +    | Value'bool (RP.Parsed Std_.Bool)+    | Value'int8 (RP.Parsed Std_.Int8)+    | Value'int16 (RP.Parsed Std_.Int16)+    | Value'int32 (RP.Parsed Std_.Int32)+    | Value'int64 (RP.Parsed Std_.Int64)+    | Value'uint8 (RP.Parsed Std_.Word8)+    | Value'uint16 (RP.Parsed Std_.Word16)+    | Value'uint32 (RP.Parsed Std_.Word32)+    | Value'uint64 (RP.Parsed Std_.Word64)+    | Value'float32 (RP.Parsed Std_.Float)+    | Value'float64 (RP.Parsed Std_.Double)+    | Value'text (RP.Parsed Basics.Text)+    | Value'data_ (RP.Parsed Basics.Data)+    | Value'list (RP.Parsed Basics.AnyPointer)+    | Value'enum (RP.Parsed Std_.Word16)+    | Value'struct (RP.Parsed Basics.AnyPointer)+    | Value'interface +    | Value'anyPointer (RP.Parsed Basics.AnyPointer)+    | Value'unknown' Std_.Word16+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed (GH.Which Value)))+deriving instance (Std_.Eq (C.Parsed (GH.Which Value)))+instance (C.Parse (GH.Which Value) (C.Parsed (GH.Which Value))) where+    parse raw_ = (do+        rawWhich_ <- (GH.unionWhich raw_)+        case rawWhich_ of+            (RW_Value'void _) ->+                (Std_.pure Value'void)+            (RW_Value'bool rawArg_) ->+                (Value'bool <$> (C.parse rawArg_))+            (RW_Value'int8 rawArg_) ->+                (Value'int8 <$> (C.parse rawArg_))+            (RW_Value'int16 rawArg_) ->+                (Value'int16 <$> (C.parse rawArg_))+            (RW_Value'int32 rawArg_) ->+                (Value'int32 <$> (C.parse rawArg_))+            (RW_Value'int64 rawArg_) ->+                (Value'int64 <$> (C.parse rawArg_))+            (RW_Value'uint8 rawArg_) ->+                (Value'uint8 <$> (C.parse rawArg_))+            (RW_Value'uint16 rawArg_) ->+                (Value'uint16 <$> (C.parse rawArg_))+            (RW_Value'uint32 rawArg_) ->+                (Value'uint32 <$> (C.parse rawArg_))+            (RW_Value'uint64 rawArg_) ->+                (Value'uint64 <$> (C.parse rawArg_))+            (RW_Value'float32 rawArg_) ->+                (Value'float32 <$> (C.parse rawArg_))+            (RW_Value'float64 rawArg_) ->+                (Value'float64 <$> (C.parse rawArg_))+            (RW_Value'text rawArg_) ->+                (Value'text <$> (C.parse rawArg_))+            (RW_Value'data_ rawArg_) ->+                (Value'data_ <$> (C.parse rawArg_))+            (RW_Value'list rawArg_) ->+                (Value'list <$> (C.parse rawArg_))+            (RW_Value'enum rawArg_) ->+                (Value'enum <$> (C.parse rawArg_))+            (RW_Value'struct rawArg_) ->+                (Value'struct <$> (C.parse rawArg_))+            (RW_Value'interface _) ->+                (Std_.pure Value'interface)+            (RW_Value'anyPointer rawArg_) ->+                (Value'anyPointer <$> (C.parse rawArg_))+            (RW_Value'unknown' tag_) ->+                (Std_.pure (Value'unknown' tag_))+        )+instance (C.Marshal (GH.Which Value) (C.Parsed (GH.Which Value))) where+    marshalInto raw_ parsed_ = case parsed_ of+        (Value'void) ->+            (GH.encodeVariant #void () (GH.unionStruct raw_))+        (Value'bool arg_) ->+            (GH.encodeVariant #bool arg_ (GH.unionStruct raw_))+        (Value'int8 arg_) ->+            (GH.encodeVariant #int8 arg_ (GH.unionStruct raw_))+        (Value'int16 arg_) ->+            (GH.encodeVariant #int16 arg_ (GH.unionStruct raw_))+        (Value'int32 arg_) ->+            (GH.encodeVariant #int32 arg_ (GH.unionStruct raw_))+        (Value'int64 arg_) ->+            (GH.encodeVariant #int64 arg_ (GH.unionStruct raw_))+        (Value'uint8 arg_) ->+            (GH.encodeVariant #uint8 arg_ (GH.unionStruct raw_))+        (Value'uint16 arg_) ->+            (GH.encodeVariant #uint16 arg_ (GH.unionStruct raw_))+        (Value'uint32 arg_) ->+            (GH.encodeVariant #uint32 arg_ (GH.unionStruct raw_))+        (Value'uint64 arg_) ->+            (GH.encodeVariant #uint64 arg_ (GH.unionStruct raw_))+        (Value'float32 arg_) ->+            (GH.encodeVariant #float32 arg_ (GH.unionStruct raw_))+        (Value'float64 arg_) ->+            (GH.encodeVariant #float64 arg_ (GH.unionStruct raw_))+        (Value'text arg_) ->+            (GH.encodeVariant #text arg_ (GH.unionStruct raw_))+        (Value'data_ arg_) ->+            (GH.encodeVariant #data_ arg_ (GH.unionStruct raw_))+        (Value'list arg_) ->+            (GH.encodeVariant #list arg_ (GH.unionStruct raw_))+        (Value'enum arg_) ->+            (GH.encodeVariant #enum arg_ (GH.unionStruct raw_))+        (Value'struct arg_) ->+            (GH.encodeVariant #struct arg_ (GH.unionStruct raw_))+        (Value'interface) ->+            (GH.encodeVariant #interface () (GH.unionStruct raw_))+        (Value'anyPointer arg_) ->+            (GH.encodeVariant #anyPointer arg_ (GH.unionStruct raw_))+        (Value'unknown' tag_) ->+            (GH.encodeField GH.unionField tag_ (GH.unionStruct raw_))+data Annotation +type instance (R.ReprFor Annotation) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Annotation) where+    numStructWords  = 1+    numStructPtrs  = 2+instance (C.Allocate Annotation) where+    type AllocHint Annotation = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Annotation (C.Parsed Annotation))+instance (C.AllocateList Annotation) where+    type ListAllocHint Annotation = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Annotation (C.Parsed Annotation))+data instance C.Parsed Annotation+    = Annotation +        {id :: (RP.Parsed Std_.Word64)+        ,value :: (RP.Parsed Value)+        ,brand :: (RP.Parsed Brand)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Annotation))+deriving instance (Std_.Eq (C.Parsed Annotation))+instance (C.Parse Annotation (C.Parsed Annotation)) where+    parse raw_ = (Annotation <$> (GH.parseField #id raw_)+                             <*> (GH.parseField #value raw_)+                             <*> (GH.parseField #brand raw_))+instance (C.Marshal Annotation (C.Parsed Annotation)) where+    marshalInto raw_ Annotation{..} = (do+        (GH.encodeField #id id raw_)+        (GH.encodeField #value value raw_)+        (GH.encodeField #brand brand raw_)+        (Std_.pure ())+        )+instance (GH.HasField "id" GH.Slot Annotation Std_.Word64) where+    fieldByLabel  = (GH.dataField 0 0 64 0)+instance (GH.HasField "value" GH.Slot Annotation Value) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "brand" GH.Slot Annotation Brand) where+    fieldByLabel  = (GH.ptrField 1)+data ElementSize +    = ElementSize'empty +    | ElementSize'bit +    | ElementSize'byte +    | ElementSize'twoBytes +    | ElementSize'fourBytes +    | ElementSize'eightBytes +    | ElementSize'pointer +    | ElementSize'inlineComposite +    | ElementSize'unknown' Std_.Word16+    deriving(Std_.Eq,Std_.Show)+type instance (R.ReprFor ElementSize) = (R.Data R.Sz16)+instance (Std_.Enum ElementSize) where+    toEnum n_ = case n_ of+        0 ->+            ElementSize'empty+        1 ->+            ElementSize'bit+        2 ->+            ElementSize'byte+        3 ->+            ElementSize'twoBytes+        4 ->+            ElementSize'fourBytes+        5 ->+            ElementSize'eightBytes+        6 ->+            ElementSize'pointer+        7 ->+            ElementSize'inlineComposite+        tag_ ->+            (ElementSize'unknown' (Std_.fromIntegral tag_))+    fromEnum value_ = case value_ of+        (ElementSize'empty) ->+            0+        (ElementSize'bit) ->+            1+        (ElementSize'byte) ->+            2+        (ElementSize'twoBytes) ->+            3+        (ElementSize'fourBytes) ->+            4+        (ElementSize'eightBytes) ->+            5+        (ElementSize'pointer) ->+            6+        (ElementSize'inlineComposite) ->+            7+        (ElementSize'unknown' tag_) ->+            (Std_.fromIntegral tag_)+instance (C.IsWord ElementSize) where+    fromWord w_ = (Std_.toEnum (Std_.fromIntegral w_))+    toWord v_ = (Std_.fromIntegral (Std_.fromEnum v_))+instance (C.Parse ElementSize ElementSize) where+    parse  = GH.parseEnum+    encode  = GH.encodeEnum+instance (C.AllocateList ElementSize) where+    type ListAllocHint ElementSize = Std_.Int+instance (C.EstimateListAlloc ElementSize ElementSize)+data CapnpVersion +type instance (R.ReprFor CapnpVersion) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct CapnpVersion) where+    numStructWords  = 1+    numStructPtrs  = 0+instance (C.Allocate CapnpVersion) where+    type AllocHint CapnpVersion = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc CapnpVersion (C.Parsed CapnpVersion))+instance (C.AllocateList CapnpVersion) where+    type ListAllocHint CapnpVersion = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc CapnpVersion (C.Parsed CapnpVersion))+data instance C.Parsed CapnpVersion+    = CapnpVersion +        {major :: (RP.Parsed Std_.Word16)+        ,minor :: (RP.Parsed Std_.Word8)+        ,micro :: (RP.Parsed Std_.Word8)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed CapnpVersion))+deriving instance (Std_.Eq (C.Parsed CapnpVersion))+instance (C.Parse CapnpVersion (C.Parsed CapnpVersion)) where+    parse raw_ = (CapnpVersion <$> (GH.parseField #major raw_)+                               <*> (GH.parseField #minor raw_)+                               <*> (GH.parseField #micro raw_))+instance (C.Marshal CapnpVersion (C.Parsed CapnpVersion)) where+    marshalInto raw_ CapnpVersion{..} = (do+        (GH.encodeField #major major raw_)+        (GH.encodeField #minor minor raw_)+        (GH.encodeField #micro micro raw_)+        (Std_.pure ())+        )+instance (GH.HasField "major" GH.Slot CapnpVersion Std_.Word16) where+    fieldByLabel  = (GH.dataField 0 0 16 0)+instance (GH.HasField "minor" GH.Slot CapnpVersion Std_.Word8) where+    fieldByLabel  = (GH.dataField 16 0 8 0)+instance (GH.HasField "micro" GH.Slot CapnpVersion Std_.Word8) where+    fieldByLabel  = (GH.dataField 24 0 8 0)+data CodeGeneratorRequest +type instance (R.ReprFor CodeGeneratorRequest) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct CodeGeneratorRequest) where+    numStructWords  = 0+    numStructPtrs  = 4+instance (C.Allocate CodeGeneratorRequest) where+    type AllocHint CodeGeneratorRequest = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc CodeGeneratorRequest (C.Parsed CodeGeneratorRequest))+instance (C.AllocateList CodeGeneratorRequest) where+    type ListAllocHint CodeGeneratorRequest = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc CodeGeneratorRequest (C.Parsed CodeGeneratorRequest))+data instance C.Parsed CodeGeneratorRequest+    = CodeGeneratorRequest +        {nodes :: (RP.Parsed (R.List Node))+        ,requestedFiles :: (RP.Parsed (R.List CodeGeneratorRequest'RequestedFile))+        ,capnpVersion :: (RP.Parsed CapnpVersion)+        ,sourceInfo :: (RP.Parsed (R.List Node'SourceInfo))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed CodeGeneratorRequest))+deriving instance (Std_.Eq (C.Parsed CodeGeneratorRequest))+instance (C.Parse CodeGeneratorRequest (C.Parsed CodeGeneratorRequest)) where+    parse raw_ = (CodeGeneratorRequest <$> (GH.parseField #nodes raw_)+                                       <*> (GH.parseField #requestedFiles raw_)+                                       <*> (GH.parseField #capnpVersion raw_)+                                       <*> (GH.parseField #sourceInfo raw_))+instance (C.Marshal CodeGeneratorRequest (C.Parsed CodeGeneratorRequest)) where+    marshalInto raw_ CodeGeneratorRequest{..} = (do+        (GH.encodeField #nodes nodes raw_)+        (GH.encodeField #requestedFiles requestedFiles raw_)+        (GH.encodeField #capnpVersion capnpVersion raw_)+        (GH.encodeField #sourceInfo sourceInfo raw_)+        (Std_.pure ())+        )+instance (GH.HasField "nodes" GH.Slot CodeGeneratorRequest (R.List Node)) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "requestedFiles" GH.Slot CodeGeneratorRequest (R.List CodeGeneratorRequest'RequestedFile)) where+    fieldByLabel  = (GH.ptrField 1)+instance (GH.HasField "capnpVersion" GH.Slot CodeGeneratorRequest CapnpVersion) where+    fieldByLabel  = (GH.ptrField 2)+instance (GH.HasField "sourceInfo" GH.Slot CodeGeneratorRequest (R.List Node'SourceInfo)) where+    fieldByLabel  = (GH.ptrField 3)+data CodeGeneratorRequest'RequestedFile +type instance (R.ReprFor CodeGeneratorRequest'RequestedFile) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct CodeGeneratorRequest'RequestedFile) where+    numStructWords  = 1+    numStructPtrs  = 2+instance (C.Allocate CodeGeneratorRequest'RequestedFile) where+    type AllocHint CodeGeneratorRequest'RequestedFile = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc CodeGeneratorRequest'RequestedFile (C.Parsed CodeGeneratorRequest'RequestedFile))+instance (C.AllocateList CodeGeneratorRequest'RequestedFile) where+    type ListAllocHint CodeGeneratorRequest'RequestedFile = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc CodeGeneratorRequest'RequestedFile (C.Parsed CodeGeneratorRequest'RequestedFile))+data instance C.Parsed CodeGeneratorRequest'RequestedFile+    = CodeGeneratorRequest'RequestedFile +        {id :: (RP.Parsed Std_.Word64)+        ,filename :: (RP.Parsed Basics.Text)+        ,imports :: (RP.Parsed (R.List CodeGeneratorRequest'RequestedFile'Import))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed CodeGeneratorRequest'RequestedFile))+deriving instance (Std_.Eq (C.Parsed CodeGeneratorRequest'RequestedFile))+instance (C.Parse CodeGeneratorRequest'RequestedFile (C.Parsed CodeGeneratorRequest'RequestedFile)) where+    parse raw_ = (CodeGeneratorRequest'RequestedFile <$> (GH.parseField #id raw_)+                                                     <*> (GH.parseField #filename raw_)+                                                     <*> (GH.parseField #imports raw_))+instance (C.Marshal CodeGeneratorRequest'RequestedFile (C.Parsed CodeGeneratorRequest'RequestedFile)) where+    marshalInto raw_ CodeGeneratorRequest'RequestedFile{..} = (do+        (GH.encodeField #id id raw_)+        (GH.encodeField #filename filename raw_)+        (GH.encodeField #imports imports raw_)+        (Std_.pure ())+        )+instance (GH.HasField "id" GH.Slot CodeGeneratorRequest'RequestedFile Std_.Word64) where+    fieldByLabel  = (GH.dataField 0 0 64 0)+instance (GH.HasField "filename" GH.Slot CodeGeneratorRequest'RequestedFile Basics.Text) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "imports" GH.Slot CodeGeneratorRequest'RequestedFile (R.List CodeGeneratorRequest'RequestedFile'Import)) where+    fieldByLabel  = (GH.ptrField 1)+data CodeGeneratorRequest'RequestedFile'Import +type instance (R.ReprFor CodeGeneratorRequest'RequestedFile'Import) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct CodeGeneratorRequest'RequestedFile'Import) where+    numStructWords  = 1+    numStructPtrs  = 1+instance (C.Allocate CodeGeneratorRequest'RequestedFile'Import) where+    type AllocHint CodeGeneratorRequest'RequestedFile'Import = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc CodeGeneratorRequest'RequestedFile'Import (C.Parsed CodeGeneratorRequest'RequestedFile'Import))+instance (C.AllocateList CodeGeneratorRequest'RequestedFile'Import) where+    type ListAllocHint CodeGeneratorRequest'RequestedFile'Import = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc CodeGeneratorRequest'RequestedFile'Import (C.Parsed CodeGeneratorRequest'RequestedFile'Import))+data instance C.Parsed CodeGeneratorRequest'RequestedFile'Import+    = CodeGeneratorRequest'RequestedFile'Import +        {id :: (RP.Parsed Std_.Word64)+        ,name :: (RP.Parsed Basics.Text)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed CodeGeneratorRequest'RequestedFile'Import))+deriving instance (Std_.Eq (C.Parsed CodeGeneratorRequest'RequestedFile'Import))+instance (C.Parse CodeGeneratorRequest'RequestedFile'Import (C.Parsed CodeGeneratorRequest'RequestedFile'Import)) where+    parse raw_ = (CodeGeneratorRequest'RequestedFile'Import <$> (GH.parseField #id raw_)+                                                            <*> (GH.parseField #name raw_))+instance (C.Marshal CodeGeneratorRequest'RequestedFile'Import (C.Parsed CodeGeneratorRequest'RequestedFile'Import)) where+    marshalInto raw_ CodeGeneratorRequest'RequestedFile'Import{..} = (do+        (GH.encodeField #id id raw_)+        (GH.encodeField #name name raw_)+        (Std_.pure ())+        )+instance (GH.HasField "id" GH.Slot CodeGeneratorRequest'RequestedFile'Import Std_.Word64) where+    fieldByLabel  = (GH.dataField 0 0 64 0)+instance (GH.HasField "name" GH.Slot CodeGeneratorRequest'RequestedFile'Import Basics.Text) where+    fieldByLabel  = (GH.ptrField 0)
gen/lib/Capnp/Gen/Capnp/Schema/Pure.hs view
@@ -13,6 +13,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.Capnp.Schema.Pure(Capnp.Gen.ById.Xa93fc509624c72d9.ElementSize(..)                                   ,Node(..)                                   ,Node'(..)@@ -84,12 +85,12 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Node)) where+instance (Default.Default Node) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Node)) where+instance (Classes.FromStruct Message.Const Node) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Node)) where-    type Cerial msg (Node) = (Capnp.Gen.ById.Xa93fc509624c72d9.Node msg)+instance (Classes.Decerialize Node) where+    type Cerial msg Node = (Capnp.Gen.ById.Xa93fc509624c72d9.Node msg)     decerialize raw = (Node <$> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'id raw)                             <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'displayName raw) >>= Classes.decerialize)                             <*> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'displayNamePrefixLength raw)@@ -99,7 +100,7 @@                             <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'parameters raw) >>= Classes.decerialize)                             <*> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'isGeneric raw)                             <*> (Classes.decerialize raw))-instance (Classes.Marshal s (Node)) where+instance (Classes.Marshal s Node) where     marshalInto raw_ value_ = case value_ of         Node{..} ->             (do@@ -116,20 +117,20 @@                     )                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Node))-instance (Classes.Cerialize s (V.Vector (Node))) where+instance (Classes.Cerialize s Node)+instance (Classes.Cerialize s (V.Vector Node)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Node)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Node))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Node))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Node)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Node)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Node))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Node))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Node)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Node)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Node))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Node))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Node)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Node'      = Node'file @@ -142,12 +143,12 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Node')) where+instance (Default.Default Node') where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Node')) where+instance (Classes.FromStruct Message.Const Node') where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Node')) where-    type Cerial msg (Node') = (Capnp.Gen.ById.Xa93fc509624c72d9.Node msg)+instance (Classes.Decerialize Node') where+    type Cerial msg Node' = (Capnp.Gen.ById.Xa93fc509624c72d9.Node msg)     decerialize raw = (do         raw <- (Capnp.Gen.ById.Xa93fc509624c72d9.get_Node' raw)         case raw of@@ -166,7 +167,7 @@             (Capnp.Gen.ById.Xa93fc509624c72d9.Node'unknown' tag) ->                 (Std_.pure (Node'unknown' tag))         )-instance (Classes.Marshal s (Node')) where+instance (Classes.Marshal s Node') where     marshalInto raw_ value_ = case value_ of         (Node'file) ->             (Capnp.Gen.ById.Xa93fc509624c72d9.set_Node'file raw_)@@ -209,12 +210,12 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Node'struct)) where+instance (Default.Default Node'struct) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Node'struct)) where+instance (Classes.FromStruct Message.Const Node'struct) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Node'struct)) where-    type Cerial msg (Node'struct) = (Capnp.Gen.ById.Xa93fc509624c72d9.Node'struct msg)+instance (Classes.Decerialize Node'struct) where+    type Cerial msg Node'struct = (Capnp.Gen.ById.Xa93fc509624c72d9.Node'struct msg)     decerialize raw = (Node'struct' <$> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'struct'dataWordCount raw)                                     <*> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'struct'pointerCount raw)                                     <*> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'struct'preferredListEncoding raw)@@ -222,7 +223,7 @@                                     <*> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'struct'discriminantCount raw)                                     <*> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'struct'discriminantOffset raw)                                     <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'struct'fields raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Node'struct)) where+instance (Classes.Marshal s Node'struct) where     marshalInto raw_ value_ = case value_ of         Node'struct'{..} ->             (do@@ -241,14 +242,14 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Node'enum)) where+instance (Default.Default Node'enum) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Node'enum)) where+instance (Classes.FromStruct Message.Const Node'enum) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Node'enum)) where-    type Cerial msg (Node'enum) = (Capnp.Gen.ById.Xa93fc509624c72d9.Node'enum msg)+instance (Classes.Decerialize Node'enum) where+    type Cerial msg Node'enum = (Capnp.Gen.ById.Xa93fc509624c72d9.Node'enum msg)     decerialize raw = (Node'enum' <$> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'enum'enumerants raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Node'enum)) where+instance (Classes.Marshal s Node'enum) where     marshalInto raw_ value_ = case value_ of         Node'enum'{..} ->             (do@@ -262,15 +263,15 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Node'interface)) where+instance (Default.Default Node'interface) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Node'interface)) where+instance (Classes.FromStruct Message.Const Node'interface) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Node'interface)) where-    type Cerial msg (Node'interface) = (Capnp.Gen.ById.Xa93fc509624c72d9.Node'interface msg)+instance (Classes.Decerialize Node'interface) where+    type Cerial msg Node'interface = (Capnp.Gen.ById.Xa93fc509624c72d9.Node'interface msg)     decerialize raw = (Node'interface' <$> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'interface'methods raw) >>= Classes.decerialize)                                        <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'interface'superclasses raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Node'interface)) where+instance (Classes.Marshal s Node'interface) where     marshalInto raw_ value_ = case value_ of         Node'interface'{..} ->             (do@@ -285,15 +286,15 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Node'const)) where+instance (Default.Default Node'const) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Node'const)) where+instance (Classes.FromStruct Message.Const Node'const) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Node'const)) where-    type Cerial msg (Node'const) = (Capnp.Gen.ById.Xa93fc509624c72d9.Node'const msg)+instance (Classes.Decerialize Node'const) where+    type Cerial msg Node'const = (Capnp.Gen.ById.Xa93fc509624c72d9.Node'const msg)     decerialize raw = (Node'const' <$> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'const'type_ raw) >>= Classes.decerialize)                                    <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'const'value raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Node'const)) where+instance (Classes.Marshal s Node'const) where     marshalInto raw_ value_ = case value_ of         Node'const'{..} ->             (do@@ -319,12 +320,12 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Node'annotation)) where+instance (Default.Default Node'annotation) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Node'annotation)) where+instance (Classes.FromStruct Message.Const Node'annotation) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Node'annotation)) where-    type Cerial msg (Node'annotation) = (Capnp.Gen.ById.Xa93fc509624c72d9.Node'annotation msg)+instance (Classes.Decerialize Node'annotation) where+    type Cerial msg Node'annotation = (Capnp.Gen.ById.Xa93fc509624c72d9.Node'annotation msg)     decerialize raw = (Node'annotation' <$> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'annotation'type_ raw) >>= Classes.decerialize)                                         <*> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'annotation'targetsFile raw)                                         <*> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'annotation'targetsConst raw)@@ -338,7 +339,7 @@                                         <*> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'annotation'targetsMethod raw)                                         <*> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'annotation'targetsParam raw)                                         <*> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'annotation'targetsAnnotation raw))-instance (Classes.Marshal s (Node'annotation)) where+instance (Classes.Marshal s Node'annotation) where     marshalInto raw_ value_ = case value_ of         Node'annotation'{..} ->             (do@@ -363,34 +364,34 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Node'Parameter)) where+instance (Default.Default Node'Parameter) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Node'Parameter)) where+instance (Classes.FromStruct Message.Const Node'Parameter) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Node'Parameter)) where-    type Cerial msg (Node'Parameter) = (Capnp.Gen.ById.Xa93fc509624c72d9.Node'Parameter msg)+instance (Classes.Decerialize Node'Parameter) where+    type Cerial msg Node'Parameter = (Capnp.Gen.ById.Xa93fc509624c72d9.Node'Parameter msg)     decerialize raw = (Node'Parameter <$> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'Parameter'name raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Node'Parameter)) where+instance (Classes.Marshal s Node'Parameter) where     marshalInto raw_ value_ = case value_ of         Node'Parameter{..} ->             (do                 ((Classes.cerialize (Untyped.message raw_) name) >>= (Capnp.Gen.ById.Xa93fc509624c72d9.set_Node'Parameter'name raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Node'Parameter))-instance (Classes.Cerialize s (V.Vector (Node'Parameter))) where+instance (Classes.Cerialize s Node'Parameter)+instance (Classes.Cerialize s (V.Vector Node'Parameter)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Node'Parameter)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Node'Parameter))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Node'Parameter))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Node'Parameter)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Node'Parameter)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Node'Parameter))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Node'Parameter))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Node'Parameter)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Node'Parameter)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Node'Parameter))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Node'Parameter))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Node'Parameter)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Node'NestedNode      = Node'NestedNode @@ -399,15 +400,15 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Node'NestedNode)) where+instance (Default.Default Node'NestedNode) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Node'NestedNode)) where+instance (Classes.FromStruct Message.Const Node'NestedNode) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Node'NestedNode)) where-    type Cerial msg (Node'NestedNode) = (Capnp.Gen.ById.Xa93fc509624c72d9.Node'NestedNode msg)+instance (Classes.Decerialize Node'NestedNode) where+    type Cerial msg Node'NestedNode = (Capnp.Gen.ById.Xa93fc509624c72d9.Node'NestedNode msg)     decerialize raw = (Node'NestedNode <$> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'NestedNode'name raw) >>= Classes.decerialize)                                        <*> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'NestedNode'id raw))-instance (Classes.Marshal s (Node'NestedNode)) where+instance (Classes.Marshal s Node'NestedNode) where     marshalInto raw_ value_ = case value_ of         Node'NestedNode{..} ->             (do@@ -415,20 +416,20 @@                 (Capnp.Gen.ById.Xa93fc509624c72d9.set_Node'NestedNode'id raw_ id)                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Node'NestedNode))-instance (Classes.Cerialize s (V.Vector (Node'NestedNode))) where+instance (Classes.Cerialize s Node'NestedNode)+instance (Classes.Cerialize s (V.Vector Node'NestedNode)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Node'NestedNode)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Node'NestedNode))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Node'NestedNode))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Node'NestedNode)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Node'NestedNode)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Node'NestedNode))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Node'NestedNode))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Node'NestedNode)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Node'NestedNode)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Node'NestedNode))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Node'NestedNode))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Node'NestedNode)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Node'SourceInfo      = Node'SourceInfo @@ -438,16 +439,16 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Node'SourceInfo)) where+instance (Default.Default Node'SourceInfo) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Node'SourceInfo)) where+instance (Classes.FromStruct Message.Const Node'SourceInfo) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Node'SourceInfo)) where-    type Cerial msg (Node'SourceInfo) = (Capnp.Gen.ById.Xa93fc509624c72d9.Node'SourceInfo msg)+instance (Classes.Decerialize Node'SourceInfo) where+    type Cerial msg Node'SourceInfo = (Capnp.Gen.ById.Xa93fc509624c72d9.Node'SourceInfo msg)     decerialize raw = (Node'SourceInfo <$> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'SourceInfo'id raw)                                        <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'SourceInfo'docComment raw) >>= Classes.decerialize)                                        <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'SourceInfo'members raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Node'SourceInfo)) where+instance (Classes.Marshal s Node'SourceInfo) where     marshalInto raw_ value_ = case value_ of         Node'SourceInfo{..} ->             (do@@ -456,20 +457,20 @@                 ((Classes.cerialize (Untyped.message raw_) members) >>= (Capnp.Gen.ById.Xa93fc509624c72d9.set_Node'SourceInfo'members raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Node'SourceInfo))-instance (Classes.Cerialize s (V.Vector (Node'SourceInfo))) where+instance (Classes.Cerialize s Node'SourceInfo)+instance (Classes.Cerialize s (V.Vector Node'SourceInfo)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Node'SourceInfo)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Node'SourceInfo))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Node'SourceInfo))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Node'SourceInfo)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Node'SourceInfo)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Node'SourceInfo))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Node'SourceInfo))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Node'SourceInfo)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Node'SourceInfo)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Node'SourceInfo))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Node'SourceInfo))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Node'SourceInfo)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Node'SourceInfo'Member      = Node'SourceInfo'Member @@ -477,34 +478,34 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Node'SourceInfo'Member)) where+instance (Default.Default Node'SourceInfo'Member) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Node'SourceInfo'Member)) where+instance (Classes.FromStruct Message.Const Node'SourceInfo'Member) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Node'SourceInfo'Member)) where-    type Cerial msg (Node'SourceInfo'Member) = (Capnp.Gen.ById.Xa93fc509624c72d9.Node'SourceInfo'Member msg)+instance (Classes.Decerialize Node'SourceInfo'Member) where+    type Cerial msg Node'SourceInfo'Member = (Capnp.Gen.ById.Xa93fc509624c72d9.Node'SourceInfo'Member msg)     decerialize raw = (Node'SourceInfo'Member <$> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Node'SourceInfo'Member'docComment raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Node'SourceInfo'Member)) where+instance (Classes.Marshal s Node'SourceInfo'Member) where     marshalInto raw_ value_ = case value_ of         Node'SourceInfo'Member{..} ->             (do                 ((Classes.cerialize (Untyped.message raw_) docComment) >>= (Capnp.Gen.ById.Xa93fc509624c72d9.set_Node'SourceInfo'Member'docComment raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Node'SourceInfo'Member))-instance (Classes.Cerialize s (V.Vector (Node'SourceInfo'Member))) where+instance (Classes.Cerialize s Node'SourceInfo'Member)+instance (Classes.Cerialize s (V.Vector Node'SourceInfo'Member)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Node'SourceInfo'Member)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Node'SourceInfo'Member))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Node'SourceInfo'Member))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Node'SourceInfo'Member)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Node'SourceInfo'Member)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Node'SourceInfo'Member))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Node'SourceInfo'Member))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Node'SourceInfo'Member)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Node'SourceInfo'Member)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Node'SourceInfo'Member))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Node'SourceInfo'Member))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Node'SourceInfo'Member)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Field      = Field @@ -517,19 +518,19 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Field)) where+instance (Default.Default Field) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Field)) where+instance (Classes.FromStruct Message.Const Field) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Field)) where-    type Cerial msg (Field) = (Capnp.Gen.ById.Xa93fc509624c72d9.Field msg)+instance (Classes.Decerialize Field) where+    type Cerial msg Field = (Capnp.Gen.ById.Xa93fc509624c72d9.Field msg)     decerialize raw = (Field <$> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Field'name raw) >>= Classes.decerialize)                              <*> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Field'codeOrder raw)                              <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Field'annotations raw) >>= Classes.decerialize)                              <*> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Field'discriminantValue raw)                              <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Field'ordinal raw) >>= Classes.decerialize)                              <*> (Classes.decerialize raw))-instance (Classes.Marshal s (Field)) where+instance (Classes.Marshal s Field) where     marshalInto raw_ value_ = case value_ of         Field{..} ->             (do@@ -546,20 +547,20 @@                     )                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Field))-instance (Classes.Cerialize s (V.Vector (Field))) where+instance (Classes.Cerialize s Field)+instance (Classes.Cerialize s (V.Vector Field)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Field)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Field))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Field))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Field)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Field)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Field))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Field))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Field)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Field)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Field))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Field))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Field)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Field'      = Field'slot Field'slot@@ -568,12 +569,12 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Field')) where+instance (Default.Default Field') where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Field')) where+instance (Classes.FromStruct Message.Const Field') where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Field')) where-    type Cerial msg (Field') = (Capnp.Gen.ById.Xa93fc509624c72d9.Field msg)+instance (Classes.Decerialize Field') where+    type Cerial msg Field' = (Capnp.Gen.ById.Xa93fc509624c72d9.Field msg)     decerialize raw = (do         raw <- (Capnp.Gen.ById.Xa93fc509624c72d9.get_Field' raw)         case raw of@@ -584,7 +585,7 @@             (Capnp.Gen.ById.Xa93fc509624c72d9.Field'unknown' tag) ->                 (Std_.pure (Field'unknown' tag))         )-instance (Classes.Marshal s (Field')) where+instance (Classes.Marshal s Field') where     marshalInto raw_ value_ = case value_ of         (Field'slot arg_) ->             (do@@ -607,17 +608,17 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Field'slot)) where+instance (Default.Default Field'slot) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Field'slot)) where+instance (Classes.FromStruct Message.Const Field'slot) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Field'slot)) where-    type Cerial msg (Field'slot) = (Capnp.Gen.ById.Xa93fc509624c72d9.Field'slot msg)+instance (Classes.Decerialize Field'slot) where+    type Cerial msg Field'slot = (Capnp.Gen.ById.Xa93fc509624c72d9.Field'slot msg)     decerialize raw = (Field'slot' <$> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Field'slot'offset raw)                                    <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Field'slot'type_ raw) >>= Classes.decerialize)                                    <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Field'slot'defaultValue raw) >>= Classes.decerialize)                                    <*> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Field'slot'hadExplicitDefault raw))-instance (Classes.Marshal s (Field'slot)) where+instance (Classes.Marshal s Field'slot) where     marshalInto raw_ value_ = case value_ of         Field'slot'{..} ->             (do@@ -633,14 +634,14 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Field'group)) where+instance (Default.Default Field'group) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Field'group)) where+instance (Classes.FromStruct Message.Const Field'group) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Field'group)) where-    type Cerial msg (Field'group) = (Capnp.Gen.ById.Xa93fc509624c72d9.Field'group msg)+instance (Classes.Decerialize Field'group) where+    type Cerial msg Field'group = (Capnp.Gen.ById.Xa93fc509624c72d9.Field'group msg)     decerialize raw = (Field'group' <$> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Field'group'typeId raw))-instance (Classes.Marshal s (Field'group)) where+instance (Classes.Marshal s Field'group) where     marshalInto raw_ value_ = case value_ of         Field'group'{..} ->             (do@@ -654,12 +655,12 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Field'ordinal)) where+instance (Default.Default Field'ordinal) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Field'ordinal)) where+instance (Classes.FromStruct Message.Const Field'ordinal) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Field'ordinal)) where-    type Cerial msg (Field'ordinal) = (Capnp.Gen.ById.Xa93fc509624c72d9.Field'ordinal msg)+instance (Classes.Decerialize Field'ordinal) where+    type Cerial msg Field'ordinal = (Capnp.Gen.ById.Xa93fc509624c72d9.Field'ordinal msg)     decerialize raw = (do         raw <- (Capnp.Gen.ById.Xa93fc509624c72d9.get_Field'ordinal' raw)         case raw of@@ -670,7 +671,7 @@             (Capnp.Gen.ById.Xa93fc509624c72d9.Field'ordinal'unknown' tag) ->                 (Std_.pure (Field'ordinal'unknown' tag))         )-instance (Classes.Marshal s (Field'ordinal)) where+instance (Classes.Marshal s Field'ordinal) where     marshalInto raw_ value_ = case value_ of         (Field'ordinal'implicit) ->             (Capnp.Gen.ById.Xa93fc509624c72d9.set_Field'ordinal'implicit raw_)@@ -686,16 +687,16 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Enumerant)) where+instance (Default.Default Enumerant) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Enumerant)) where+instance (Classes.FromStruct Message.Const Enumerant) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Enumerant)) where-    type Cerial msg (Enumerant) = (Capnp.Gen.ById.Xa93fc509624c72d9.Enumerant msg)+instance (Classes.Decerialize Enumerant) where+    type Cerial msg Enumerant = (Capnp.Gen.ById.Xa93fc509624c72d9.Enumerant msg)     decerialize raw = (Enumerant <$> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Enumerant'name raw) >>= Classes.decerialize)                                  <*> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Enumerant'codeOrder raw)                                  <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Enumerant'annotations raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Enumerant)) where+instance (Classes.Marshal s Enumerant) where     marshalInto raw_ value_ = case value_ of         Enumerant{..} ->             (do@@ -704,20 +705,20 @@                 ((Classes.cerialize (Untyped.message raw_) annotations) >>= (Capnp.Gen.ById.Xa93fc509624c72d9.set_Enumerant'annotations raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Enumerant))-instance (Classes.Cerialize s (V.Vector (Enumerant))) where+instance (Classes.Cerialize s Enumerant)+instance (Classes.Cerialize s (V.Vector Enumerant)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Enumerant)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Enumerant))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Enumerant))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Enumerant)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Enumerant)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Enumerant))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Enumerant))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Enumerant)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Enumerant)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Enumerant))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Enumerant))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Enumerant)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Superclass      = Superclass @@ -726,15 +727,15 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Superclass)) where+instance (Default.Default Superclass) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Superclass)) where+instance (Classes.FromStruct Message.Const Superclass) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Superclass)) where-    type Cerial msg (Superclass) = (Capnp.Gen.ById.Xa93fc509624c72d9.Superclass msg)+instance (Classes.Decerialize Superclass) where+    type Cerial msg Superclass = (Capnp.Gen.ById.Xa93fc509624c72d9.Superclass msg)     decerialize raw = (Superclass <$> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Superclass'id raw)                                   <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Superclass'brand raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Superclass)) where+instance (Classes.Marshal s Superclass) where     marshalInto raw_ value_ = case value_ of         Superclass{..} ->             (do@@ -742,20 +743,20 @@                 ((Classes.cerialize (Untyped.message raw_) brand) >>= (Capnp.Gen.ById.Xa93fc509624c72d9.set_Superclass'brand raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Superclass))-instance (Classes.Cerialize s (V.Vector (Superclass))) where+instance (Classes.Cerialize s Superclass)+instance (Classes.Cerialize s (V.Vector Superclass)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Superclass)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Superclass))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Superclass))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Superclass)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Superclass)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Superclass))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Superclass))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Superclass)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Superclass)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Superclass))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Superclass))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Superclass)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Method      = Method @@ -770,12 +771,12 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Method)) where+instance (Default.Default Method) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Method)) where+instance (Classes.FromStruct Message.Const Method) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Method)) where-    type Cerial msg (Method) = (Capnp.Gen.ById.Xa93fc509624c72d9.Method msg)+instance (Classes.Decerialize Method) where+    type Cerial msg Method = (Capnp.Gen.ById.Xa93fc509624c72d9.Method msg)     decerialize raw = (Method <$> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Method'name raw) >>= Classes.decerialize)                               <*> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Method'codeOrder raw)                               <*> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Method'paramStructType raw)@@ -784,7 +785,7 @@                               <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Method'paramBrand raw) >>= Classes.decerialize)                               <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Method'resultBrand raw) >>= Classes.decerialize)                               <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Method'implicitParameters raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Method)) where+instance (Classes.Marshal s Method) where     marshalInto raw_ value_ = case value_ of         Method{..} ->             (do@@ -798,20 +799,20 @@                 ((Classes.cerialize (Untyped.message raw_) implicitParameters) >>= (Capnp.Gen.ById.Xa93fc509624c72d9.set_Method'implicitParameters raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Method))-instance (Classes.Cerialize s (V.Vector (Method))) where+instance (Classes.Cerialize s Method)+instance (Classes.Cerialize s (V.Vector Method)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Method)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Method))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Method))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Method)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Method)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Method))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Method))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Method)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Method)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Method))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Method))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Method)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Type      = Type'void @@ -837,12 +838,12 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Type)) where+instance (Default.Default Type) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Type)) where+instance (Classes.FromStruct Message.Const Type) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Type)) where-    type Cerial msg (Type) = (Capnp.Gen.ById.Xa93fc509624c72d9.Type msg)+instance (Classes.Decerialize Type) where+    type Cerial msg Type = (Capnp.Gen.ById.Xa93fc509624c72d9.Type msg)     decerialize raw = (do         raw <- (Capnp.Gen.ById.Xa93fc509624c72d9.get_Type' raw)         case raw of@@ -887,7 +888,7 @@             (Capnp.Gen.ById.Xa93fc509624c72d9.Type'unknown' tag) ->                 (Std_.pure (Type'unknown' tag))         )-instance (Classes.Marshal s (Type)) where+instance (Classes.Marshal s Type) where     marshalInto raw_ value_ = case value_ of         (Type'void) ->             (Capnp.Gen.ById.Xa93fc509624c72d9.set_Type'void raw_)@@ -944,20 +945,20 @@                 )         (Type'unknown' tag) ->             (Capnp.Gen.ById.Xa93fc509624c72d9.set_Type'unknown' raw_ tag)-instance (Classes.Cerialize s (Type))-instance (Classes.Cerialize s (V.Vector (Type))) where+instance (Classes.Cerialize s Type)+instance (Classes.Cerialize s (V.Vector Type)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Type)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Type))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Type))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Type)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Type)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Type))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Type))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Type)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Type)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Type))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Type))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Type)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Type'list      = Type'list' @@ -965,14 +966,14 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Type'list)) where+instance (Default.Default Type'list) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Type'list)) where+instance (Classes.FromStruct Message.Const Type'list) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Type'list)) where-    type Cerial msg (Type'list) = (Capnp.Gen.ById.Xa93fc509624c72d9.Type'list msg)+instance (Classes.Decerialize Type'list) where+    type Cerial msg Type'list = (Capnp.Gen.ById.Xa93fc509624c72d9.Type'list msg)     decerialize raw = (Type'list' <$> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Type'list'elementType raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Type'list)) where+instance (Classes.Marshal s Type'list) where     marshalInto raw_ value_ = case value_ of         Type'list'{..} ->             (do@@ -986,15 +987,15 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Type'enum)) where+instance (Default.Default Type'enum) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Type'enum)) where+instance (Classes.FromStruct Message.Const Type'enum) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Type'enum)) where-    type Cerial msg (Type'enum) = (Capnp.Gen.ById.Xa93fc509624c72d9.Type'enum msg)+instance (Classes.Decerialize Type'enum) where+    type Cerial msg Type'enum = (Capnp.Gen.ById.Xa93fc509624c72d9.Type'enum msg)     decerialize raw = (Type'enum' <$> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Type'enum'typeId raw)                                   <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Type'enum'brand raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Type'enum)) where+instance (Classes.Marshal s Type'enum) where     marshalInto raw_ value_ = case value_ of         Type'enum'{..} ->             (do@@ -1009,15 +1010,15 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Type'struct)) where+instance (Default.Default Type'struct) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Type'struct)) where+instance (Classes.FromStruct Message.Const Type'struct) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Type'struct)) where-    type Cerial msg (Type'struct) = (Capnp.Gen.ById.Xa93fc509624c72d9.Type'struct msg)+instance (Classes.Decerialize Type'struct) where+    type Cerial msg Type'struct = (Capnp.Gen.ById.Xa93fc509624c72d9.Type'struct msg)     decerialize raw = (Type'struct' <$> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Type'struct'typeId raw)                                     <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Type'struct'brand raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Type'struct)) where+instance (Classes.Marshal s Type'struct) where     marshalInto raw_ value_ = case value_ of         Type'struct'{..} ->             (do@@ -1032,15 +1033,15 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Type'interface)) where+instance (Default.Default Type'interface) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Type'interface)) where+instance (Classes.FromStruct Message.Const Type'interface) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Type'interface)) where-    type Cerial msg (Type'interface) = (Capnp.Gen.ById.Xa93fc509624c72d9.Type'interface msg)+instance (Classes.Decerialize Type'interface) where+    type Cerial msg Type'interface = (Capnp.Gen.ById.Xa93fc509624c72d9.Type'interface msg)     decerialize raw = (Type'interface' <$> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Type'interface'typeId raw)                                        <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Type'interface'brand raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Type'interface)) where+instance (Classes.Marshal s Type'interface) where     marshalInto raw_ value_ = case value_ of         Type'interface'{..} ->             (do@@ -1056,12 +1057,12 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Type'anyPointer)) where+instance (Default.Default Type'anyPointer) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Type'anyPointer)) where+instance (Classes.FromStruct Message.Const Type'anyPointer) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Type'anyPointer)) where-    type Cerial msg (Type'anyPointer) = (Capnp.Gen.ById.Xa93fc509624c72d9.Type'anyPointer msg)+instance (Classes.Decerialize Type'anyPointer) where+    type Cerial msg Type'anyPointer = (Capnp.Gen.ById.Xa93fc509624c72d9.Type'anyPointer msg)     decerialize raw = (do         raw <- (Capnp.Gen.ById.Xa93fc509624c72d9.get_Type'anyPointer' raw)         case raw of@@ -1074,7 +1075,7 @@             (Capnp.Gen.ById.Xa93fc509624c72d9.Type'anyPointer'unknown' tag) ->                 (Std_.pure (Type'anyPointer'unknown' tag))         )-instance (Classes.Marshal s (Type'anyPointer)) where+instance (Classes.Marshal s Type'anyPointer) where     marshalInto raw_ value_ = case value_ of         (Type'anyPointer'unconstrained arg_) ->             (do@@ -1102,12 +1103,12 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Type'anyPointer'unconstrained)) where+instance (Default.Default Type'anyPointer'unconstrained) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Type'anyPointer'unconstrained)) where+instance (Classes.FromStruct Message.Const Type'anyPointer'unconstrained) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Type'anyPointer'unconstrained)) where-    type Cerial msg (Type'anyPointer'unconstrained) = (Capnp.Gen.ById.Xa93fc509624c72d9.Type'anyPointer'unconstrained msg)+instance (Classes.Decerialize Type'anyPointer'unconstrained) where+    type Cerial msg Type'anyPointer'unconstrained = (Capnp.Gen.ById.Xa93fc509624c72d9.Type'anyPointer'unconstrained msg)     decerialize raw = (do         raw <- (Capnp.Gen.ById.Xa93fc509624c72d9.get_Type'anyPointer'unconstrained' raw)         case raw of@@ -1122,7 +1123,7 @@             (Capnp.Gen.ById.Xa93fc509624c72d9.Type'anyPointer'unconstrained'unknown' tag) ->                 (Std_.pure (Type'anyPointer'unconstrained'unknown' tag))         )-instance (Classes.Marshal s (Type'anyPointer'unconstrained)) where+instance (Classes.Marshal s Type'anyPointer'unconstrained) where     marshalInto raw_ value_ = case value_ of         (Type'anyPointer'unconstrained'anyKind) ->             (Capnp.Gen.ById.Xa93fc509624c72d9.set_Type'anyPointer'unconstrained'anyKind raw_)@@ -1141,15 +1142,15 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Type'anyPointer'parameter)) where+instance (Default.Default Type'anyPointer'parameter) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Type'anyPointer'parameter)) where+instance (Classes.FromStruct Message.Const Type'anyPointer'parameter) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Type'anyPointer'parameter)) where-    type Cerial msg (Type'anyPointer'parameter) = (Capnp.Gen.ById.Xa93fc509624c72d9.Type'anyPointer'parameter msg)+instance (Classes.Decerialize Type'anyPointer'parameter) where+    type Cerial msg Type'anyPointer'parameter = (Capnp.Gen.ById.Xa93fc509624c72d9.Type'anyPointer'parameter msg)     decerialize raw = (Type'anyPointer'parameter' <$> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Type'anyPointer'parameter'scopeId raw)                                                   <*> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Type'anyPointer'parameter'parameterIndex raw))-instance (Classes.Marshal s (Type'anyPointer'parameter)) where+instance (Classes.Marshal s Type'anyPointer'parameter) where     marshalInto raw_ value_ = case value_ of         Type'anyPointer'parameter'{..} ->             (do@@ -1163,14 +1164,14 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Type'anyPointer'implicitMethodParameter)) where+instance (Default.Default Type'anyPointer'implicitMethodParameter) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Type'anyPointer'implicitMethodParameter)) where+instance (Classes.FromStruct Message.Const Type'anyPointer'implicitMethodParameter) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Type'anyPointer'implicitMethodParameter)) where-    type Cerial msg (Type'anyPointer'implicitMethodParameter) = (Capnp.Gen.ById.Xa93fc509624c72d9.Type'anyPointer'implicitMethodParameter msg)+instance (Classes.Decerialize Type'anyPointer'implicitMethodParameter) where+    type Cerial msg Type'anyPointer'implicitMethodParameter = (Capnp.Gen.ById.Xa93fc509624c72d9.Type'anyPointer'implicitMethodParameter msg)     decerialize raw = (Type'anyPointer'implicitMethodParameter' <$> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Type'anyPointer'implicitMethodParameter'parameterIndex raw))-instance (Classes.Marshal s (Type'anyPointer'implicitMethodParameter)) where+instance (Classes.Marshal s Type'anyPointer'implicitMethodParameter) where     marshalInto raw_ value_ = case value_ of         Type'anyPointer'implicitMethodParameter'{..} ->             (do@@ -1183,34 +1184,34 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Brand)) where+instance (Default.Default Brand) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Brand)) where+instance (Classes.FromStruct Message.Const Brand) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Brand)) where-    type Cerial msg (Brand) = (Capnp.Gen.ById.Xa93fc509624c72d9.Brand msg)+instance (Classes.Decerialize Brand) where+    type Cerial msg Brand = (Capnp.Gen.ById.Xa93fc509624c72d9.Brand msg)     decerialize raw = (Brand <$> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Brand'scopes raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Brand)) where+instance (Classes.Marshal s Brand) where     marshalInto raw_ value_ = case value_ of         Brand{..} ->             (do                 ((Classes.cerialize (Untyped.message raw_) scopes) >>= (Capnp.Gen.ById.Xa93fc509624c72d9.set_Brand'scopes raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Brand))-instance (Classes.Cerialize s (V.Vector (Brand))) where+instance (Classes.Cerialize s Brand)+instance (Classes.Cerialize s (V.Vector Brand)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Brand)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Brand))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Brand))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Brand)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Brand)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Brand))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Brand))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Brand)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Brand)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Brand))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Brand))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Brand)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Brand'Scope      = Brand'Scope @@ -1219,15 +1220,15 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Brand'Scope)) where+instance (Default.Default Brand'Scope) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Brand'Scope)) where+instance (Classes.FromStruct Message.Const Brand'Scope) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Brand'Scope)) where-    type Cerial msg (Brand'Scope) = (Capnp.Gen.ById.Xa93fc509624c72d9.Brand'Scope msg)+instance (Classes.Decerialize Brand'Scope) where+    type Cerial msg Brand'Scope = (Capnp.Gen.ById.Xa93fc509624c72d9.Brand'Scope msg)     decerialize raw = (Brand'Scope <$> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Brand'Scope'scopeId raw)                                    <*> (Classes.decerialize raw))-instance (Classes.Marshal s (Brand'Scope)) where+instance (Classes.Marshal s Brand'Scope) where     marshalInto raw_ value_ = case value_ of         Brand'Scope{..} ->             (do@@ -1237,20 +1238,20 @@                     )                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Brand'Scope))-instance (Classes.Cerialize s (V.Vector (Brand'Scope))) where+instance (Classes.Cerialize s Brand'Scope)+instance (Classes.Cerialize s (V.Vector Brand'Scope)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Brand'Scope)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Brand'Scope))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Brand'Scope))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Brand'Scope)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Brand'Scope)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Brand'Scope))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Brand'Scope))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Brand'Scope)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Brand'Scope)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Brand'Scope))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Brand'Scope))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Brand'Scope)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Brand'Scope'      = Brand'Scope'bind (V.Vector Brand'Binding)@@ -1259,12 +1260,12 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Brand'Scope')) where+instance (Default.Default Brand'Scope') where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Brand'Scope')) where+instance (Classes.FromStruct Message.Const Brand'Scope') where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Brand'Scope')) where-    type Cerial msg (Brand'Scope') = (Capnp.Gen.ById.Xa93fc509624c72d9.Brand'Scope msg)+instance (Classes.Decerialize Brand'Scope') where+    type Cerial msg Brand'Scope' = (Capnp.Gen.ById.Xa93fc509624c72d9.Brand'Scope msg)     decerialize raw = (do         raw <- (Capnp.Gen.ById.Xa93fc509624c72d9.get_Brand'Scope' raw)         case raw of@@ -1275,7 +1276,7 @@             (Capnp.Gen.ById.Xa93fc509624c72d9.Brand'Scope'unknown' tag) ->                 (Std_.pure (Brand'Scope'unknown' tag))         )-instance (Classes.Marshal s (Brand'Scope')) where+instance (Classes.Marshal s Brand'Scope') where     marshalInto raw_ value_ = case value_ of         (Brand'Scope'bind arg_) ->             ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.Xa93fc509624c72d9.set_Brand'Scope'bind raw_))@@ -1290,12 +1291,12 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Brand'Binding)) where+instance (Default.Default Brand'Binding) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Brand'Binding)) where+instance (Classes.FromStruct Message.Const Brand'Binding) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Brand'Binding)) where-    type Cerial msg (Brand'Binding) = (Capnp.Gen.ById.Xa93fc509624c72d9.Brand'Binding msg)+instance (Classes.Decerialize Brand'Binding) where+    type Cerial msg Brand'Binding = (Capnp.Gen.ById.Xa93fc509624c72d9.Brand'Binding msg)     decerialize raw = (do         raw <- (Capnp.Gen.ById.Xa93fc509624c72d9.get_Brand'Binding' raw)         case raw of@@ -1306,7 +1307,7 @@             (Capnp.Gen.ById.Xa93fc509624c72d9.Brand'Binding'unknown' tag) ->                 (Std_.pure (Brand'Binding'unknown' tag))         )-instance (Classes.Marshal s (Brand'Binding)) where+instance (Classes.Marshal s Brand'Binding) where     marshalInto raw_ value_ = case value_ of         (Brand'Binding'unbound) ->             (Capnp.Gen.ById.Xa93fc509624c72d9.set_Brand'Binding'unbound raw_)@@ -1314,20 +1315,20 @@             ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.Xa93fc509624c72d9.set_Brand'Binding'type_ raw_))         (Brand'Binding'unknown' tag) ->             (Capnp.Gen.ById.Xa93fc509624c72d9.set_Brand'Binding'unknown' raw_ tag)-instance (Classes.Cerialize s (Brand'Binding))-instance (Classes.Cerialize s (V.Vector (Brand'Binding))) where+instance (Classes.Cerialize s Brand'Binding)+instance (Classes.Cerialize s (V.Vector Brand'Binding)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Brand'Binding)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Brand'Binding))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Brand'Binding))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Brand'Binding)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Brand'Binding)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Brand'Binding))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Brand'Binding))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Brand'Binding)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Brand'Binding)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Brand'Binding))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Brand'Binding))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Brand'Binding)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Value      = Value'void @@ -1353,12 +1354,12 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Value)) where+instance (Default.Default Value) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Value)) where+instance (Classes.FromStruct Message.Const Value) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Value)) where-    type Cerial msg (Value) = (Capnp.Gen.ById.Xa93fc509624c72d9.Value msg)+instance (Classes.Decerialize Value) where+    type Cerial msg Value = (Capnp.Gen.ById.Xa93fc509624c72d9.Value msg)     decerialize raw = (do         raw <- (Capnp.Gen.ById.Xa93fc509624c72d9.get_Value' raw)         case raw of@@ -1403,7 +1404,7 @@             (Capnp.Gen.ById.Xa93fc509624c72d9.Value'unknown' tag) ->                 (Std_.pure (Value'unknown' tag))         )-instance (Classes.Marshal s (Value)) where+instance (Classes.Marshal s Value) where     marshalInto raw_ value_ = case value_ of         (Value'void) ->             (Capnp.Gen.ById.Xa93fc509624c72d9.set_Value'void raw_)@@ -1445,20 +1446,20 @@             ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.Xa93fc509624c72d9.set_Value'anyPointer raw_))         (Value'unknown' tag) ->             (Capnp.Gen.ById.Xa93fc509624c72d9.set_Value'unknown' raw_ tag)-instance (Classes.Cerialize s (Value))-instance (Classes.Cerialize s (V.Vector (Value))) where+instance (Classes.Cerialize s Value)+instance (Classes.Cerialize s (V.Vector Value)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Value)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Value))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Value))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Value)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Value)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Value))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Value))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Value)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Value)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Value))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Value))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Value)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data Annotation      = Annotation @@ -1468,16 +1469,16 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Annotation)) where+instance (Default.Default Annotation) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Annotation)) where+instance (Classes.FromStruct Message.Const Annotation) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Annotation)) where-    type Cerial msg (Annotation) = (Capnp.Gen.ById.Xa93fc509624c72d9.Annotation msg)+instance (Classes.Decerialize Annotation) where+    type Cerial msg Annotation = (Capnp.Gen.ById.Xa93fc509624c72d9.Annotation msg)     decerialize raw = (Annotation <$> (Capnp.Gen.ById.Xa93fc509624c72d9.get_Annotation'id raw)                                   <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Annotation'value raw) >>= Classes.decerialize)                                   <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_Annotation'brand raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Annotation)) where+instance (Classes.Marshal s Annotation) where     marshalInto raw_ value_ = case value_ of         Annotation{..} ->             (do@@ -1486,20 +1487,20 @@                 ((Classes.cerialize (Untyped.message raw_) brand) >>= (Capnp.Gen.ById.Xa93fc509624c72d9.set_Annotation'brand raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (Annotation))-instance (Classes.Cerialize s (V.Vector (Annotation))) where+instance (Classes.Cerialize s Annotation)+instance (Classes.Cerialize s (V.Vector Annotation)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Annotation)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector Annotation))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Annotation))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Annotation)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Annotation)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Annotation))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Annotation))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Annotation)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Annotation)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Annotation))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Annotation))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Annotation)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data CapnpVersion      = CapnpVersion @@ -1509,16 +1510,16 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (CapnpVersion)) where+instance (Default.Default CapnpVersion) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (CapnpVersion)) where+instance (Classes.FromStruct Message.Const CapnpVersion) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (CapnpVersion)) where-    type Cerial msg (CapnpVersion) = (Capnp.Gen.ById.Xa93fc509624c72d9.CapnpVersion msg)+instance (Classes.Decerialize CapnpVersion) where+    type Cerial msg CapnpVersion = (Capnp.Gen.ById.Xa93fc509624c72d9.CapnpVersion msg)     decerialize raw = (CapnpVersion <$> (Capnp.Gen.ById.Xa93fc509624c72d9.get_CapnpVersion'major raw)                                     <*> (Capnp.Gen.ById.Xa93fc509624c72d9.get_CapnpVersion'minor raw)                                     <*> (Capnp.Gen.ById.Xa93fc509624c72d9.get_CapnpVersion'micro raw))-instance (Classes.Marshal s (CapnpVersion)) where+instance (Classes.Marshal s CapnpVersion) where     marshalInto raw_ value_ = case value_ of         CapnpVersion{..} ->             (do@@ -1527,20 +1528,20 @@                 (Capnp.Gen.ById.Xa93fc509624c72d9.set_CapnpVersion'micro raw_ micro)                 (Std_.pure ())                 )-instance (Classes.Cerialize s (CapnpVersion))-instance (Classes.Cerialize s (V.Vector (CapnpVersion))) where+instance (Classes.Cerialize s CapnpVersion)+instance (Classes.Cerialize s (V.Vector CapnpVersion)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (CapnpVersion)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector CapnpVersion))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (CapnpVersion))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector CapnpVersion)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (CapnpVersion)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector CapnpVersion))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CapnpVersion))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CapnpVersion)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CapnpVersion)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CapnpVersion))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CapnpVersion))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CapnpVersion)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data CodeGeneratorRequest      = CodeGeneratorRequest @@ -1551,17 +1552,17 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (CodeGeneratorRequest)) where+instance (Default.Default CodeGeneratorRequest) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (CodeGeneratorRequest)) where+instance (Classes.FromStruct Message.Const CodeGeneratorRequest) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (CodeGeneratorRequest)) where-    type Cerial msg (CodeGeneratorRequest) = (Capnp.Gen.ById.Xa93fc509624c72d9.CodeGeneratorRequest msg)+instance (Classes.Decerialize CodeGeneratorRequest) where+    type Cerial msg CodeGeneratorRequest = (Capnp.Gen.ById.Xa93fc509624c72d9.CodeGeneratorRequest msg)     decerialize raw = (CodeGeneratorRequest <$> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_CodeGeneratorRequest'nodes raw) >>= Classes.decerialize)                                             <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_CodeGeneratorRequest'requestedFiles raw) >>= Classes.decerialize)                                             <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_CodeGeneratorRequest'capnpVersion raw) >>= Classes.decerialize)                                             <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_CodeGeneratorRequest'sourceInfo raw) >>= Classes.decerialize))-instance (Classes.Marshal s (CodeGeneratorRequest)) where+instance (Classes.Marshal s CodeGeneratorRequest) where     marshalInto raw_ value_ = case value_ of         CodeGeneratorRequest{..} ->             (do@@ -1571,20 +1572,20 @@                 ((Classes.cerialize (Untyped.message raw_) sourceInfo) >>= (Capnp.Gen.ById.Xa93fc509624c72d9.set_CodeGeneratorRequest'sourceInfo raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (CodeGeneratorRequest))-instance (Classes.Cerialize s (V.Vector (CodeGeneratorRequest))) where+instance (Classes.Cerialize s CodeGeneratorRequest)+instance (Classes.Cerialize s (V.Vector CodeGeneratorRequest)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (CodeGeneratorRequest)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector CodeGeneratorRequest))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (CodeGeneratorRequest))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector CodeGeneratorRequest)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (CodeGeneratorRequest)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector CodeGeneratorRequest))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CodeGeneratorRequest))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CodeGeneratorRequest)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CodeGeneratorRequest)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CodeGeneratorRequest))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CodeGeneratorRequest))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CodeGeneratorRequest)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data CodeGeneratorRequest'RequestedFile      = CodeGeneratorRequest'RequestedFile @@ -1594,16 +1595,16 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (CodeGeneratorRequest'RequestedFile)) where+instance (Default.Default CodeGeneratorRequest'RequestedFile) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (CodeGeneratorRequest'RequestedFile)) where+instance (Classes.FromStruct Message.Const CodeGeneratorRequest'RequestedFile) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (CodeGeneratorRequest'RequestedFile)) where-    type Cerial msg (CodeGeneratorRequest'RequestedFile) = (Capnp.Gen.ById.Xa93fc509624c72d9.CodeGeneratorRequest'RequestedFile msg)+instance (Classes.Decerialize CodeGeneratorRequest'RequestedFile) where+    type Cerial msg CodeGeneratorRequest'RequestedFile = (Capnp.Gen.ById.Xa93fc509624c72d9.CodeGeneratorRequest'RequestedFile msg)     decerialize raw = (CodeGeneratorRequest'RequestedFile <$> (Capnp.Gen.ById.Xa93fc509624c72d9.get_CodeGeneratorRequest'RequestedFile'id raw)                                                           <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_CodeGeneratorRequest'RequestedFile'filename raw) >>= Classes.decerialize)                                                           <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_CodeGeneratorRequest'RequestedFile'imports raw) >>= Classes.decerialize))-instance (Classes.Marshal s (CodeGeneratorRequest'RequestedFile)) where+instance (Classes.Marshal s CodeGeneratorRequest'RequestedFile) where     marshalInto raw_ value_ = case value_ of         CodeGeneratorRequest'RequestedFile{..} ->             (do@@ -1612,20 +1613,20 @@                 ((Classes.cerialize (Untyped.message raw_) imports) >>= (Capnp.Gen.ById.Xa93fc509624c72d9.set_CodeGeneratorRequest'RequestedFile'imports raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (CodeGeneratorRequest'RequestedFile))-instance (Classes.Cerialize s (V.Vector (CodeGeneratorRequest'RequestedFile))) where+instance (Classes.Cerialize s CodeGeneratorRequest'RequestedFile)+instance (Classes.Cerialize s (V.Vector CodeGeneratorRequest'RequestedFile)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (CodeGeneratorRequest'RequestedFile)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector CodeGeneratorRequest'RequestedFile))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (CodeGeneratorRequest'RequestedFile))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector CodeGeneratorRequest'RequestedFile)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (CodeGeneratorRequest'RequestedFile)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector CodeGeneratorRequest'RequestedFile))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CodeGeneratorRequest'RequestedFile))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CodeGeneratorRequest'RequestedFile)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CodeGeneratorRequest'RequestedFile)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CodeGeneratorRequest'RequestedFile))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CodeGeneratorRequest'RequestedFile))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CodeGeneratorRequest'RequestedFile)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec data CodeGeneratorRequest'RequestedFile'Import      = CodeGeneratorRequest'RequestedFile'Import @@ -1634,15 +1635,15 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (CodeGeneratorRequest'RequestedFile'Import)) where+instance (Default.Default CodeGeneratorRequest'RequestedFile'Import) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (CodeGeneratorRequest'RequestedFile'Import)) where+instance (Classes.FromStruct Message.Const CodeGeneratorRequest'RequestedFile'Import) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (CodeGeneratorRequest'RequestedFile'Import)) where-    type Cerial msg (CodeGeneratorRequest'RequestedFile'Import) = (Capnp.Gen.ById.Xa93fc509624c72d9.CodeGeneratorRequest'RequestedFile'Import msg)+instance (Classes.Decerialize CodeGeneratorRequest'RequestedFile'Import) where+    type Cerial msg CodeGeneratorRequest'RequestedFile'Import = (Capnp.Gen.ById.Xa93fc509624c72d9.CodeGeneratorRequest'RequestedFile'Import msg)     decerialize raw = (CodeGeneratorRequest'RequestedFile'Import <$> (Capnp.Gen.ById.Xa93fc509624c72d9.get_CodeGeneratorRequest'RequestedFile'Import'id raw)                                                                  <*> ((Capnp.Gen.ById.Xa93fc509624c72d9.get_CodeGeneratorRequest'RequestedFile'Import'name raw) >>= Classes.decerialize))-instance (Classes.Marshal s (CodeGeneratorRequest'RequestedFile'Import)) where+instance (Classes.Marshal s CodeGeneratorRequest'RequestedFile'Import) where     marshalInto raw_ value_ = case value_ of         CodeGeneratorRequest'RequestedFile'Import{..} ->             (do@@ -1650,20 +1651,20 @@                 ((Classes.cerialize (Untyped.message raw_) name) >>= (Capnp.Gen.ById.Xa93fc509624c72d9.set_CodeGeneratorRequest'RequestedFile'Import'name raw_))                 (Std_.pure ())                 )-instance (Classes.Cerialize s (CodeGeneratorRequest'RequestedFile'Import))-instance (Classes.Cerialize s (V.Vector (CodeGeneratorRequest'RequestedFile'Import))) where+instance (Classes.Cerialize s CodeGeneratorRequest'RequestedFile'Import)+instance (Classes.Cerialize s (V.Vector CodeGeneratorRequest'RequestedFile'Import)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (CodeGeneratorRequest'RequestedFile'Import)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector CodeGeneratorRequest'RequestedFile'Import))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (CodeGeneratorRequest'RequestedFile'Import))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector CodeGeneratorRequest'RequestedFile'Import)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (CodeGeneratorRequest'RequestedFile'Import)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector CodeGeneratorRequest'RequestedFile'Import))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CodeGeneratorRequest'RequestedFile'Import))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CodeGeneratorRequest'RequestedFile'Import)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CodeGeneratorRequest'RequestedFile'Import)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CodeGeneratorRequest'RequestedFile'Import))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CodeGeneratorRequest'RequestedFile'Import))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CodeGeneratorRequest'RequestedFile'Import)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec instance (Classes.Decerialize Capnp.Gen.ById.Xa93fc509624c72d9.ElementSize) where     type Cerial msg Capnp.Gen.ById.Xa93fc509624c72d9.ElementSize = Capnp.Gen.ById.Xa93fc509624c72d9.ElementSize
gen/lib/Capnp/Gen/Capnp/Stream.hs view
@@ -10,6 +10,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.Capnp.Stream where import qualified Capnp.Message as Message import qualified Capnp.Untyped as Untyped
+ gen/lib/Capnp/Gen/Capnp/Stream/New.hs view
@@ -0,0 +1,54 @@+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE EmptyDataDeriving #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE UndecidableInstances #-}+{-# LANGUAGE OverloadedLabels #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE RecordWildCards #-}+{-# OPTIONS_GHC -Wno-unused-imports #-}+{-# OPTIONS_GHC -Wno-dodgy-exports #-}+{-# OPTIONS_GHC -Wno-unused-matches #-}+{-# OPTIONS_GHC -Wno-orphans #-}+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-}+module Capnp.Gen.Capnp.Stream.New where+import qualified Capnp.Repr as R+import qualified Capnp.Repr.Parsed as RP+import qualified Capnp.New.Basics as Basics+import qualified GHC.OverloadedLabels as OL+import qualified Capnp.GenHelpers.New as GH+import qualified Capnp.New.Classes as C+import qualified GHC.Generics as Generics+import qualified Capnp.GenHelpers.ReExports.Data.ByteString as BS+import qualified Prelude as Std_+import qualified Data.Word as Std_+import qualified Data.Int as Std_+import Prelude ((<$>), (<*>), (>>=))+data StreamResult +type instance (R.ReprFor StreamResult) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct StreamResult) where+    numStructWords  = 0+    numStructPtrs  = 0+instance (C.Allocate StreamResult) where+    type AllocHint StreamResult = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc StreamResult (C.Parsed StreamResult))+instance (C.AllocateList StreamResult) where+    type ListAllocHint StreamResult = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc StreamResult (C.Parsed StreamResult))+data instance C.Parsed StreamResult+    = StreamResult +        {}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed StreamResult))+deriving instance (Std_.Eq (C.Parsed StreamResult))+instance (C.Parse StreamResult (C.Parsed StreamResult)) where+    parse raw_ = (Std_.pure StreamResult)+instance (C.Marshal StreamResult (C.Parsed StreamResult)) where+    marshalInto _raw (StreamResult) = (Std_.pure ())
gen/lib/Capnp/Gen/Capnp/Stream/Pure.hs view
@@ -13,6 +13,7 @@ {-# OPTIONS_GHC -Wno-unused-matches #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-} module Capnp.Gen.Capnp.Stream.Pure(StreamResult(..)) where import qualified Capnp.GenHelpers.ReExports.Data.Vector as V import qualified Capnp.GenHelpers.ReExports.Data.Text as T@@ -37,31 +38,31 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (StreamResult)) where+instance (Default.Default StreamResult) where     def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (StreamResult)) where+instance (Classes.FromStruct Message.Const StreamResult) where     fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (StreamResult)) where-    type Cerial msg (StreamResult) = (Capnp.Gen.ById.X86c366a91393f3f8.StreamResult msg)+instance (Classes.Decerialize StreamResult) where+    type Cerial msg StreamResult = (Capnp.Gen.ById.X86c366a91393f3f8.StreamResult msg)     decerialize raw = (Std_.pure StreamResult)-instance (Classes.Marshal s (StreamResult)) where+instance (Classes.Marshal s StreamResult) where     marshalInto raw_ value_ = case value_ of         (StreamResult) ->             (do                 (Std_.pure ())                 )-instance (Classes.Cerialize s (StreamResult))-instance (Classes.Cerialize s (V.Vector (StreamResult))) where+instance (Classes.Cerialize s StreamResult)+instance (Classes.Cerialize s (V.Vector StreamResult)) where     cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (StreamResult)))) where+instance (Classes.Cerialize s (V.Vector (V.Vector StreamResult))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (StreamResult))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector StreamResult)))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (StreamResult)))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector StreamResult))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (StreamResult))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector StreamResult)))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (StreamResult)))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector StreamResult))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (StreamResult))))))))) where+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector StreamResult)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec
+ gen/tests/Capnp/Gen/Aircraft/New.hs view
@@ -0,0 +1,2544 @@+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE EmptyDataDeriving #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE UndecidableInstances #-}+{-# LANGUAGE OverloadedLabels #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE RecordWildCards #-}+{-# OPTIONS_GHC -Wno-unused-imports #-}+{-# OPTIONS_GHC -Wno-dodgy-exports #-}+{-# OPTIONS_GHC -Wno-unused-matches #-}+{-# OPTIONS_GHC -Wno-orphans #-}+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-}+module Capnp.Gen.Aircraft.New where+import qualified Capnp.Repr as R+import qualified Capnp.Repr.Parsed as RP+import qualified Capnp.New.Basics as Basics+import qualified GHC.OverloadedLabels as OL+import qualified Capnp.GenHelpers.New as GH+import qualified Capnp.New.Classes as C+import qualified GHC.Generics as Generics+import qualified Capnp.GenHelpers.ReExports.Data.ByteString as BS+import qualified Prelude as Std_+import qualified Data.Word as Std_+import qualified Data.Int as Std_+import Prelude ((<$>), (<*>), (>>=))+constDate :: (R.Raw GH.Const Zdate)+constDate  = (GH.getPtrConst ("\NUL\NUL\NUL\NUL\ETX\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\SOH\NUL\NUL\NUL\NUL\NUL\SOH\NUL\NUL\NUL\223\a\b\ESC\NUL\NUL\NUL\NUL" :: BS.ByteString))+constList :: (R.Raw GH.Const (R.List Zdate))+constList  = (GH.getPtrConst ("\NUL\NUL\NUL\NUL\ENQ\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\SOH\NUL\SOH\NUL\NUL\NUL\ETB\NUL\NUL\NUL\b\NUL\NUL\NUL\SOH\NUL\NUL\NUL\223\a\b\ESC\NUL\NUL\NUL\NUL\223\a\b\FS\NUL\NUL\NUL\NUL" :: BS.ByteString))+constEnum :: Airport+constEnum  = (C.fromWord 1)+data Zdate +type instance (R.ReprFor Zdate) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Zdate) where+    numStructWords  = 1+    numStructPtrs  = 0+instance (C.Allocate Zdate) where+    type AllocHint Zdate = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Zdate (C.Parsed Zdate))+instance (C.AllocateList Zdate) where+    type ListAllocHint Zdate = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Zdate (C.Parsed Zdate))+data instance C.Parsed Zdate+    = Zdate +        {year :: (RP.Parsed Std_.Int16)+        ,month :: (RP.Parsed Std_.Word8)+        ,day :: (RP.Parsed Std_.Word8)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Zdate))+deriving instance (Std_.Eq (C.Parsed Zdate))+instance (C.Parse Zdate (C.Parsed Zdate)) where+    parse raw_ = (Zdate <$> (GH.parseField #year raw_)+                        <*> (GH.parseField #month raw_)+                        <*> (GH.parseField #day raw_))+instance (C.Marshal Zdate (C.Parsed Zdate)) where+    marshalInto raw_ Zdate{..} = (do+        (GH.encodeField #year year raw_)+        (GH.encodeField #month month raw_)+        (GH.encodeField #day day raw_)+        (Std_.pure ())+        )+instance (GH.HasField "year" GH.Slot Zdate Std_.Int16) where+    fieldByLabel  = (GH.dataField 0 0 16 0)+instance (GH.HasField "month" GH.Slot Zdate Std_.Word8) where+    fieldByLabel  = (GH.dataField 16 0 8 0)+instance (GH.HasField "day" GH.Slot Zdate Std_.Word8) where+    fieldByLabel  = (GH.dataField 24 0 8 0)+data Zdata +type instance (R.ReprFor Zdata) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Zdata) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate Zdata) where+    type AllocHint Zdata = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Zdata (C.Parsed Zdata))+instance (C.AllocateList Zdata) where+    type ListAllocHint Zdata = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Zdata (C.Parsed Zdata))+data instance C.Parsed Zdata+    = Zdata +        {data_ :: (RP.Parsed Basics.Data)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Zdata))+deriving instance (Std_.Eq (C.Parsed Zdata))+instance (C.Parse Zdata (C.Parsed Zdata)) where+    parse raw_ = (Zdata <$> (GH.parseField #data_ raw_))+instance (C.Marshal Zdata (C.Parsed Zdata)) where+    marshalInto raw_ Zdata{..} = (do+        (GH.encodeField #data_ data_ raw_)+        (Std_.pure ())+        )+instance (GH.HasField "data_" GH.Slot Zdata Basics.Data) where+    fieldByLabel  = (GH.ptrField 0)+data Airport +    = Airport'none +    | Airport'jfk +    | Airport'lax +    | Airport'sfo +    | Airport'luv +    | Airport'dfw +    | Airport'test +    | Airport'unknown' Std_.Word16+    deriving(Std_.Eq,Std_.Show)+type instance (R.ReprFor Airport) = (R.Data R.Sz16)+instance (Std_.Enum Airport) where+    toEnum n_ = case n_ of+        0 ->+            Airport'none+        1 ->+            Airport'jfk+        2 ->+            Airport'lax+        3 ->+            Airport'sfo+        4 ->+            Airport'luv+        5 ->+            Airport'dfw+        6 ->+            Airport'test+        tag_ ->+            (Airport'unknown' (Std_.fromIntegral tag_))+    fromEnum value_ = case value_ of+        (Airport'none) ->+            0+        (Airport'jfk) ->+            1+        (Airport'lax) ->+            2+        (Airport'sfo) ->+            3+        (Airport'luv) ->+            4+        (Airport'dfw) ->+            5+        (Airport'test) ->+            6+        (Airport'unknown' tag_) ->+            (Std_.fromIntegral tag_)+instance (C.IsWord Airport) where+    fromWord w_ = (Std_.toEnum (Std_.fromIntegral w_))+    toWord v_ = (Std_.fromIntegral (Std_.fromEnum v_))+instance (C.Parse Airport Airport) where+    parse  = GH.parseEnum+    encode  = GH.encodeEnum+instance (C.AllocateList Airport) where+    type ListAllocHint Airport = Std_.Int+instance (C.EstimateListAlloc Airport Airport)+data PlaneBase +type instance (R.ReprFor PlaneBase) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct PlaneBase) where+    numStructWords  = 4+    numStructPtrs  = 2+instance (C.Allocate PlaneBase) where+    type AllocHint PlaneBase = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc PlaneBase (C.Parsed PlaneBase))+instance (C.AllocateList PlaneBase) where+    type ListAllocHint PlaneBase = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc PlaneBase (C.Parsed PlaneBase))+data instance C.Parsed PlaneBase+    = PlaneBase +        {name :: (RP.Parsed Basics.Text)+        ,homes :: (RP.Parsed (R.List Airport))+        ,rating :: (RP.Parsed Std_.Int64)+        ,canFly :: (RP.Parsed Std_.Bool)+        ,capacity :: (RP.Parsed Std_.Int64)+        ,maxSpeed :: (RP.Parsed Std_.Double)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed PlaneBase))+deriving instance (Std_.Eq (C.Parsed PlaneBase))+instance (C.Parse PlaneBase (C.Parsed PlaneBase)) where+    parse raw_ = (PlaneBase <$> (GH.parseField #name raw_)+                            <*> (GH.parseField #homes raw_)+                            <*> (GH.parseField #rating raw_)+                            <*> (GH.parseField #canFly raw_)+                            <*> (GH.parseField #capacity raw_)+                            <*> (GH.parseField #maxSpeed raw_))+instance (C.Marshal PlaneBase (C.Parsed PlaneBase)) where+    marshalInto raw_ PlaneBase{..} = (do+        (GH.encodeField #name name raw_)+        (GH.encodeField #homes homes raw_)+        (GH.encodeField #rating rating raw_)+        (GH.encodeField #canFly canFly raw_)+        (GH.encodeField #capacity capacity raw_)+        (GH.encodeField #maxSpeed maxSpeed raw_)+        (Std_.pure ())+        )+instance (GH.HasField "name" GH.Slot PlaneBase Basics.Text) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "homes" GH.Slot PlaneBase (R.List Airport)) where+    fieldByLabel  = (GH.ptrField 1)+instance (GH.HasField "rating" GH.Slot PlaneBase Std_.Int64) where+    fieldByLabel  = (GH.dataField 0 0 64 0)+instance (GH.HasField "canFly" GH.Slot PlaneBase Std_.Bool) where+    fieldByLabel  = (GH.dataField 0 1 1 0)+instance (GH.HasField "capacity" GH.Slot PlaneBase Std_.Int64) where+    fieldByLabel  = (GH.dataField 0 2 64 0)+instance (GH.HasField "maxSpeed" GH.Slot PlaneBase Std_.Double) where+    fieldByLabel  = (GH.dataField 0 3 64 0)+data B737 +type instance (R.ReprFor B737) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct B737) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate B737) where+    type AllocHint B737 = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc B737 (C.Parsed B737))+instance (C.AllocateList B737) where+    type ListAllocHint B737 = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc B737 (C.Parsed B737))+data instance C.Parsed B737+    = B737 +        {base :: (RP.Parsed PlaneBase)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed B737))+deriving instance (Std_.Eq (C.Parsed B737))+instance (C.Parse B737 (C.Parsed B737)) where+    parse raw_ = (B737 <$> (GH.parseField #base raw_))+instance (C.Marshal B737 (C.Parsed B737)) where+    marshalInto raw_ B737{..} = (do+        (GH.encodeField #base base raw_)+        (Std_.pure ())+        )+instance (GH.HasField "base" GH.Slot B737 PlaneBase) where+    fieldByLabel  = (GH.ptrField 0)+data A320 +type instance (R.ReprFor A320) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct A320) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate A320) where+    type AllocHint A320 = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc A320 (C.Parsed A320))+instance (C.AllocateList A320) where+    type ListAllocHint A320 = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc A320 (C.Parsed A320))+data instance C.Parsed A320+    = A320 +        {base :: (RP.Parsed PlaneBase)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed A320))+deriving instance (Std_.Eq (C.Parsed A320))+instance (C.Parse A320 (C.Parsed A320)) where+    parse raw_ = (A320 <$> (GH.parseField #base raw_))+instance (C.Marshal A320 (C.Parsed A320)) where+    marshalInto raw_ A320{..} = (do+        (GH.encodeField #base base raw_)+        (Std_.pure ())+        )+instance (GH.HasField "base" GH.Slot A320 PlaneBase) where+    fieldByLabel  = (GH.ptrField 0)+data F16 +type instance (R.ReprFor F16) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct F16) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate F16) where+    type AllocHint F16 = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc F16 (C.Parsed F16))+instance (C.AllocateList F16) where+    type ListAllocHint F16 = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc F16 (C.Parsed F16))+data instance C.Parsed F16+    = F16 +        {base :: (RP.Parsed PlaneBase)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed F16))+deriving instance (Std_.Eq (C.Parsed F16))+instance (C.Parse F16 (C.Parsed F16)) where+    parse raw_ = (F16 <$> (GH.parseField #base raw_))+instance (C.Marshal F16 (C.Parsed F16)) where+    marshalInto raw_ F16{..} = (do+        (GH.encodeField #base base raw_)+        (Std_.pure ())+        )+instance (GH.HasField "base" GH.Slot F16 PlaneBase) where+    fieldByLabel  = (GH.ptrField 0)+data Regression +type instance (R.ReprFor Regression) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Regression) where+    numStructWords  = 3+    numStructPtrs  = 3+instance (C.Allocate Regression) where+    type AllocHint Regression = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Regression (C.Parsed Regression))+instance (C.AllocateList Regression) where+    type ListAllocHint Regression = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Regression (C.Parsed Regression))+data instance C.Parsed Regression+    = Regression +        {base :: (RP.Parsed PlaneBase)+        ,b0 :: (RP.Parsed Std_.Double)+        ,beta :: (RP.Parsed (R.List Std_.Double))+        ,planes :: (RP.Parsed (R.List Aircraft))+        ,ymu :: (RP.Parsed Std_.Double)+        ,ysd :: (RP.Parsed Std_.Double)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Regression))+deriving instance (Std_.Eq (C.Parsed Regression))+instance (C.Parse Regression (C.Parsed Regression)) where+    parse raw_ = (Regression <$> (GH.parseField #base raw_)+                             <*> (GH.parseField #b0 raw_)+                             <*> (GH.parseField #beta raw_)+                             <*> (GH.parseField #planes raw_)+                             <*> (GH.parseField #ymu raw_)+                             <*> (GH.parseField #ysd raw_))+instance (C.Marshal Regression (C.Parsed Regression)) where+    marshalInto raw_ Regression{..} = (do+        (GH.encodeField #base base raw_)+        (GH.encodeField #b0 b0 raw_)+        (GH.encodeField #beta beta raw_)+        (GH.encodeField #planes planes raw_)+        (GH.encodeField #ymu ymu raw_)+        (GH.encodeField #ysd ysd raw_)+        (Std_.pure ())+        )+instance (GH.HasField "base" GH.Slot Regression PlaneBase) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "b0" GH.Slot Regression Std_.Double) where+    fieldByLabel  = (GH.dataField 0 0 64 0)+instance (GH.HasField "beta" GH.Slot Regression (R.List Std_.Double)) where+    fieldByLabel  = (GH.ptrField 1)+instance (GH.HasField "planes" GH.Slot Regression (R.List Aircraft)) where+    fieldByLabel  = (GH.ptrField 2)+instance (GH.HasField "ymu" GH.Slot Regression Std_.Double) where+    fieldByLabel  = (GH.dataField 0 1 64 0)+instance (GH.HasField "ysd" GH.Slot Regression Std_.Double) where+    fieldByLabel  = (GH.dataField 0 2 64 0)+data Aircraft +type instance (R.ReprFor Aircraft) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Aircraft) where+    numStructWords  = 1+    numStructPtrs  = 1+instance (C.Allocate Aircraft) where+    type AllocHint Aircraft = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Aircraft (C.Parsed Aircraft))+instance (C.AllocateList Aircraft) where+    type ListAllocHint Aircraft = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Aircraft (C.Parsed Aircraft))+data instance C.Parsed Aircraft+    = Aircraft +        {union' :: (C.Parsed (GH.Which Aircraft))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Aircraft))+deriving instance (Std_.Eq (C.Parsed Aircraft))+instance (C.Parse Aircraft (C.Parsed Aircraft)) where+    parse raw_ = (Aircraft <$> (C.parse (GH.structUnion raw_)))+instance (C.Marshal Aircraft (C.Parsed Aircraft)) where+    marshalInto raw_ Aircraft{..} = (do+        (C.marshalInto (GH.structUnion raw_) union')+        )+instance (GH.HasUnion Aircraft) where+    unionField  = (GH.dataField 0 0 16 0)+    data RawWhich mut_ Aircraft+        = RW_Aircraft'void (R.Raw mut_ ())+        | RW_Aircraft'b737 (R.Raw mut_ B737)+        | RW_Aircraft'a320 (R.Raw mut_ A320)+        | RW_Aircraft'f16 (R.Raw mut_ F16)+        | RW_Aircraft'unknown' Std_.Word16+    internalWhich tag_ struct_ = case tag_ of+        0 ->+            (RW_Aircraft'void <$> (GH.readVariant #void struct_))+        1 ->+            (RW_Aircraft'b737 <$> (GH.readVariant #b737 struct_))+        2 ->+            (RW_Aircraft'a320 <$> (GH.readVariant #a320 struct_))+        3 ->+            (RW_Aircraft'f16 <$> (GH.readVariant #f16 struct_))+        _ ->+            (Std_.pure (RW_Aircraft'unknown' tag_))+    data Which Aircraft+instance (GH.HasVariant "void" GH.Slot Aircraft ()) where+    variantByLabel  = (GH.Variant GH.voidField 0)+instance (GH.HasVariant "b737" GH.Slot Aircraft B737) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 1)+instance (GH.HasVariant "a320" GH.Slot Aircraft A320) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 2)+instance (GH.HasVariant "f16" GH.Slot Aircraft F16) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 3)+data instance C.Parsed (GH.Which Aircraft)+    = Aircraft'void +    | Aircraft'b737 (RP.Parsed B737)+    | Aircraft'a320 (RP.Parsed A320)+    | Aircraft'f16 (RP.Parsed F16)+    | Aircraft'unknown' Std_.Word16+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed (GH.Which Aircraft)))+deriving instance (Std_.Eq (C.Parsed (GH.Which Aircraft)))+instance (C.Parse (GH.Which Aircraft) (C.Parsed (GH.Which Aircraft))) where+    parse raw_ = (do+        rawWhich_ <- (GH.unionWhich raw_)+        case rawWhich_ of+            (RW_Aircraft'void _) ->+                (Std_.pure Aircraft'void)+            (RW_Aircraft'b737 rawArg_) ->+                (Aircraft'b737 <$> (C.parse rawArg_))+            (RW_Aircraft'a320 rawArg_) ->+                (Aircraft'a320 <$> (C.parse rawArg_))+            (RW_Aircraft'f16 rawArg_) ->+                (Aircraft'f16 <$> (C.parse rawArg_))+            (RW_Aircraft'unknown' tag_) ->+                (Std_.pure (Aircraft'unknown' tag_))+        )+instance (C.Marshal (GH.Which Aircraft) (C.Parsed (GH.Which Aircraft))) where+    marshalInto raw_ parsed_ = case parsed_ of+        (Aircraft'void) ->+            (GH.encodeVariant #void () (GH.unionStruct raw_))+        (Aircraft'b737 arg_) ->+            (GH.encodeVariant #b737 arg_ (GH.unionStruct raw_))+        (Aircraft'a320 arg_) ->+            (GH.encodeVariant #a320 arg_ (GH.unionStruct raw_))+        (Aircraft'f16 arg_) ->+            (GH.encodeVariant #f16 arg_ (GH.unionStruct raw_))+        (Aircraft'unknown' tag_) ->+            (GH.encodeField GH.unionField tag_ (GH.unionStruct raw_))+data Z +type instance (R.ReprFor Z) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Z) where+    numStructWords  = 3+    numStructPtrs  = 1+instance (C.Allocate Z) where+    type AllocHint Z = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Z (C.Parsed Z))+instance (C.AllocateList Z) where+    type ListAllocHint Z = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Z (C.Parsed Z))+data instance C.Parsed Z+    = Z +        {union' :: (C.Parsed (GH.Which Z))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Z))+deriving instance (Std_.Eq (C.Parsed Z))+instance (C.Parse Z (C.Parsed Z)) where+    parse raw_ = (Z <$> (C.parse (GH.structUnion raw_)))+instance (C.Marshal Z (C.Parsed Z)) where+    marshalInto raw_ Z{..} = (do+        (C.marshalInto (GH.structUnion raw_) union')+        )+instance (GH.HasUnion Z) where+    unionField  = (GH.dataField 0 0 16 0)+    data RawWhich mut_ Z+        = RW_Z'void (R.Raw mut_ ())+        | RW_Z'zz (R.Raw mut_ Z)+        | RW_Z'f64 (R.Raw mut_ Std_.Double)+        | RW_Z'f32 (R.Raw mut_ Std_.Float)+        | RW_Z'i64 (R.Raw mut_ Std_.Int64)+        | RW_Z'i32 (R.Raw mut_ Std_.Int32)+        | RW_Z'i16 (R.Raw mut_ Std_.Int16)+        | RW_Z'i8 (R.Raw mut_ Std_.Int8)+        | RW_Z'u64 (R.Raw mut_ Std_.Word64)+        | RW_Z'u32 (R.Raw mut_ Std_.Word32)+        | RW_Z'u16 (R.Raw mut_ Std_.Word16)+        | RW_Z'u8 (R.Raw mut_ Std_.Word8)+        | RW_Z'bool (R.Raw mut_ Std_.Bool)+        | RW_Z'text (R.Raw mut_ Basics.Text)+        | RW_Z'blob (R.Raw mut_ Basics.Data)+        | RW_Z'f64vec (R.Raw mut_ (R.List Std_.Double))+        | RW_Z'f32vec (R.Raw mut_ (R.List Std_.Float))+        | RW_Z'i64vec (R.Raw mut_ (R.List Std_.Int64))+        | RW_Z'i32vec (R.Raw mut_ (R.List Std_.Int32))+        | RW_Z'i16vec (R.Raw mut_ (R.List Std_.Int16))+        | RW_Z'i8vec (R.Raw mut_ (R.List Std_.Int8))+        | RW_Z'u64vec (R.Raw mut_ (R.List Std_.Word64))+        | RW_Z'u32vec (R.Raw mut_ (R.List Std_.Word32))+        | RW_Z'u16vec (R.Raw mut_ (R.List Std_.Word16))+        | RW_Z'u8vec (R.Raw mut_ (R.List Std_.Word8))+        | RW_Z'zvec (R.Raw mut_ (R.List Z))+        | RW_Z'zvecvec (R.Raw mut_ (R.List (R.List Z)))+        | RW_Z'zdate (R.Raw mut_ Zdate)+        | RW_Z'zdata (R.Raw mut_ Zdata)+        | RW_Z'aircraftvec (R.Raw mut_ (R.List Aircraft))+        | RW_Z'aircraft (R.Raw mut_ Aircraft)+        | RW_Z'regression (R.Raw mut_ Regression)+        | RW_Z'planebase (R.Raw mut_ PlaneBase)+        | RW_Z'airport (R.Raw mut_ Airport)+        | RW_Z'b737 (R.Raw mut_ B737)+        | RW_Z'a320 (R.Raw mut_ A320)+        | RW_Z'f16 (R.Raw mut_ F16)+        | RW_Z'zdatevec (R.Raw mut_ (R.List Zdate))+        | RW_Z'zdatavec (R.Raw mut_ (R.List Zdata))+        | RW_Z'boolvec (R.Raw mut_ (R.List Std_.Bool))+        | RW_Z'datavec (R.Raw mut_ (R.List Basics.Data))+        | RW_Z'textvec (R.Raw mut_ (R.List Basics.Text))+        | RW_Z'grp (R.Raw mut_ Z'grp)+        | RW_Z'echo (R.Raw mut_ Echo)+        | RW_Z'echoBases (R.Raw mut_ EchoBases)+        | RW_Z'unknown' Std_.Word16+    internalWhich tag_ struct_ = case tag_ of+        0 ->+            (RW_Z'void <$> (GH.readVariant #void struct_))+        1 ->+            (RW_Z'zz <$> (GH.readVariant #zz struct_))+        2 ->+            (RW_Z'f64 <$> (GH.readVariant #f64 struct_))+        3 ->+            (RW_Z'f32 <$> (GH.readVariant #f32 struct_))+        4 ->+            (RW_Z'i64 <$> (GH.readVariant #i64 struct_))+        5 ->+            (RW_Z'i32 <$> (GH.readVariant #i32 struct_))+        6 ->+            (RW_Z'i16 <$> (GH.readVariant #i16 struct_))+        7 ->+            (RW_Z'i8 <$> (GH.readVariant #i8 struct_))+        8 ->+            (RW_Z'u64 <$> (GH.readVariant #u64 struct_))+        9 ->+            (RW_Z'u32 <$> (GH.readVariant #u32 struct_))+        10 ->+            (RW_Z'u16 <$> (GH.readVariant #u16 struct_))+        11 ->+            (RW_Z'u8 <$> (GH.readVariant #u8 struct_))+        12 ->+            (RW_Z'bool <$> (GH.readVariant #bool struct_))+        13 ->+            (RW_Z'text <$> (GH.readVariant #text struct_))+        14 ->+            (RW_Z'blob <$> (GH.readVariant #blob struct_))+        15 ->+            (RW_Z'f64vec <$> (GH.readVariant #f64vec struct_))+        16 ->+            (RW_Z'f32vec <$> (GH.readVariant #f32vec struct_))+        17 ->+            (RW_Z'i64vec <$> (GH.readVariant #i64vec struct_))+        18 ->+            (RW_Z'i32vec <$> (GH.readVariant #i32vec struct_))+        19 ->+            (RW_Z'i16vec <$> (GH.readVariant #i16vec struct_))+        20 ->+            (RW_Z'i8vec <$> (GH.readVariant #i8vec struct_))+        21 ->+            (RW_Z'u64vec <$> (GH.readVariant #u64vec struct_))+        22 ->+            (RW_Z'u32vec <$> (GH.readVariant #u32vec struct_))+        23 ->+            (RW_Z'u16vec <$> (GH.readVariant #u16vec struct_))+        24 ->+            (RW_Z'u8vec <$> (GH.readVariant #u8vec struct_))+        25 ->+            (RW_Z'zvec <$> (GH.readVariant #zvec struct_))+        26 ->+            (RW_Z'zvecvec <$> (GH.readVariant #zvecvec struct_))+        27 ->+            (RW_Z'zdate <$> (GH.readVariant #zdate struct_))+        28 ->+            (RW_Z'zdata <$> (GH.readVariant #zdata struct_))+        29 ->+            (RW_Z'aircraftvec <$> (GH.readVariant #aircraftvec struct_))+        30 ->+            (RW_Z'aircraft <$> (GH.readVariant #aircraft struct_))+        31 ->+            (RW_Z'regression <$> (GH.readVariant #regression struct_))+        32 ->+            (RW_Z'planebase <$> (GH.readVariant #planebase struct_))+        33 ->+            (RW_Z'airport <$> (GH.readVariant #airport struct_))+        34 ->+            (RW_Z'b737 <$> (GH.readVariant #b737 struct_))+        35 ->+            (RW_Z'a320 <$> (GH.readVariant #a320 struct_))+        36 ->+            (RW_Z'f16 <$> (GH.readVariant #f16 struct_))+        37 ->+            (RW_Z'zdatevec <$> (GH.readVariant #zdatevec struct_))+        38 ->+            (RW_Z'zdatavec <$> (GH.readVariant #zdatavec struct_))+        39 ->+            (RW_Z'boolvec <$> (GH.readVariant #boolvec struct_))+        40 ->+            (RW_Z'datavec <$> (GH.readVariant #datavec struct_))+        41 ->+            (RW_Z'textvec <$> (GH.readVariant #textvec struct_))+        42 ->+            (RW_Z'grp <$> (GH.readVariant #grp struct_))+        43 ->+            (RW_Z'echo <$> (GH.readVariant #echo struct_))+        44 ->+            (RW_Z'echoBases <$> (GH.readVariant #echoBases struct_))+        _ ->+            (Std_.pure (RW_Z'unknown' tag_))+    data Which Z+instance (GH.HasVariant "void" GH.Slot Z ()) where+    variantByLabel  = (GH.Variant GH.voidField 0)+instance (GH.HasVariant "zz" GH.Slot Z Z) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 1)+instance (GH.HasVariant "f64" GH.Slot Z Std_.Double) where+    variantByLabel  = (GH.Variant (GH.dataField 0 1 64 0) 2)+instance (GH.HasVariant "f32" GH.Slot Z Std_.Float) where+    variantByLabel  = (GH.Variant (GH.dataField 0 1 32 0) 3)+instance (GH.HasVariant "i64" GH.Slot Z Std_.Int64) where+    variantByLabel  = (GH.Variant (GH.dataField 0 1 64 0) 4)+instance (GH.HasVariant "i32" GH.Slot Z Std_.Int32) where+    variantByLabel  = (GH.Variant (GH.dataField 0 1 32 0) 5)+instance (GH.HasVariant "i16" GH.Slot Z Std_.Int16) where+    variantByLabel  = (GH.Variant (GH.dataField 0 1 16 0) 6)+instance (GH.HasVariant "i8" GH.Slot Z Std_.Int8) where+    variantByLabel  = (GH.Variant (GH.dataField 0 1 8 0) 7)+instance (GH.HasVariant "u64" GH.Slot Z Std_.Word64) where+    variantByLabel  = (GH.Variant (GH.dataField 0 1 64 0) 8)+instance (GH.HasVariant "u32" GH.Slot Z Std_.Word32) where+    variantByLabel  = (GH.Variant (GH.dataField 0 1 32 0) 9)+instance (GH.HasVariant "u16" GH.Slot Z Std_.Word16) where+    variantByLabel  = (GH.Variant (GH.dataField 0 1 16 0) 10)+instance (GH.HasVariant "u8" GH.Slot Z Std_.Word8) where+    variantByLabel  = (GH.Variant (GH.dataField 0 1 8 0) 11)+instance (GH.HasVariant "bool" GH.Slot Z Std_.Bool) where+    variantByLabel  = (GH.Variant (GH.dataField 0 1 1 0) 12)+instance (GH.HasVariant "text" GH.Slot Z Basics.Text) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 13)+instance (GH.HasVariant "blob" GH.Slot Z Basics.Data) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 14)+instance (GH.HasVariant "f64vec" GH.Slot Z (R.List Std_.Double)) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 15)+instance (GH.HasVariant "f32vec" GH.Slot Z (R.List Std_.Float)) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 16)+instance (GH.HasVariant "i64vec" GH.Slot Z (R.List Std_.Int64)) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 17)+instance (GH.HasVariant "i32vec" GH.Slot Z (R.List Std_.Int32)) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 18)+instance (GH.HasVariant "i16vec" GH.Slot Z (R.List Std_.Int16)) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 19)+instance (GH.HasVariant "i8vec" GH.Slot Z (R.List Std_.Int8)) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 20)+instance (GH.HasVariant "u64vec" GH.Slot Z (R.List Std_.Word64)) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 21)+instance (GH.HasVariant "u32vec" GH.Slot Z (R.List Std_.Word32)) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 22)+instance (GH.HasVariant "u16vec" GH.Slot Z (R.List Std_.Word16)) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 23)+instance (GH.HasVariant "u8vec" GH.Slot Z (R.List Std_.Word8)) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 24)+instance (GH.HasVariant "zvec" GH.Slot Z (R.List Z)) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 25)+instance (GH.HasVariant "zvecvec" GH.Slot Z (R.List (R.List Z))) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 26)+instance (GH.HasVariant "zdate" GH.Slot Z Zdate) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 27)+instance (GH.HasVariant "zdata" GH.Slot Z Zdata) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 28)+instance (GH.HasVariant "aircraftvec" GH.Slot Z (R.List Aircraft)) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 29)+instance (GH.HasVariant "aircraft" GH.Slot Z Aircraft) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 30)+instance (GH.HasVariant "regression" GH.Slot Z Regression) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 31)+instance (GH.HasVariant "planebase" GH.Slot Z PlaneBase) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 32)+instance (GH.HasVariant "airport" GH.Slot Z Airport) where+    variantByLabel  = (GH.Variant (GH.dataField 0 1 16 0) 33)+instance (GH.HasVariant "b737" GH.Slot Z B737) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 34)+instance (GH.HasVariant "a320" GH.Slot Z A320) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 35)+instance (GH.HasVariant "f16" GH.Slot Z F16) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 36)+instance (GH.HasVariant "zdatevec" GH.Slot Z (R.List Zdate)) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 37)+instance (GH.HasVariant "zdatavec" GH.Slot Z (R.List Zdata)) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 38)+instance (GH.HasVariant "boolvec" GH.Slot Z (R.List Std_.Bool)) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 39)+instance (GH.HasVariant "datavec" GH.Slot Z (R.List Basics.Data)) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 40)+instance (GH.HasVariant "textvec" GH.Slot Z (R.List Basics.Text)) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 41)+instance (GH.HasVariant "grp" GH.Group Z Z'grp) where+    variantByLabel  = (GH.Variant GH.groupField 42)+instance (GH.HasVariant "echo" GH.Slot Z Echo) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 43)+instance (GH.HasVariant "echoBases" GH.Slot Z EchoBases) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 44)+data instance C.Parsed (GH.Which Z)+    = Z'void +    | Z'zz (RP.Parsed Z)+    | Z'f64 (RP.Parsed Std_.Double)+    | Z'f32 (RP.Parsed Std_.Float)+    | Z'i64 (RP.Parsed Std_.Int64)+    | Z'i32 (RP.Parsed Std_.Int32)+    | Z'i16 (RP.Parsed Std_.Int16)+    | Z'i8 (RP.Parsed Std_.Int8)+    | Z'u64 (RP.Parsed Std_.Word64)+    | Z'u32 (RP.Parsed Std_.Word32)+    | Z'u16 (RP.Parsed Std_.Word16)+    | Z'u8 (RP.Parsed Std_.Word8)+    | Z'bool (RP.Parsed Std_.Bool)+    | Z'text (RP.Parsed Basics.Text)+    | Z'blob (RP.Parsed Basics.Data)+    | Z'f64vec (RP.Parsed (R.List Std_.Double))+    | Z'f32vec (RP.Parsed (R.List Std_.Float))+    | Z'i64vec (RP.Parsed (R.List Std_.Int64))+    | Z'i32vec (RP.Parsed (R.List Std_.Int32))+    | Z'i16vec (RP.Parsed (R.List Std_.Int16))+    | Z'i8vec (RP.Parsed (R.List Std_.Int8))+    | Z'u64vec (RP.Parsed (R.List Std_.Word64))+    | Z'u32vec (RP.Parsed (R.List Std_.Word32))+    | Z'u16vec (RP.Parsed (R.List Std_.Word16))+    | Z'u8vec (RP.Parsed (R.List Std_.Word8))+    | Z'zvec (RP.Parsed (R.List Z))+    | Z'zvecvec (RP.Parsed (R.List (R.List Z)))+    | Z'zdate (RP.Parsed Zdate)+    | Z'zdata (RP.Parsed Zdata)+    | Z'aircraftvec (RP.Parsed (R.List Aircraft))+    | Z'aircraft (RP.Parsed Aircraft)+    | Z'regression (RP.Parsed Regression)+    | Z'planebase (RP.Parsed PlaneBase)+    | Z'airport (RP.Parsed Airport)+    | Z'b737 (RP.Parsed B737)+    | Z'a320 (RP.Parsed A320)+    | Z'f16 (RP.Parsed F16)+    | Z'zdatevec (RP.Parsed (R.List Zdate))+    | Z'zdatavec (RP.Parsed (R.List Zdata))+    | Z'boolvec (RP.Parsed (R.List Std_.Bool))+    | Z'datavec (RP.Parsed (R.List Basics.Data))+    | Z'textvec (RP.Parsed (R.List Basics.Text))+    | Z'grp (RP.Parsed Z'grp)+    | Z'echo (RP.Parsed Echo)+    | Z'echoBases (RP.Parsed EchoBases)+    | Z'unknown' Std_.Word16+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed (GH.Which Z)))+deriving instance (Std_.Eq (C.Parsed (GH.Which Z)))+instance (C.Parse (GH.Which Z) (C.Parsed (GH.Which Z))) where+    parse raw_ = (do+        rawWhich_ <- (GH.unionWhich raw_)+        case rawWhich_ of+            (RW_Z'void _) ->+                (Std_.pure Z'void)+            (RW_Z'zz rawArg_) ->+                (Z'zz <$> (C.parse rawArg_))+            (RW_Z'f64 rawArg_) ->+                (Z'f64 <$> (C.parse rawArg_))+            (RW_Z'f32 rawArg_) ->+                (Z'f32 <$> (C.parse rawArg_))+            (RW_Z'i64 rawArg_) ->+                (Z'i64 <$> (C.parse rawArg_))+            (RW_Z'i32 rawArg_) ->+                (Z'i32 <$> (C.parse rawArg_))+            (RW_Z'i16 rawArg_) ->+                (Z'i16 <$> (C.parse rawArg_))+            (RW_Z'i8 rawArg_) ->+                (Z'i8 <$> (C.parse rawArg_))+            (RW_Z'u64 rawArg_) ->+                (Z'u64 <$> (C.parse rawArg_))+            (RW_Z'u32 rawArg_) ->+                (Z'u32 <$> (C.parse rawArg_))+            (RW_Z'u16 rawArg_) ->+                (Z'u16 <$> (C.parse rawArg_))+            (RW_Z'u8 rawArg_) ->+                (Z'u8 <$> (C.parse rawArg_))+            (RW_Z'bool rawArg_) ->+                (Z'bool <$> (C.parse rawArg_))+            (RW_Z'text rawArg_) ->+                (Z'text <$> (C.parse rawArg_))+            (RW_Z'blob rawArg_) ->+                (Z'blob <$> (C.parse rawArg_))+            (RW_Z'f64vec rawArg_) ->+                (Z'f64vec <$> (C.parse rawArg_))+            (RW_Z'f32vec rawArg_) ->+                (Z'f32vec <$> (C.parse rawArg_))+            (RW_Z'i64vec rawArg_) ->+                (Z'i64vec <$> (C.parse rawArg_))+            (RW_Z'i32vec rawArg_) ->+                (Z'i32vec <$> (C.parse rawArg_))+            (RW_Z'i16vec rawArg_) ->+                (Z'i16vec <$> (C.parse rawArg_))+            (RW_Z'i8vec rawArg_) ->+                (Z'i8vec <$> (C.parse rawArg_))+            (RW_Z'u64vec rawArg_) ->+                (Z'u64vec <$> (C.parse rawArg_))+            (RW_Z'u32vec rawArg_) ->+                (Z'u32vec <$> (C.parse rawArg_))+            (RW_Z'u16vec rawArg_) ->+                (Z'u16vec <$> (C.parse rawArg_))+            (RW_Z'u8vec rawArg_) ->+                (Z'u8vec <$> (C.parse rawArg_))+            (RW_Z'zvec rawArg_) ->+                (Z'zvec <$> (C.parse rawArg_))+            (RW_Z'zvecvec rawArg_) ->+                (Z'zvecvec <$> (C.parse rawArg_))+            (RW_Z'zdate rawArg_) ->+                (Z'zdate <$> (C.parse rawArg_))+            (RW_Z'zdata rawArg_) ->+                (Z'zdata <$> (C.parse rawArg_))+            (RW_Z'aircraftvec rawArg_) ->+                (Z'aircraftvec <$> (C.parse rawArg_))+            (RW_Z'aircraft rawArg_) ->+                (Z'aircraft <$> (C.parse rawArg_))+            (RW_Z'regression rawArg_) ->+                (Z'regression <$> (C.parse rawArg_))+            (RW_Z'planebase rawArg_) ->+                (Z'planebase <$> (C.parse rawArg_))+            (RW_Z'airport rawArg_) ->+                (Z'airport <$> (C.parse rawArg_))+            (RW_Z'b737 rawArg_) ->+                (Z'b737 <$> (C.parse rawArg_))+            (RW_Z'a320 rawArg_) ->+                (Z'a320 <$> (C.parse rawArg_))+            (RW_Z'f16 rawArg_) ->+                (Z'f16 <$> (C.parse rawArg_))+            (RW_Z'zdatevec rawArg_) ->+                (Z'zdatevec <$> (C.parse rawArg_))+            (RW_Z'zdatavec rawArg_) ->+                (Z'zdatavec <$> (C.parse rawArg_))+            (RW_Z'boolvec rawArg_) ->+                (Z'boolvec <$> (C.parse rawArg_))+            (RW_Z'datavec rawArg_) ->+                (Z'datavec <$> (C.parse rawArg_))+            (RW_Z'textvec rawArg_) ->+                (Z'textvec <$> (C.parse rawArg_))+            (RW_Z'grp rawArg_) ->+                (Z'grp <$> (C.parse rawArg_))+            (RW_Z'echo rawArg_) ->+                (Z'echo <$> (C.parse rawArg_))+            (RW_Z'echoBases rawArg_) ->+                (Z'echoBases <$> (C.parse rawArg_))+            (RW_Z'unknown' tag_) ->+                (Std_.pure (Z'unknown' tag_))+        )+instance (C.Marshal (GH.Which Z) (C.Parsed (GH.Which Z))) where+    marshalInto raw_ parsed_ = case parsed_ of+        (Z'void) ->+            (GH.encodeVariant #void () (GH.unionStruct raw_))+        (Z'zz arg_) ->+            (GH.encodeVariant #zz arg_ (GH.unionStruct raw_))+        (Z'f64 arg_) ->+            (GH.encodeVariant #f64 arg_ (GH.unionStruct raw_))+        (Z'f32 arg_) ->+            (GH.encodeVariant #f32 arg_ (GH.unionStruct raw_))+        (Z'i64 arg_) ->+            (GH.encodeVariant #i64 arg_ (GH.unionStruct raw_))+        (Z'i32 arg_) ->+            (GH.encodeVariant #i32 arg_ (GH.unionStruct raw_))+        (Z'i16 arg_) ->+            (GH.encodeVariant #i16 arg_ (GH.unionStruct raw_))+        (Z'i8 arg_) ->+            (GH.encodeVariant #i8 arg_ (GH.unionStruct raw_))+        (Z'u64 arg_) ->+            (GH.encodeVariant #u64 arg_ (GH.unionStruct raw_))+        (Z'u32 arg_) ->+            (GH.encodeVariant #u32 arg_ (GH.unionStruct raw_))+        (Z'u16 arg_) ->+            (GH.encodeVariant #u16 arg_ (GH.unionStruct raw_))+        (Z'u8 arg_) ->+            (GH.encodeVariant #u8 arg_ (GH.unionStruct raw_))+        (Z'bool arg_) ->+            (GH.encodeVariant #bool arg_ (GH.unionStruct raw_))+        (Z'text arg_) ->+            (GH.encodeVariant #text arg_ (GH.unionStruct raw_))+        (Z'blob arg_) ->+            (GH.encodeVariant #blob arg_ (GH.unionStruct raw_))+        (Z'f64vec arg_) ->+            (GH.encodeVariant #f64vec arg_ (GH.unionStruct raw_))+        (Z'f32vec arg_) ->+            (GH.encodeVariant #f32vec arg_ (GH.unionStruct raw_))+        (Z'i64vec arg_) ->+            (GH.encodeVariant #i64vec arg_ (GH.unionStruct raw_))+        (Z'i32vec arg_) ->+            (GH.encodeVariant #i32vec arg_ (GH.unionStruct raw_))+        (Z'i16vec arg_) ->+            (GH.encodeVariant #i16vec arg_ (GH.unionStruct raw_))+        (Z'i8vec arg_) ->+            (GH.encodeVariant #i8vec arg_ (GH.unionStruct raw_))+        (Z'u64vec arg_) ->+            (GH.encodeVariant #u64vec arg_ (GH.unionStruct raw_))+        (Z'u32vec arg_) ->+            (GH.encodeVariant #u32vec arg_ (GH.unionStruct raw_))+        (Z'u16vec arg_) ->+            (GH.encodeVariant #u16vec arg_ (GH.unionStruct raw_))+        (Z'u8vec arg_) ->+            (GH.encodeVariant #u8vec arg_ (GH.unionStruct raw_))+        (Z'zvec arg_) ->+            (GH.encodeVariant #zvec arg_ (GH.unionStruct raw_))+        (Z'zvecvec arg_) ->+            (GH.encodeVariant #zvecvec arg_ (GH.unionStruct raw_))+        (Z'zdate arg_) ->+            (GH.encodeVariant #zdate arg_ (GH.unionStruct raw_))+        (Z'zdata arg_) ->+            (GH.encodeVariant #zdata arg_ (GH.unionStruct raw_))+        (Z'aircraftvec arg_) ->+            (GH.encodeVariant #aircraftvec arg_ (GH.unionStruct raw_))+        (Z'aircraft arg_) ->+            (GH.encodeVariant #aircraft arg_ (GH.unionStruct raw_))+        (Z'regression arg_) ->+            (GH.encodeVariant #regression arg_ (GH.unionStruct raw_))+        (Z'planebase arg_) ->+            (GH.encodeVariant #planebase arg_ (GH.unionStruct raw_))+        (Z'airport arg_) ->+            (GH.encodeVariant #airport arg_ (GH.unionStruct raw_))+        (Z'b737 arg_) ->+            (GH.encodeVariant #b737 arg_ (GH.unionStruct raw_))+        (Z'a320 arg_) ->+            (GH.encodeVariant #a320 arg_ (GH.unionStruct raw_))+        (Z'f16 arg_) ->+            (GH.encodeVariant #f16 arg_ (GH.unionStruct raw_))+        (Z'zdatevec arg_) ->+            (GH.encodeVariant #zdatevec arg_ (GH.unionStruct raw_))+        (Z'zdatavec arg_) ->+            (GH.encodeVariant #zdatavec arg_ (GH.unionStruct raw_))+        (Z'boolvec arg_) ->+            (GH.encodeVariant #boolvec arg_ (GH.unionStruct raw_))+        (Z'datavec arg_) ->+            (GH.encodeVariant #datavec arg_ (GH.unionStruct raw_))+        (Z'textvec arg_) ->+            (GH.encodeVariant #textvec arg_ (GH.unionStruct raw_))+        (Z'grp arg_) ->+            (do+                rawGroup_ <- (GH.initVariant #grp (GH.unionStruct raw_))+                (C.marshalInto rawGroup_ arg_)+                )+        (Z'echo arg_) ->+            (GH.encodeVariant #echo arg_ (GH.unionStruct raw_))+        (Z'echoBases arg_) ->+            (GH.encodeVariant #echoBases arg_ (GH.unionStruct raw_))+        (Z'unknown' tag_) ->+            (GH.encodeField GH.unionField tag_ (GH.unionStruct raw_))+data Z'grp +type instance (R.ReprFor Z'grp) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Z'grp) where+    numStructWords  = 3+    numStructPtrs  = 1+instance (C.Allocate Z'grp) where+    type AllocHint Z'grp = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Z'grp (C.Parsed Z'grp))+instance (C.AllocateList Z'grp) where+    type ListAllocHint Z'grp = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Z'grp (C.Parsed Z'grp))+data instance C.Parsed Z'grp+    = Z'grp' +        {first :: (RP.Parsed Std_.Word64)+        ,second :: (RP.Parsed Std_.Word64)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Z'grp))+deriving instance (Std_.Eq (C.Parsed Z'grp))+instance (C.Parse Z'grp (C.Parsed Z'grp)) where+    parse raw_ = (Z'grp' <$> (GH.parseField #first raw_)+                         <*> (GH.parseField #second raw_))+instance (C.Marshal Z'grp (C.Parsed Z'grp)) where+    marshalInto raw_ Z'grp'{..} = (do+        (GH.encodeField #first first raw_)+        (GH.encodeField #second second raw_)+        (Std_.pure ())+        )+instance (GH.HasField "first" GH.Slot Z'grp Std_.Word64) where+    fieldByLabel  = (GH.dataField 0 1 64 0)+instance (GH.HasField "second" GH.Slot Z'grp Std_.Word64) where+    fieldByLabel  = (GH.dataField 0 2 64 0)+data Counter +type instance (R.ReprFor Counter) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Counter) where+    numStructWords  = 1+    numStructPtrs  = 2+instance (C.Allocate Counter) where+    type AllocHint Counter = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Counter (C.Parsed Counter))+instance (C.AllocateList Counter) where+    type ListAllocHint Counter = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Counter (C.Parsed Counter))+data instance C.Parsed Counter+    = Counter +        {size :: (RP.Parsed Std_.Int64)+        ,words :: (RP.Parsed Basics.Text)+        ,wordlist :: (RP.Parsed (R.List Basics.Text))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Counter))+deriving instance (Std_.Eq (C.Parsed Counter))+instance (C.Parse Counter (C.Parsed Counter)) where+    parse raw_ = (Counter <$> (GH.parseField #size raw_)+                          <*> (GH.parseField #words raw_)+                          <*> (GH.parseField #wordlist raw_))+instance (C.Marshal Counter (C.Parsed Counter)) where+    marshalInto raw_ Counter{..} = (do+        (GH.encodeField #size size raw_)+        (GH.encodeField #words words raw_)+        (GH.encodeField #wordlist wordlist raw_)+        (Std_.pure ())+        )+instance (GH.HasField "size" GH.Slot Counter Std_.Int64) where+    fieldByLabel  = (GH.dataField 0 0 64 0)+instance (GH.HasField "words" GH.Slot Counter Basics.Text) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "wordlist" GH.Slot Counter (R.List Basics.Text)) where+    fieldByLabel  = (GH.ptrField 1)+data Bag +type instance (R.ReprFor Bag) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Bag) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate Bag) where+    type AllocHint Bag = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Bag (C.Parsed Bag))+instance (C.AllocateList Bag) where+    type ListAllocHint Bag = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Bag (C.Parsed Bag))+data instance C.Parsed Bag+    = Bag +        {counter :: (RP.Parsed Counter)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Bag))+deriving instance (Std_.Eq (C.Parsed Bag))+instance (C.Parse Bag (C.Parsed Bag)) where+    parse raw_ = (Bag <$> (GH.parseField #counter raw_))+instance (C.Marshal Bag (C.Parsed Bag)) where+    marshalInto raw_ Bag{..} = (do+        (GH.encodeField #counter counter raw_)+        (Std_.pure ())+        )+instance (GH.HasField "counter" GH.Slot Bag Counter) where+    fieldByLabel  = (GH.ptrField 0)+data Zserver +type instance (R.ReprFor Zserver) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Zserver) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate Zserver) where+    type AllocHint Zserver = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Zserver (C.Parsed Zserver))+instance (C.AllocateList Zserver) where+    type ListAllocHint Zserver = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Zserver (C.Parsed Zserver))+data instance C.Parsed Zserver+    = Zserver +        {waitingjobs :: (RP.Parsed (R.List Zjob))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Zserver))+deriving instance (Std_.Eq (C.Parsed Zserver))+instance (C.Parse Zserver (C.Parsed Zserver)) where+    parse raw_ = (Zserver <$> (GH.parseField #waitingjobs raw_))+instance (C.Marshal Zserver (C.Parsed Zserver)) where+    marshalInto raw_ Zserver{..} = (do+        (GH.encodeField #waitingjobs waitingjobs raw_)+        (Std_.pure ())+        )+instance (GH.HasField "waitingjobs" GH.Slot Zserver (R.List Zjob)) where+    fieldByLabel  = (GH.ptrField 0)+data Zjob +type instance (R.ReprFor Zjob) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Zjob) where+    numStructWords  = 0+    numStructPtrs  = 2+instance (C.Allocate Zjob) where+    type AllocHint Zjob = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Zjob (C.Parsed Zjob))+instance (C.AllocateList Zjob) where+    type ListAllocHint Zjob = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Zjob (C.Parsed Zjob))+data instance C.Parsed Zjob+    = Zjob +        {cmd :: (RP.Parsed Basics.Text)+        ,args :: (RP.Parsed (R.List Basics.Text))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Zjob))+deriving instance (Std_.Eq (C.Parsed Zjob))+instance (C.Parse Zjob (C.Parsed Zjob)) where+    parse raw_ = (Zjob <$> (GH.parseField #cmd raw_)+                       <*> (GH.parseField #args raw_))+instance (C.Marshal Zjob (C.Parsed Zjob)) where+    marshalInto raw_ Zjob{..} = (do+        (GH.encodeField #cmd cmd raw_)+        (GH.encodeField #args args raw_)+        (Std_.pure ())+        )+instance (GH.HasField "cmd" GH.Slot Zjob Basics.Text) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "args" GH.Slot Zjob (R.List Basics.Text)) where+    fieldByLabel  = (GH.ptrField 1)+data VerEmpty +type instance (R.ReprFor VerEmpty) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct VerEmpty) where+    numStructWords  = 0+    numStructPtrs  = 0+instance (C.Allocate VerEmpty) where+    type AllocHint VerEmpty = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc VerEmpty (C.Parsed VerEmpty))+instance (C.AllocateList VerEmpty) where+    type ListAllocHint VerEmpty = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc VerEmpty (C.Parsed VerEmpty))+data instance C.Parsed VerEmpty+    = VerEmpty +        {}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed VerEmpty))+deriving instance (Std_.Eq (C.Parsed VerEmpty))+instance (C.Parse VerEmpty (C.Parsed VerEmpty)) where+    parse raw_ = (Std_.pure VerEmpty)+instance (C.Marshal VerEmpty (C.Parsed VerEmpty)) where+    marshalInto _raw (VerEmpty) = (Std_.pure ())+data VerOneData +type instance (R.ReprFor VerOneData) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct VerOneData) where+    numStructWords  = 1+    numStructPtrs  = 0+instance (C.Allocate VerOneData) where+    type AllocHint VerOneData = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc VerOneData (C.Parsed VerOneData))+instance (C.AllocateList VerOneData) where+    type ListAllocHint VerOneData = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc VerOneData (C.Parsed VerOneData))+data instance C.Parsed VerOneData+    = VerOneData +        {val :: (RP.Parsed Std_.Int16)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed VerOneData))+deriving instance (Std_.Eq (C.Parsed VerOneData))+instance (C.Parse VerOneData (C.Parsed VerOneData)) where+    parse raw_ = (VerOneData <$> (GH.parseField #val raw_))+instance (C.Marshal VerOneData (C.Parsed VerOneData)) where+    marshalInto raw_ VerOneData{..} = (do+        (GH.encodeField #val val raw_)+        (Std_.pure ())+        )+instance (GH.HasField "val" GH.Slot VerOneData Std_.Int16) where+    fieldByLabel  = (GH.dataField 0 0 16 0)+data VerTwoData +type instance (R.ReprFor VerTwoData) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct VerTwoData) where+    numStructWords  = 2+    numStructPtrs  = 0+instance (C.Allocate VerTwoData) where+    type AllocHint VerTwoData = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc VerTwoData (C.Parsed VerTwoData))+instance (C.AllocateList VerTwoData) where+    type ListAllocHint VerTwoData = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc VerTwoData (C.Parsed VerTwoData))+data instance C.Parsed VerTwoData+    = VerTwoData +        {val :: (RP.Parsed Std_.Int16)+        ,duo :: (RP.Parsed Std_.Int64)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed VerTwoData))+deriving instance (Std_.Eq (C.Parsed VerTwoData))+instance (C.Parse VerTwoData (C.Parsed VerTwoData)) where+    parse raw_ = (VerTwoData <$> (GH.parseField #val raw_)+                             <*> (GH.parseField #duo raw_))+instance (C.Marshal VerTwoData (C.Parsed VerTwoData)) where+    marshalInto raw_ VerTwoData{..} = (do+        (GH.encodeField #val val raw_)+        (GH.encodeField #duo duo raw_)+        (Std_.pure ())+        )+instance (GH.HasField "val" GH.Slot VerTwoData Std_.Int16) where+    fieldByLabel  = (GH.dataField 0 0 16 0)+instance (GH.HasField "duo" GH.Slot VerTwoData Std_.Int64) where+    fieldByLabel  = (GH.dataField 0 1 64 0)+data VerOnePtr +type instance (R.ReprFor VerOnePtr) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct VerOnePtr) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate VerOnePtr) where+    type AllocHint VerOnePtr = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc VerOnePtr (C.Parsed VerOnePtr))+instance (C.AllocateList VerOnePtr) where+    type ListAllocHint VerOnePtr = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc VerOnePtr (C.Parsed VerOnePtr))+data instance C.Parsed VerOnePtr+    = VerOnePtr +        {ptr :: (RP.Parsed VerOneData)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed VerOnePtr))+deriving instance (Std_.Eq (C.Parsed VerOnePtr))+instance (C.Parse VerOnePtr (C.Parsed VerOnePtr)) where+    parse raw_ = (VerOnePtr <$> (GH.parseField #ptr raw_))+instance (C.Marshal VerOnePtr (C.Parsed VerOnePtr)) where+    marshalInto raw_ VerOnePtr{..} = (do+        (GH.encodeField #ptr ptr raw_)+        (Std_.pure ())+        )+instance (GH.HasField "ptr" GH.Slot VerOnePtr VerOneData) where+    fieldByLabel  = (GH.ptrField 0)+data VerTwoPtr +type instance (R.ReprFor VerTwoPtr) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct VerTwoPtr) where+    numStructWords  = 0+    numStructPtrs  = 2+instance (C.Allocate VerTwoPtr) where+    type AllocHint VerTwoPtr = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc VerTwoPtr (C.Parsed VerTwoPtr))+instance (C.AllocateList VerTwoPtr) where+    type ListAllocHint VerTwoPtr = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc VerTwoPtr (C.Parsed VerTwoPtr))+data instance C.Parsed VerTwoPtr+    = VerTwoPtr +        {ptr1 :: (RP.Parsed VerOneData)+        ,ptr2 :: (RP.Parsed VerOneData)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed VerTwoPtr))+deriving instance (Std_.Eq (C.Parsed VerTwoPtr))+instance (C.Parse VerTwoPtr (C.Parsed VerTwoPtr)) where+    parse raw_ = (VerTwoPtr <$> (GH.parseField #ptr1 raw_)+                            <*> (GH.parseField #ptr2 raw_))+instance (C.Marshal VerTwoPtr (C.Parsed VerTwoPtr)) where+    marshalInto raw_ VerTwoPtr{..} = (do+        (GH.encodeField #ptr1 ptr1 raw_)+        (GH.encodeField #ptr2 ptr2 raw_)+        (Std_.pure ())+        )+instance (GH.HasField "ptr1" GH.Slot VerTwoPtr VerOneData) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "ptr2" GH.Slot VerTwoPtr VerOneData) where+    fieldByLabel  = (GH.ptrField 1)+data VerTwoDataTwoPtr +type instance (R.ReprFor VerTwoDataTwoPtr) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct VerTwoDataTwoPtr) where+    numStructWords  = 2+    numStructPtrs  = 2+instance (C.Allocate VerTwoDataTwoPtr) where+    type AllocHint VerTwoDataTwoPtr = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc VerTwoDataTwoPtr (C.Parsed VerTwoDataTwoPtr))+instance (C.AllocateList VerTwoDataTwoPtr) where+    type ListAllocHint VerTwoDataTwoPtr = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc VerTwoDataTwoPtr (C.Parsed VerTwoDataTwoPtr))+data instance C.Parsed VerTwoDataTwoPtr+    = VerTwoDataTwoPtr +        {val :: (RP.Parsed Std_.Int16)+        ,duo :: (RP.Parsed Std_.Int64)+        ,ptr1 :: (RP.Parsed VerOneData)+        ,ptr2 :: (RP.Parsed VerOneData)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed VerTwoDataTwoPtr))+deriving instance (Std_.Eq (C.Parsed VerTwoDataTwoPtr))+instance (C.Parse VerTwoDataTwoPtr (C.Parsed VerTwoDataTwoPtr)) where+    parse raw_ = (VerTwoDataTwoPtr <$> (GH.parseField #val raw_)+                                   <*> (GH.parseField #duo raw_)+                                   <*> (GH.parseField #ptr1 raw_)+                                   <*> (GH.parseField #ptr2 raw_))+instance (C.Marshal VerTwoDataTwoPtr (C.Parsed VerTwoDataTwoPtr)) where+    marshalInto raw_ VerTwoDataTwoPtr{..} = (do+        (GH.encodeField #val val raw_)+        (GH.encodeField #duo duo raw_)+        (GH.encodeField #ptr1 ptr1 raw_)+        (GH.encodeField #ptr2 ptr2 raw_)+        (Std_.pure ())+        )+instance (GH.HasField "val" GH.Slot VerTwoDataTwoPtr Std_.Int16) where+    fieldByLabel  = (GH.dataField 0 0 16 0)+instance (GH.HasField "duo" GH.Slot VerTwoDataTwoPtr Std_.Int64) where+    fieldByLabel  = (GH.dataField 0 1 64 0)+instance (GH.HasField "ptr1" GH.Slot VerTwoDataTwoPtr VerOneData) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "ptr2" GH.Slot VerTwoDataTwoPtr VerOneData) where+    fieldByLabel  = (GH.ptrField 1)+data HoldsVerEmptyList +type instance (R.ReprFor HoldsVerEmptyList) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct HoldsVerEmptyList) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate HoldsVerEmptyList) where+    type AllocHint HoldsVerEmptyList = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc HoldsVerEmptyList (C.Parsed HoldsVerEmptyList))+instance (C.AllocateList HoldsVerEmptyList) where+    type ListAllocHint HoldsVerEmptyList = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc HoldsVerEmptyList (C.Parsed HoldsVerEmptyList))+data instance C.Parsed HoldsVerEmptyList+    = HoldsVerEmptyList +        {mylist :: (RP.Parsed (R.List VerEmpty))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed HoldsVerEmptyList))+deriving instance (Std_.Eq (C.Parsed HoldsVerEmptyList))+instance (C.Parse HoldsVerEmptyList (C.Parsed HoldsVerEmptyList)) where+    parse raw_ = (HoldsVerEmptyList <$> (GH.parseField #mylist raw_))+instance (C.Marshal HoldsVerEmptyList (C.Parsed HoldsVerEmptyList)) where+    marshalInto raw_ HoldsVerEmptyList{..} = (do+        (GH.encodeField #mylist mylist raw_)+        (Std_.pure ())+        )+instance (GH.HasField "mylist" GH.Slot HoldsVerEmptyList (R.List VerEmpty)) where+    fieldByLabel  = (GH.ptrField 0)+data HoldsVerOneDataList +type instance (R.ReprFor HoldsVerOneDataList) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct HoldsVerOneDataList) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate HoldsVerOneDataList) where+    type AllocHint HoldsVerOneDataList = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc HoldsVerOneDataList (C.Parsed HoldsVerOneDataList))+instance (C.AllocateList HoldsVerOneDataList) where+    type ListAllocHint HoldsVerOneDataList = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc HoldsVerOneDataList (C.Parsed HoldsVerOneDataList))+data instance C.Parsed HoldsVerOneDataList+    = HoldsVerOneDataList +        {mylist :: (RP.Parsed (R.List VerOneData))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed HoldsVerOneDataList))+deriving instance (Std_.Eq (C.Parsed HoldsVerOneDataList))+instance (C.Parse HoldsVerOneDataList (C.Parsed HoldsVerOneDataList)) where+    parse raw_ = (HoldsVerOneDataList <$> (GH.parseField #mylist raw_))+instance (C.Marshal HoldsVerOneDataList (C.Parsed HoldsVerOneDataList)) where+    marshalInto raw_ HoldsVerOneDataList{..} = (do+        (GH.encodeField #mylist mylist raw_)+        (Std_.pure ())+        )+instance (GH.HasField "mylist" GH.Slot HoldsVerOneDataList (R.List VerOneData)) where+    fieldByLabel  = (GH.ptrField 0)+data HoldsVerTwoDataList +type instance (R.ReprFor HoldsVerTwoDataList) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct HoldsVerTwoDataList) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate HoldsVerTwoDataList) where+    type AllocHint HoldsVerTwoDataList = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc HoldsVerTwoDataList (C.Parsed HoldsVerTwoDataList))+instance (C.AllocateList HoldsVerTwoDataList) where+    type ListAllocHint HoldsVerTwoDataList = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc HoldsVerTwoDataList (C.Parsed HoldsVerTwoDataList))+data instance C.Parsed HoldsVerTwoDataList+    = HoldsVerTwoDataList +        {mylist :: (RP.Parsed (R.List VerTwoData))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed HoldsVerTwoDataList))+deriving instance (Std_.Eq (C.Parsed HoldsVerTwoDataList))+instance (C.Parse HoldsVerTwoDataList (C.Parsed HoldsVerTwoDataList)) where+    parse raw_ = (HoldsVerTwoDataList <$> (GH.parseField #mylist raw_))+instance (C.Marshal HoldsVerTwoDataList (C.Parsed HoldsVerTwoDataList)) where+    marshalInto raw_ HoldsVerTwoDataList{..} = (do+        (GH.encodeField #mylist mylist raw_)+        (Std_.pure ())+        )+instance (GH.HasField "mylist" GH.Slot HoldsVerTwoDataList (R.List VerTwoData)) where+    fieldByLabel  = (GH.ptrField 0)+data HoldsVerOnePtrList +type instance (R.ReprFor HoldsVerOnePtrList) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct HoldsVerOnePtrList) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate HoldsVerOnePtrList) where+    type AllocHint HoldsVerOnePtrList = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc HoldsVerOnePtrList (C.Parsed HoldsVerOnePtrList))+instance (C.AllocateList HoldsVerOnePtrList) where+    type ListAllocHint HoldsVerOnePtrList = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc HoldsVerOnePtrList (C.Parsed HoldsVerOnePtrList))+data instance C.Parsed HoldsVerOnePtrList+    = HoldsVerOnePtrList +        {mylist :: (RP.Parsed (R.List VerOnePtr))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed HoldsVerOnePtrList))+deriving instance (Std_.Eq (C.Parsed HoldsVerOnePtrList))+instance (C.Parse HoldsVerOnePtrList (C.Parsed HoldsVerOnePtrList)) where+    parse raw_ = (HoldsVerOnePtrList <$> (GH.parseField #mylist raw_))+instance (C.Marshal HoldsVerOnePtrList (C.Parsed HoldsVerOnePtrList)) where+    marshalInto raw_ HoldsVerOnePtrList{..} = (do+        (GH.encodeField #mylist mylist raw_)+        (Std_.pure ())+        )+instance (GH.HasField "mylist" GH.Slot HoldsVerOnePtrList (R.List VerOnePtr)) where+    fieldByLabel  = (GH.ptrField 0)+data HoldsVerTwoPtrList +type instance (R.ReprFor HoldsVerTwoPtrList) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct HoldsVerTwoPtrList) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate HoldsVerTwoPtrList) where+    type AllocHint HoldsVerTwoPtrList = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc HoldsVerTwoPtrList (C.Parsed HoldsVerTwoPtrList))+instance (C.AllocateList HoldsVerTwoPtrList) where+    type ListAllocHint HoldsVerTwoPtrList = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc HoldsVerTwoPtrList (C.Parsed HoldsVerTwoPtrList))+data instance C.Parsed HoldsVerTwoPtrList+    = HoldsVerTwoPtrList +        {mylist :: (RP.Parsed (R.List VerTwoPtr))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed HoldsVerTwoPtrList))+deriving instance (Std_.Eq (C.Parsed HoldsVerTwoPtrList))+instance (C.Parse HoldsVerTwoPtrList (C.Parsed HoldsVerTwoPtrList)) where+    parse raw_ = (HoldsVerTwoPtrList <$> (GH.parseField #mylist raw_))+instance (C.Marshal HoldsVerTwoPtrList (C.Parsed HoldsVerTwoPtrList)) where+    marshalInto raw_ HoldsVerTwoPtrList{..} = (do+        (GH.encodeField #mylist mylist raw_)+        (Std_.pure ())+        )+instance (GH.HasField "mylist" GH.Slot HoldsVerTwoPtrList (R.List VerTwoPtr)) where+    fieldByLabel  = (GH.ptrField 0)+data HoldsVerTwoTwoList +type instance (R.ReprFor HoldsVerTwoTwoList) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct HoldsVerTwoTwoList) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate HoldsVerTwoTwoList) where+    type AllocHint HoldsVerTwoTwoList = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc HoldsVerTwoTwoList (C.Parsed HoldsVerTwoTwoList))+instance (C.AllocateList HoldsVerTwoTwoList) where+    type ListAllocHint HoldsVerTwoTwoList = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc HoldsVerTwoTwoList (C.Parsed HoldsVerTwoTwoList))+data instance C.Parsed HoldsVerTwoTwoList+    = HoldsVerTwoTwoList +        {mylist :: (RP.Parsed (R.List VerTwoDataTwoPtr))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed HoldsVerTwoTwoList))+deriving instance (Std_.Eq (C.Parsed HoldsVerTwoTwoList))+instance (C.Parse HoldsVerTwoTwoList (C.Parsed HoldsVerTwoTwoList)) where+    parse raw_ = (HoldsVerTwoTwoList <$> (GH.parseField #mylist raw_))+instance (C.Marshal HoldsVerTwoTwoList (C.Parsed HoldsVerTwoTwoList)) where+    marshalInto raw_ HoldsVerTwoTwoList{..} = (do+        (GH.encodeField #mylist mylist raw_)+        (Std_.pure ())+        )+instance (GH.HasField "mylist" GH.Slot HoldsVerTwoTwoList (R.List VerTwoDataTwoPtr)) where+    fieldByLabel  = (GH.ptrField 0)+data HoldsVerTwoTwoPlus +type instance (R.ReprFor HoldsVerTwoTwoPlus) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct HoldsVerTwoTwoPlus) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate HoldsVerTwoTwoPlus) where+    type AllocHint HoldsVerTwoTwoPlus = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc HoldsVerTwoTwoPlus (C.Parsed HoldsVerTwoTwoPlus))+instance (C.AllocateList HoldsVerTwoTwoPlus) where+    type ListAllocHint HoldsVerTwoTwoPlus = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc HoldsVerTwoTwoPlus (C.Parsed HoldsVerTwoTwoPlus))+data instance C.Parsed HoldsVerTwoTwoPlus+    = HoldsVerTwoTwoPlus +        {mylist :: (RP.Parsed (R.List VerTwoTwoPlus))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed HoldsVerTwoTwoPlus))+deriving instance (Std_.Eq (C.Parsed HoldsVerTwoTwoPlus))+instance (C.Parse HoldsVerTwoTwoPlus (C.Parsed HoldsVerTwoTwoPlus)) where+    parse raw_ = (HoldsVerTwoTwoPlus <$> (GH.parseField #mylist raw_))+instance (C.Marshal HoldsVerTwoTwoPlus (C.Parsed HoldsVerTwoTwoPlus)) where+    marshalInto raw_ HoldsVerTwoTwoPlus{..} = (do+        (GH.encodeField #mylist mylist raw_)+        (Std_.pure ())+        )+instance (GH.HasField "mylist" GH.Slot HoldsVerTwoTwoPlus (R.List VerTwoTwoPlus)) where+    fieldByLabel  = (GH.ptrField 0)+data VerTwoTwoPlus +type instance (R.ReprFor VerTwoTwoPlus) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct VerTwoTwoPlus) where+    numStructWords  = 3+    numStructPtrs  = 3+instance (C.Allocate VerTwoTwoPlus) where+    type AllocHint VerTwoTwoPlus = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc VerTwoTwoPlus (C.Parsed VerTwoTwoPlus))+instance (C.AllocateList VerTwoTwoPlus) where+    type ListAllocHint VerTwoTwoPlus = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc VerTwoTwoPlus (C.Parsed VerTwoTwoPlus))+data instance C.Parsed VerTwoTwoPlus+    = VerTwoTwoPlus +        {val :: (RP.Parsed Std_.Int16)+        ,duo :: (RP.Parsed Std_.Int64)+        ,ptr1 :: (RP.Parsed VerTwoDataTwoPtr)+        ,ptr2 :: (RP.Parsed VerTwoDataTwoPtr)+        ,tre :: (RP.Parsed Std_.Int64)+        ,lst3 :: (RP.Parsed (R.List Std_.Int64))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed VerTwoTwoPlus))+deriving instance (Std_.Eq (C.Parsed VerTwoTwoPlus))+instance (C.Parse VerTwoTwoPlus (C.Parsed VerTwoTwoPlus)) where+    parse raw_ = (VerTwoTwoPlus <$> (GH.parseField #val raw_)+                                <*> (GH.parseField #duo raw_)+                                <*> (GH.parseField #ptr1 raw_)+                                <*> (GH.parseField #ptr2 raw_)+                                <*> (GH.parseField #tre raw_)+                                <*> (GH.parseField #lst3 raw_))+instance (C.Marshal VerTwoTwoPlus (C.Parsed VerTwoTwoPlus)) where+    marshalInto raw_ VerTwoTwoPlus{..} = (do+        (GH.encodeField #val val raw_)+        (GH.encodeField #duo duo raw_)+        (GH.encodeField #ptr1 ptr1 raw_)+        (GH.encodeField #ptr2 ptr2 raw_)+        (GH.encodeField #tre tre raw_)+        (GH.encodeField #lst3 lst3 raw_)+        (Std_.pure ())+        )+instance (GH.HasField "val" GH.Slot VerTwoTwoPlus Std_.Int16) where+    fieldByLabel  = (GH.dataField 0 0 16 0)+instance (GH.HasField "duo" GH.Slot VerTwoTwoPlus Std_.Int64) where+    fieldByLabel  = (GH.dataField 0 1 64 0)+instance (GH.HasField "ptr1" GH.Slot VerTwoTwoPlus VerTwoDataTwoPtr) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "ptr2" GH.Slot VerTwoTwoPlus VerTwoDataTwoPtr) where+    fieldByLabel  = (GH.ptrField 1)+instance (GH.HasField "tre" GH.Slot VerTwoTwoPlus Std_.Int64) where+    fieldByLabel  = (GH.dataField 0 2 64 0)+instance (GH.HasField "lst3" GH.Slot VerTwoTwoPlus (R.List Std_.Int64)) where+    fieldByLabel  = (GH.ptrField 2)+data HoldsText +type instance (R.ReprFor HoldsText) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct HoldsText) where+    numStructWords  = 0+    numStructPtrs  = 3+instance (C.Allocate HoldsText) where+    type AllocHint HoldsText = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc HoldsText (C.Parsed HoldsText))+instance (C.AllocateList HoldsText) where+    type ListAllocHint HoldsText = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc HoldsText (C.Parsed HoldsText))+data instance C.Parsed HoldsText+    = HoldsText +        {txt :: (RP.Parsed Basics.Text)+        ,lst :: (RP.Parsed (R.List Basics.Text))+        ,lstlst :: (RP.Parsed (R.List (R.List Basics.Text)))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed HoldsText))+deriving instance (Std_.Eq (C.Parsed HoldsText))+instance (C.Parse HoldsText (C.Parsed HoldsText)) where+    parse raw_ = (HoldsText <$> (GH.parseField #txt raw_)+                            <*> (GH.parseField #lst raw_)+                            <*> (GH.parseField #lstlst raw_))+instance (C.Marshal HoldsText (C.Parsed HoldsText)) where+    marshalInto raw_ HoldsText{..} = (do+        (GH.encodeField #txt txt raw_)+        (GH.encodeField #lst lst raw_)+        (GH.encodeField #lstlst lstlst raw_)+        (Std_.pure ())+        )+instance (GH.HasField "txt" GH.Slot HoldsText Basics.Text) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "lst" GH.Slot HoldsText (R.List Basics.Text)) where+    fieldByLabel  = (GH.ptrField 1)+instance (GH.HasField "lstlst" GH.Slot HoldsText (R.List (R.List Basics.Text))) where+    fieldByLabel  = (GH.ptrField 2)+data WrapEmpty +type instance (R.ReprFor WrapEmpty) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct WrapEmpty) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate WrapEmpty) where+    type AllocHint WrapEmpty = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc WrapEmpty (C.Parsed WrapEmpty))+instance (C.AllocateList WrapEmpty) where+    type ListAllocHint WrapEmpty = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc WrapEmpty (C.Parsed WrapEmpty))+data instance C.Parsed WrapEmpty+    = WrapEmpty +        {mightNotBeReallyEmpty :: (RP.Parsed VerEmpty)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed WrapEmpty))+deriving instance (Std_.Eq (C.Parsed WrapEmpty))+instance (C.Parse WrapEmpty (C.Parsed WrapEmpty)) where+    parse raw_ = (WrapEmpty <$> (GH.parseField #mightNotBeReallyEmpty raw_))+instance (C.Marshal WrapEmpty (C.Parsed WrapEmpty)) where+    marshalInto raw_ WrapEmpty{..} = (do+        (GH.encodeField #mightNotBeReallyEmpty mightNotBeReallyEmpty raw_)+        (Std_.pure ())+        )+instance (GH.HasField "mightNotBeReallyEmpty" GH.Slot WrapEmpty VerEmpty) where+    fieldByLabel  = (GH.ptrField 0)+data Wrap2x2 +type instance (R.ReprFor Wrap2x2) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Wrap2x2) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate Wrap2x2) where+    type AllocHint Wrap2x2 = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Wrap2x2 (C.Parsed Wrap2x2))+instance (C.AllocateList Wrap2x2) where+    type ListAllocHint Wrap2x2 = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Wrap2x2 (C.Parsed Wrap2x2))+data instance C.Parsed Wrap2x2+    = Wrap2x2 +        {mightNotBeReallyEmpty :: (RP.Parsed VerTwoDataTwoPtr)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Wrap2x2))+deriving instance (Std_.Eq (C.Parsed Wrap2x2))+instance (C.Parse Wrap2x2 (C.Parsed Wrap2x2)) where+    parse raw_ = (Wrap2x2 <$> (GH.parseField #mightNotBeReallyEmpty raw_))+instance (C.Marshal Wrap2x2 (C.Parsed Wrap2x2)) where+    marshalInto raw_ Wrap2x2{..} = (do+        (GH.encodeField #mightNotBeReallyEmpty mightNotBeReallyEmpty raw_)+        (Std_.pure ())+        )+instance (GH.HasField "mightNotBeReallyEmpty" GH.Slot Wrap2x2 VerTwoDataTwoPtr) where+    fieldByLabel  = (GH.ptrField 0)+data Wrap2x2plus +type instance (R.ReprFor Wrap2x2plus) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Wrap2x2plus) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate Wrap2x2plus) where+    type AllocHint Wrap2x2plus = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Wrap2x2plus (C.Parsed Wrap2x2plus))+instance (C.AllocateList Wrap2x2plus) where+    type ListAllocHint Wrap2x2plus = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Wrap2x2plus (C.Parsed Wrap2x2plus))+data instance C.Parsed Wrap2x2plus+    = Wrap2x2plus +        {mightNotBeReallyEmpty :: (RP.Parsed VerTwoTwoPlus)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Wrap2x2plus))+deriving instance (Std_.Eq (C.Parsed Wrap2x2plus))+instance (C.Parse Wrap2x2plus (C.Parsed Wrap2x2plus)) where+    parse raw_ = (Wrap2x2plus <$> (GH.parseField #mightNotBeReallyEmpty raw_))+instance (C.Marshal Wrap2x2plus (C.Parsed Wrap2x2plus)) where+    marshalInto raw_ Wrap2x2plus{..} = (do+        (GH.encodeField #mightNotBeReallyEmpty mightNotBeReallyEmpty raw_)+        (Std_.pure ())+        )+instance (GH.HasField "mightNotBeReallyEmpty" GH.Slot Wrap2x2plus VerTwoTwoPlus) where+    fieldByLabel  = (GH.ptrField 0)+data VoidUnion +type instance (R.ReprFor VoidUnion) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct VoidUnion) where+    numStructWords  = 1+    numStructPtrs  = 0+instance (C.Allocate VoidUnion) where+    type AllocHint VoidUnion = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc VoidUnion (C.Parsed VoidUnion))+instance (C.AllocateList VoidUnion) where+    type ListAllocHint VoidUnion = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc VoidUnion (C.Parsed VoidUnion))+data instance C.Parsed VoidUnion+    = VoidUnion +        {union' :: (C.Parsed (GH.Which VoidUnion))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed VoidUnion))+deriving instance (Std_.Eq (C.Parsed VoidUnion))+instance (C.Parse VoidUnion (C.Parsed VoidUnion)) where+    parse raw_ = (VoidUnion <$> (C.parse (GH.structUnion raw_)))+instance (C.Marshal VoidUnion (C.Parsed VoidUnion)) where+    marshalInto raw_ VoidUnion{..} = (do+        (C.marshalInto (GH.structUnion raw_) union')+        )+instance (GH.HasUnion VoidUnion) where+    unionField  = (GH.dataField 0 0 16 0)+    data RawWhich mut_ VoidUnion+        = RW_VoidUnion'a (R.Raw mut_ ())+        | RW_VoidUnion'b (R.Raw mut_ ())+        | RW_VoidUnion'unknown' Std_.Word16+    internalWhich tag_ struct_ = case tag_ of+        0 ->+            (RW_VoidUnion'a <$> (GH.readVariant #a struct_))+        1 ->+            (RW_VoidUnion'b <$> (GH.readVariant #b struct_))+        _ ->+            (Std_.pure (RW_VoidUnion'unknown' tag_))+    data Which VoidUnion+instance (GH.HasVariant "a" GH.Slot VoidUnion ()) where+    variantByLabel  = (GH.Variant GH.voidField 0)+instance (GH.HasVariant "b" GH.Slot VoidUnion ()) where+    variantByLabel  = (GH.Variant GH.voidField 1)+data instance C.Parsed (GH.Which VoidUnion)+    = VoidUnion'a +    | VoidUnion'b +    | VoidUnion'unknown' Std_.Word16+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed (GH.Which VoidUnion)))+deriving instance (Std_.Eq (C.Parsed (GH.Which VoidUnion)))+instance (C.Parse (GH.Which VoidUnion) (C.Parsed (GH.Which VoidUnion))) where+    parse raw_ = (do+        rawWhich_ <- (GH.unionWhich raw_)+        case rawWhich_ of+            (RW_VoidUnion'a _) ->+                (Std_.pure VoidUnion'a)+            (RW_VoidUnion'b _) ->+                (Std_.pure VoidUnion'b)+            (RW_VoidUnion'unknown' tag_) ->+                (Std_.pure (VoidUnion'unknown' tag_))+        )+instance (C.Marshal (GH.Which VoidUnion) (C.Parsed (GH.Which VoidUnion))) where+    marshalInto raw_ parsed_ = case parsed_ of+        (VoidUnion'a) ->+            (GH.encodeVariant #a () (GH.unionStruct raw_))+        (VoidUnion'b) ->+            (GH.encodeVariant #b () (GH.unionStruct raw_))+        (VoidUnion'unknown' tag_) ->+            (GH.encodeField GH.unionField tag_ (GH.unionStruct raw_))+data Nester1Capn +type instance (R.ReprFor Nester1Capn) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Nester1Capn) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate Nester1Capn) where+    type AllocHint Nester1Capn = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Nester1Capn (C.Parsed Nester1Capn))+instance (C.AllocateList Nester1Capn) where+    type ListAllocHint Nester1Capn = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Nester1Capn (C.Parsed Nester1Capn))+data instance C.Parsed Nester1Capn+    = Nester1Capn +        {strs :: (RP.Parsed (R.List Basics.Text))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Nester1Capn))+deriving instance (Std_.Eq (C.Parsed Nester1Capn))+instance (C.Parse Nester1Capn (C.Parsed Nester1Capn)) where+    parse raw_ = (Nester1Capn <$> (GH.parseField #strs raw_))+instance (C.Marshal Nester1Capn (C.Parsed Nester1Capn)) where+    marshalInto raw_ Nester1Capn{..} = (do+        (GH.encodeField #strs strs raw_)+        (Std_.pure ())+        )+instance (GH.HasField "strs" GH.Slot Nester1Capn (R.List Basics.Text)) where+    fieldByLabel  = (GH.ptrField 0)+data RWTestCapn +type instance (R.ReprFor RWTestCapn) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct RWTestCapn) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate RWTestCapn) where+    type AllocHint RWTestCapn = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc RWTestCapn (C.Parsed RWTestCapn))+instance (C.AllocateList RWTestCapn) where+    type ListAllocHint RWTestCapn = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc RWTestCapn (C.Parsed RWTestCapn))+data instance C.Parsed RWTestCapn+    = RWTestCapn +        {nestMatrix :: (RP.Parsed (R.List (R.List Nester1Capn)))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed RWTestCapn))+deriving instance (Std_.Eq (C.Parsed RWTestCapn))+instance (C.Parse RWTestCapn (C.Parsed RWTestCapn)) where+    parse raw_ = (RWTestCapn <$> (GH.parseField #nestMatrix raw_))+instance (C.Marshal RWTestCapn (C.Parsed RWTestCapn)) where+    marshalInto raw_ RWTestCapn{..} = (do+        (GH.encodeField #nestMatrix nestMatrix raw_)+        (Std_.pure ())+        )+instance (GH.HasField "nestMatrix" GH.Slot RWTestCapn (R.List (R.List Nester1Capn))) where+    fieldByLabel  = (GH.ptrField 0)+data ListStructCapn +type instance (R.ReprFor ListStructCapn) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct ListStructCapn) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate ListStructCapn) where+    type AllocHint ListStructCapn = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc ListStructCapn (C.Parsed ListStructCapn))+instance (C.AllocateList ListStructCapn) where+    type ListAllocHint ListStructCapn = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc ListStructCapn (C.Parsed ListStructCapn))+data instance C.Parsed ListStructCapn+    = ListStructCapn +        {vec :: (RP.Parsed (R.List Nester1Capn))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed ListStructCapn))+deriving instance (Std_.Eq (C.Parsed ListStructCapn))+instance (C.Parse ListStructCapn (C.Parsed ListStructCapn)) where+    parse raw_ = (ListStructCapn <$> (GH.parseField #vec raw_))+instance (C.Marshal ListStructCapn (C.Parsed ListStructCapn)) where+    marshalInto raw_ ListStructCapn{..} = (do+        (GH.encodeField #vec vec raw_)+        (Std_.pure ())+        )+instance (GH.HasField "vec" GH.Slot ListStructCapn (R.List Nester1Capn)) where+    fieldByLabel  = (GH.ptrField 0)+data Echo +type instance (R.ReprFor Echo) = (R.Ptr (Std_.Just R.Cap))+instance (C.Parse Echo (GH.Client Echo)) where+    parse  = GH.parseCap+    encode  = GH.encodeCap+instance (GH.HasMethod "echo" Echo Echo'echo'params Echo'echo'results) where+    methodByLabel  = (GH.Method 10255578992688506164 0)+data Echo'echo'params +type instance (R.ReprFor Echo'echo'params) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Echo'echo'params) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate Echo'echo'params) where+    type AllocHint Echo'echo'params = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Echo'echo'params (C.Parsed Echo'echo'params))+instance (C.AllocateList Echo'echo'params) where+    type ListAllocHint Echo'echo'params = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Echo'echo'params (C.Parsed Echo'echo'params))+data instance C.Parsed Echo'echo'params+    = Echo'echo'params +        {in_ :: (RP.Parsed Basics.Text)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Echo'echo'params))+deriving instance (Std_.Eq (C.Parsed Echo'echo'params))+instance (C.Parse Echo'echo'params (C.Parsed Echo'echo'params)) where+    parse raw_ = (Echo'echo'params <$> (GH.parseField #in_ raw_))+instance (C.Marshal Echo'echo'params (C.Parsed Echo'echo'params)) where+    marshalInto raw_ Echo'echo'params{..} = (do+        (GH.encodeField #in_ in_ raw_)+        (Std_.pure ())+        )+instance (GH.HasField "in_" GH.Slot Echo'echo'params Basics.Text) where+    fieldByLabel  = (GH.ptrField 0)+data Echo'echo'results +type instance (R.ReprFor Echo'echo'results) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Echo'echo'results) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate Echo'echo'results) where+    type AllocHint Echo'echo'results = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Echo'echo'results (C.Parsed Echo'echo'results))+instance (C.AllocateList Echo'echo'results) where+    type ListAllocHint Echo'echo'results = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Echo'echo'results (C.Parsed Echo'echo'results))+data instance C.Parsed Echo'echo'results+    = Echo'echo'results +        {out :: (RP.Parsed Basics.Text)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Echo'echo'results))+deriving instance (Std_.Eq (C.Parsed Echo'echo'results))+instance (C.Parse Echo'echo'results (C.Parsed Echo'echo'results)) where+    parse raw_ = (Echo'echo'results <$> (GH.parseField #out raw_))+instance (C.Marshal Echo'echo'results (C.Parsed Echo'echo'results)) where+    marshalInto raw_ Echo'echo'results{..} = (do+        (GH.encodeField #out out raw_)+        (Std_.pure ())+        )+instance (GH.HasField "out" GH.Slot Echo'echo'results Basics.Text) where+    fieldByLabel  = (GH.ptrField 0)+data Hoth +type instance (R.ReprFor Hoth) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Hoth) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate Hoth) where+    type AllocHint Hoth = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Hoth (C.Parsed Hoth))+instance (C.AllocateList Hoth) where+    type ListAllocHint Hoth = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Hoth (C.Parsed Hoth))+data instance C.Parsed Hoth+    = Hoth +        {base :: (RP.Parsed EchoBase)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Hoth))+deriving instance (Std_.Eq (C.Parsed Hoth))+instance (C.Parse Hoth (C.Parsed Hoth)) where+    parse raw_ = (Hoth <$> (GH.parseField #base raw_))+instance (C.Marshal Hoth (C.Parsed Hoth)) where+    marshalInto raw_ Hoth{..} = (do+        (GH.encodeField #base base raw_)+        (Std_.pure ())+        )+instance (GH.HasField "base" GH.Slot Hoth EchoBase) where+    fieldByLabel  = (GH.ptrField 0)+data EchoBase +type instance (R.ReprFor EchoBase) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct EchoBase) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate EchoBase) where+    type AllocHint EchoBase = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc EchoBase (C.Parsed EchoBase))+instance (C.AllocateList EchoBase) where+    type ListAllocHint EchoBase = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc EchoBase (C.Parsed EchoBase))+data instance C.Parsed EchoBase+    = EchoBase +        {echo :: (RP.Parsed Echo)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed EchoBase))+deriving instance (Std_.Eq (C.Parsed EchoBase))+instance (C.Parse EchoBase (C.Parsed EchoBase)) where+    parse raw_ = (EchoBase <$> (GH.parseField #echo raw_))+instance (C.Marshal EchoBase (C.Parsed EchoBase)) where+    marshalInto raw_ EchoBase{..} = (do+        (GH.encodeField #echo echo raw_)+        (Std_.pure ())+        )+instance (GH.HasField "echo" GH.Slot EchoBase Echo) where+    fieldByLabel  = (GH.ptrField 0)+data EchoBases +type instance (R.ReprFor EchoBases) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct EchoBases) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate EchoBases) where+    type AllocHint EchoBases = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc EchoBases (C.Parsed EchoBases))+instance (C.AllocateList EchoBases) where+    type ListAllocHint EchoBases = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc EchoBases (C.Parsed EchoBases))+data instance C.Parsed EchoBases+    = EchoBases +        {bases :: (RP.Parsed (R.List EchoBase))}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed EchoBases))+deriving instance (Std_.Eq (C.Parsed EchoBases))+instance (C.Parse EchoBases (C.Parsed EchoBases)) where+    parse raw_ = (EchoBases <$> (GH.parseField #bases raw_))+instance (C.Marshal EchoBases (C.Parsed EchoBases)) where+    marshalInto raw_ EchoBases{..} = (do+        (GH.encodeField #bases bases raw_)+        (Std_.pure ())+        )+instance (GH.HasField "bases" GH.Slot EchoBases (R.List EchoBase)) where+    fieldByLabel  = (GH.ptrField 0)+data StackingRoot +type instance (R.ReprFor StackingRoot) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct StackingRoot) where+    numStructWords  = 0+    numStructPtrs  = 2+instance (C.Allocate StackingRoot) where+    type AllocHint StackingRoot = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc StackingRoot (C.Parsed StackingRoot))+instance (C.AllocateList StackingRoot) where+    type ListAllocHint StackingRoot = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc StackingRoot (C.Parsed StackingRoot))+data instance C.Parsed StackingRoot+    = StackingRoot +        {aWithDefault :: (RP.Parsed StackingA)+        ,a :: (RP.Parsed StackingA)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed StackingRoot))+deriving instance (Std_.Eq (C.Parsed StackingRoot))+instance (C.Parse StackingRoot (C.Parsed StackingRoot)) where+    parse raw_ = (StackingRoot <$> (GH.parseField #aWithDefault raw_)+                               <*> (GH.parseField #a raw_))+instance (C.Marshal StackingRoot (C.Parsed StackingRoot)) where+    marshalInto raw_ StackingRoot{..} = (do+        (GH.encodeField #aWithDefault aWithDefault raw_)+        (GH.encodeField #a a raw_)+        (Std_.pure ())+        )+instance (GH.HasField "aWithDefault" GH.Slot StackingRoot StackingA) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "a" GH.Slot StackingRoot StackingA) where+    fieldByLabel  = (GH.ptrField 1)+data StackingA +type instance (R.ReprFor StackingA) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct StackingA) where+    numStructWords  = 1+    numStructPtrs  = 1+instance (C.Allocate StackingA) where+    type AllocHint StackingA = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc StackingA (C.Parsed StackingA))+instance (C.AllocateList StackingA) where+    type ListAllocHint StackingA = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc StackingA (C.Parsed StackingA))+data instance C.Parsed StackingA+    = StackingA +        {num :: (RP.Parsed Std_.Int32)+        ,b :: (RP.Parsed StackingB)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed StackingA))+deriving instance (Std_.Eq (C.Parsed StackingA))+instance (C.Parse StackingA (C.Parsed StackingA)) where+    parse raw_ = (StackingA <$> (GH.parseField #num raw_)+                            <*> (GH.parseField #b raw_))+instance (C.Marshal StackingA (C.Parsed StackingA)) where+    marshalInto raw_ StackingA{..} = (do+        (GH.encodeField #num num raw_)+        (GH.encodeField #b b raw_)+        (Std_.pure ())+        )+instance (GH.HasField "num" GH.Slot StackingA Std_.Int32) where+    fieldByLabel  = (GH.dataField 0 0 32 0)+instance (GH.HasField "b" GH.Slot StackingA StackingB) where+    fieldByLabel  = (GH.ptrField 0)+data StackingB +type instance (R.ReprFor StackingB) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct StackingB) where+    numStructWords  = 1+    numStructPtrs  = 0+instance (C.Allocate StackingB) where+    type AllocHint StackingB = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc StackingB (C.Parsed StackingB))+instance (C.AllocateList StackingB) where+    type ListAllocHint StackingB = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc StackingB (C.Parsed StackingB))+data instance C.Parsed StackingB+    = StackingB +        {num :: (RP.Parsed Std_.Int32)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed StackingB))+deriving instance (Std_.Eq (C.Parsed StackingB))+instance (C.Parse StackingB (C.Parsed StackingB)) where+    parse raw_ = (StackingB <$> (GH.parseField #num raw_))+instance (C.Marshal StackingB (C.Parsed StackingB)) where+    marshalInto raw_ StackingB{..} = (do+        (GH.encodeField #num num raw_)+        (Std_.pure ())+        )+instance (GH.HasField "num" GH.Slot StackingB Std_.Int32) where+    fieldByLabel  = (GH.dataField 0 0 32 0)+data CallSequence +type instance (R.ReprFor CallSequence) = (R.Ptr (Std_.Just R.Cap))+instance (C.Parse CallSequence (GH.Client CallSequence)) where+    parse  = GH.parseCap+    encode  = GH.encodeCap+instance (GH.HasMethod "getNumber" CallSequence CallSequence'getNumber'params CallSequence'getNumber'results) where+    methodByLabel  = (GH.Method 12371070827563042848 0)+data CallSequence'getNumber'params +type instance (R.ReprFor CallSequence'getNumber'params) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct CallSequence'getNumber'params) where+    numStructWords  = 0+    numStructPtrs  = 0+instance (C.Allocate CallSequence'getNumber'params) where+    type AllocHint CallSequence'getNumber'params = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc CallSequence'getNumber'params (C.Parsed CallSequence'getNumber'params))+instance (C.AllocateList CallSequence'getNumber'params) where+    type ListAllocHint CallSequence'getNumber'params = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc CallSequence'getNumber'params (C.Parsed CallSequence'getNumber'params))+data instance C.Parsed CallSequence'getNumber'params+    = CallSequence'getNumber'params +        {}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed CallSequence'getNumber'params))+deriving instance (Std_.Eq (C.Parsed CallSequence'getNumber'params))+instance (C.Parse CallSequence'getNumber'params (C.Parsed CallSequence'getNumber'params)) where+    parse raw_ = (Std_.pure CallSequence'getNumber'params)+instance (C.Marshal CallSequence'getNumber'params (C.Parsed CallSequence'getNumber'params)) where+    marshalInto _raw (CallSequence'getNumber'params) = (Std_.pure ())+data CallSequence'getNumber'results +type instance (R.ReprFor CallSequence'getNumber'results) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct CallSequence'getNumber'results) where+    numStructWords  = 1+    numStructPtrs  = 0+instance (C.Allocate CallSequence'getNumber'results) where+    type AllocHint CallSequence'getNumber'results = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc CallSequence'getNumber'results (C.Parsed CallSequence'getNumber'results))+instance (C.AllocateList CallSequence'getNumber'results) where+    type ListAllocHint CallSequence'getNumber'results = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc CallSequence'getNumber'results (C.Parsed CallSequence'getNumber'results))+data instance C.Parsed CallSequence'getNumber'results+    = CallSequence'getNumber'results +        {n :: (RP.Parsed Std_.Word32)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed CallSequence'getNumber'results))+deriving instance (Std_.Eq (C.Parsed CallSequence'getNumber'results))+instance (C.Parse CallSequence'getNumber'results (C.Parsed CallSequence'getNumber'results)) where+    parse raw_ = (CallSequence'getNumber'results <$> (GH.parseField #n raw_))+instance (C.Marshal CallSequence'getNumber'results (C.Parsed CallSequence'getNumber'results)) where+    marshalInto raw_ CallSequence'getNumber'results{..} = (do+        (GH.encodeField #n n raw_)+        (Std_.pure ())+        )+instance (GH.HasField "n" GH.Slot CallSequence'getNumber'results Std_.Word32) where+    fieldByLabel  = (GH.dataField 0 0 32 0)+data CounterFactory +type instance (R.ReprFor CounterFactory) = (R.Ptr (Std_.Just R.Cap))+instance (C.Parse CounterFactory (GH.Client CounterFactory)) where+    parse  = GH.parseCap+    encode  = GH.encodeCap+instance (GH.HasMethod "newCounter" CounterFactory CounterFactory'newCounter'params CounterFactory'newCounter'results) where+    methodByLabel  = (GH.Method 15610220054254702620 0)+data CounterFactory'newCounter'params +type instance (R.ReprFor CounterFactory'newCounter'params) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct CounterFactory'newCounter'params) where+    numStructWords  = 1+    numStructPtrs  = 0+instance (C.Allocate CounterFactory'newCounter'params) where+    type AllocHint CounterFactory'newCounter'params = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc CounterFactory'newCounter'params (C.Parsed CounterFactory'newCounter'params))+instance (C.AllocateList CounterFactory'newCounter'params) where+    type ListAllocHint CounterFactory'newCounter'params = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc CounterFactory'newCounter'params (C.Parsed CounterFactory'newCounter'params))+data instance C.Parsed CounterFactory'newCounter'params+    = CounterFactory'newCounter'params +        {start :: (RP.Parsed Std_.Word32)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed CounterFactory'newCounter'params))+deriving instance (Std_.Eq (C.Parsed CounterFactory'newCounter'params))+instance (C.Parse CounterFactory'newCounter'params (C.Parsed CounterFactory'newCounter'params)) where+    parse raw_ = (CounterFactory'newCounter'params <$> (GH.parseField #start raw_))+instance (C.Marshal CounterFactory'newCounter'params (C.Parsed CounterFactory'newCounter'params)) where+    marshalInto raw_ CounterFactory'newCounter'params{..} = (do+        (GH.encodeField #start start raw_)+        (Std_.pure ())+        )+instance (GH.HasField "start" GH.Slot CounterFactory'newCounter'params Std_.Word32) where+    fieldByLabel  = (GH.dataField 0 0 32 0)+data CounterFactory'newCounter'results +type instance (R.ReprFor CounterFactory'newCounter'results) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct CounterFactory'newCounter'results) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate CounterFactory'newCounter'results) where+    type AllocHint CounterFactory'newCounter'results = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc CounterFactory'newCounter'results (C.Parsed CounterFactory'newCounter'results))+instance (C.AllocateList CounterFactory'newCounter'results) where+    type ListAllocHint CounterFactory'newCounter'results = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc CounterFactory'newCounter'results (C.Parsed CounterFactory'newCounter'results))+data instance C.Parsed CounterFactory'newCounter'results+    = CounterFactory'newCounter'results +        {counter :: (RP.Parsed CallSequence)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed CounterFactory'newCounter'results))+deriving instance (Std_.Eq (C.Parsed CounterFactory'newCounter'results))+instance (C.Parse CounterFactory'newCounter'results (C.Parsed CounterFactory'newCounter'results)) where+    parse raw_ = (CounterFactory'newCounter'results <$> (GH.parseField #counter raw_))+instance (C.Marshal CounterFactory'newCounter'results (C.Parsed CounterFactory'newCounter'results)) where+    marshalInto raw_ CounterFactory'newCounter'results{..} = (do+        (GH.encodeField #counter counter raw_)+        (Std_.pure ())+        )+instance (GH.HasField "counter" GH.Slot CounterFactory'newCounter'results CallSequence) where+    fieldByLabel  = (GH.ptrField 0)+data CounterAcceptor +type instance (R.ReprFor CounterAcceptor) = (R.Ptr (Std_.Just R.Cap))+instance (C.Parse CounterAcceptor (GH.Client CounterAcceptor)) where+    parse  = GH.parseCap+    encode  = GH.encodeCap+instance (GH.HasMethod "accept" CounterAcceptor CounterAcceptor'accept'params CounterAcceptor'accept'results) where+    methodByLabel  = (GH.Method 14317498215560924065 0)+data CounterAcceptor'accept'params +type instance (R.ReprFor CounterAcceptor'accept'params) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct CounterAcceptor'accept'params) where+    numStructWords  = 0+    numStructPtrs  = 1+instance (C.Allocate CounterAcceptor'accept'params) where+    type AllocHint CounterAcceptor'accept'params = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc CounterAcceptor'accept'params (C.Parsed CounterAcceptor'accept'params))+instance (C.AllocateList CounterAcceptor'accept'params) where+    type ListAllocHint CounterAcceptor'accept'params = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc CounterAcceptor'accept'params (C.Parsed CounterAcceptor'accept'params))+data instance C.Parsed CounterAcceptor'accept'params+    = CounterAcceptor'accept'params +        {counter :: (RP.Parsed CallSequence)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed CounterAcceptor'accept'params))+deriving instance (Std_.Eq (C.Parsed CounterAcceptor'accept'params))+instance (C.Parse CounterAcceptor'accept'params (C.Parsed CounterAcceptor'accept'params)) where+    parse raw_ = (CounterAcceptor'accept'params <$> (GH.parseField #counter raw_))+instance (C.Marshal CounterAcceptor'accept'params (C.Parsed CounterAcceptor'accept'params)) where+    marshalInto raw_ CounterAcceptor'accept'params{..} = (do+        (GH.encodeField #counter counter raw_)+        (Std_.pure ())+        )+instance (GH.HasField "counter" GH.Slot CounterAcceptor'accept'params CallSequence) where+    fieldByLabel  = (GH.ptrField 0)+data CounterAcceptor'accept'results +type instance (R.ReprFor CounterAcceptor'accept'results) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct CounterAcceptor'accept'results) where+    numStructWords  = 0+    numStructPtrs  = 0+instance (C.Allocate CounterAcceptor'accept'results) where+    type AllocHint CounterAcceptor'accept'results = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc CounterAcceptor'accept'results (C.Parsed CounterAcceptor'accept'results))+instance (C.AllocateList CounterAcceptor'accept'results) where+    type ListAllocHint CounterAcceptor'accept'results = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc CounterAcceptor'accept'results (C.Parsed CounterAcceptor'accept'results))+data instance C.Parsed CounterAcceptor'accept'results+    = CounterAcceptor'accept'results +        {}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed CounterAcceptor'accept'results))+deriving instance (Std_.Eq (C.Parsed CounterAcceptor'accept'results))+instance (C.Parse CounterAcceptor'accept'results (C.Parsed CounterAcceptor'accept'results)) where+    parse raw_ = (Std_.pure CounterAcceptor'accept'results)+instance (C.Marshal CounterAcceptor'accept'results (C.Parsed CounterAcceptor'accept'results)) where+    marshalInto _raw (CounterAcceptor'accept'results) = (Std_.pure ())+data Top +type instance (R.ReprFor Top) = (R.Ptr (Std_.Just R.Cap))+instance (C.Parse Top (GH.Client Top)) where+    parse  = GH.parseCap+    encode  = GH.encodeCap+instance (GH.HasMethod "top" Top Top'top'params Top'top'results) where+    methodByLabel  = (GH.Method 17861645508359101525 0)+data Top'top'params +type instance (R.ReprFor Top'top'params) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Top'top'params) where+    numStructWords  = 0+    numStructPtrs  = 0+instance (C.Allocate Top'top'params) where+    type AllocHint Top'top'params = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Top'top'params (C.Parsed Top'top'params))+instance (C.AllocateList Top'top'params) where+    type ListAllocHint Top'top'params = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Top'top'params (C.Parsed Top'top'params))+data instance C.Parsed Top'top'params+    = Top'top'params +        {}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Top'top'params))+deriving instance (Std_.Eq (C.Parsed Top'top'params))+instance (C.Parse Top'top'params (C.Parsed Top'top'params)) where+    parse raw_ = (Std_.pure Top'top'params)+instance (C.Marshal Top'top'params (C.Parsed Top'top'params)) where+    marshalInto _raw (Top'top'params) = (Std_.pure ())+data Top'top'results +type instance (R.ReprFor Top'top'results) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Top'top'results) where+    numStructWords  = 0+    numStructPtrs  = 0+instance (C.Allocate Top'top'results) where+    type AllocHint Top'top'results = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Top'top'results (C.Parsed Top'top'results))+instance (C.AllocateList Top'top'results) where+    type ListAllocHint Top'top'results = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Top'top'results (C.Parsed Top'top'results))+data instance C.Parsed Top'top'results+    = Top'top'results +        {}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Top'top'results))+deriving instance (Std_.Eq (C.Parsed Top'top'results))+instance (C.Parse Top'top'results (C.Parsed Top'top'results)) where+    parse raw_ = (Std_.pure Top'top'results)+instance (C.Marshal Top'top'results (C.Parsed Top'top'results)) where+    marshalInto _raw (Top'top'results) = (Std_.pure ())+data Left +type instance (R.ReprFor Left) = (R.Ptr (Std_.Just R.Cap))+instance (C.Parse Left (GH.Client Left)) where+    parse  = GH.parseCap+    encode  = GH.encodeCap+instance (GH.HasMethod "left" Left Left'left'params Left'left'results) where+    methodByLabel  = (GH.Method 17679152961798450446 0)+data Left'left'params +type instance (R.ReprFor Left'left'params) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Left'left'params) where+    numStructWords  = 0+    numStructPtrs  = 0+instance (C.Allocate Left'left'params) where+    type AllocHint Left'left'params = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Left'left'params (C.Parsed Left'left'params))+instance (C.AllocateList Left'left'params) where+    type ListAllocHint Left'left'params = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Left'left'params (C.Parsed Left'left'params))+data instance C.Parsed Left'left'params+    = Left'left'params +        {}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Left'left'params))+deriving instance (Std_.Eq (C.Parsed Left'left'params))+instance (C.Parse Left'left'params (C.Parsed Left'left'params)) where+    parse raw_ = (Std_.pure Left'left'params)+instance (C.Marshal Left'left'params (C.Parsed Left'left'params)) where+    marshalInto _raw (Left'left'params) = (Std_.pure ())+data Left'left'results +type instance (R.ReprFor Left'left'results) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Left'left'results) where+    numStructWords  = 0+    numStructPtrs  = 0+instance (C.Allocate Left'left'results) where+    type AllocHint Left'left'results = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Left'left'results (C.Parsed Left'left'results))+instance (C.AllocateList Left'left'results) where+    type ListAllocHint Left'left'results = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Left'left'results (C.Parsed Left'left'results))+data instance C.Parsed Left'left'results+    = Left'left'results +        {}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Left'left'results))+deriving instance (Std_.Eq (C.Parsed Left'left'results))+instance (C.Parse Left'left'results (C.Parsed Left'left'results)) where+    parse raw_ = (Std_.pure Left'left'results)+instance (C.Marshal Left'left'results (C.Parsed Left'left'results)) where+    marshalInto _raw (Left'left'results) = (Std_.pure ())+data Right +type instance (R.ReprFor Right) = (R.Ptr (Std_.Just R.Cap))+instance (C.Parse Right (GH.Client Right)) where+    parse  = GH.parseCap+    encode  = GH.encodeCap+instance (GH.HasMethod "right" Right Right'right'params Right'right'results) where+    methodByLabel  = (GH.Method 14712639595305348988 0)+data Right'right'params +type instance (R.ReprFor Right'right'params) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Right'right'params) where+    numStructWords  = 0+    numStructPtrs  = 0+instance (C.Allocate Right'right'params) where+    type AllocHint Right'right'params = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Right'right'params (C.Parsed Right'right'params))+instance (C.AllocateList Right'right'params) where+    type ListAllocHint Right'right'params = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Right'right'params (C.Parsed Right'right'params))+data instance C.Parsed Right'right'params+    = Right'right'params +        {}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Right'right'params))+deriving instance (Std_.Eq (C.Parsed Right'right'params))+instance (C.Parse Right'right'params (C.Parsed Right'right'params)) where+    parse raw_ = (Std_.pure Right'right'params)+instance (C.Marshal Right'right'params (C.Parsed Right'right'params)) where+    marshalInto _raw (Right'right'params) = (Std_.pure ())+data Right'right'results +type instance (R.ReprFor Right'right'results) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Right'right'results) where+    numStructWords  = 0+    numStructPtrs  = 0+instance (C.Allocate Right'right'results) where+    type AllocHint Right'right'results = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Right'right'results (C.Parsed Right'right'results))+instance (C.AllocateList Right'right'results) where+    type ListAllocHint Right'right'results = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Right'right'results (C.Parsed Right'right'results))+data instance C.Parsed Right'right'results+    = Right'right'results +        {}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Right'right'results))+deriving instance (Std_.Eq (C.Parsed Right'right'results))+instance (C.Parse Right'right'results (C.Parsed Right'right'results)) where+    parse raw_ = (Std_.pure Right'right'results)+instance (C.Marshal Right'right'results (C.Parsed Right'right'results)) where+    marshalInto _raw (Right'right'results) = (Std_.pure ())+data Bottom +type instance (R.ReprFor Bottom) = (R.Ptr (Std_.Just R.Cap))+instance (C.Parse Bottom (GH.Client Bottom)) where+    parse  = GH.parseCap+    encode  = GH.encodeCap+instance (GH.HasMethod "bottom" Bottom Bottom'bottom'params Bottom'bottom'results) where+    methodByLabel  = (GH.Method 18402872613340521775 0)+data Bottom'bottom'params +type instance (R.ReprFor Bottom'bottom'params) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Bottom'bottom'params) where+    numStructWords  = 0+    numStructPtrs  = 0+instance (C.Allocate Bottom'bottom'params) where+    type AllocHint Bottom'bottom'params = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Bottom'bottom'params (C.Parsed Bottom'bottom'params))+instance (C.AllocateList Bottom'bottom'params) where+    type ListAllocHint Bottom'bottom'params = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Bottom'bottom'params (C.Parsed Bottom'bottom'params))+data instance C.Parsed Bottom'bottom'params+    = Bottom'bottom'params +        {}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Bottom'bottom'params))+deriving instance (Std_.Eq (C.Parsed Bottom'bottom'params))+instance (C.Parse Bottom'bottom'params (C.Parsed Bottom'bottom'params)) where+    parse raw_ = (Std_.pure Bottom'bottom'params)+instance (C.Marshal Bottom'bottom'params (C.Parsed Bottom'bottom'params)) where+    marshalInto _raw (Bottom'bottom'params) = (Std_.pure ())+data Bottom'bottom'results +type instance (R.ReprFor Bottom'bottom'results) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Bottom'bottom'results) where+    numStructWords  = 0+    numStructPtrs  = 0+instance (C.Allocate Bottom'bottom'results) where+    type AllocHint Bottom'bottom'results = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Bottom'bottom'results (C.Parsed Bottom'bottom'results))+instance (C.AllocateList Bottom'bottom'results) where+    type ListAllocHint Bottom'bottom'results = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Bottom'bottom'results (C.Parsed Bottom'bottom'results))+data instance C.Parsed Bottom'bottom'results+    = Bottom'bottom'results +        {}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Bottom'bottom'results))+deriving instance (Std_.Eq (C.Parsed Bottom'bottom'results))+instance (C.Parse Bottom'bottom'results (C.Parsed Bottom'bottom'results)) where+    parse raw_ = (Std_.pure Bottom'bottom'results)+instance (C.Marshal Bottom'bottom'results (C.Parsed Bottom'bottom'results)) where+    marshalInto _raw (Bottom'bottom'results) = (Std_.pure ())+data Defaults +type instance (R.ReprFor Defaults) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct Defaults) where+    numStructWords  = 2+    numStructPtrs  = 2+instance (C.Allocate Defaults) where+    type AllocHint Defaults = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc Defaults (C.Parsed Defaults))+instance (C.AllocateList Defaults) where+    type ListAllocHint Defaults = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc Defaults (C.Parsed Defaults))+data instance C.Parsed Defaults+    = Defaults +        {text :: (RP.Parsed Basics.Text)+        ,data_ :: (RP.Parsed Basics.Data)+        ,float :: (RP.Parsed Std_.Float)+        ,int :: (RP.Parsed Std_.Int32)+        ,uint :: (RP.Parsed Std_.Word32)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed Defaults))+deriving instance (Std_.Eq (C.Parsed Defaults))+instance (C.Parse Defaults (C.Parsed Defaults)) where+    parse raw_ = (Defaults <$> (GH.parseField #text raw_)+                           <*> (GH.parseField #data_ raw_)+                           <*> (GH.parseField #float raw_)+                           <*> (GH.parseField #int raw_)+                           <*> (GH.parseField #uint raw_))+instance (C.Marshal Defaults (C.Parsed Defaults)) where+    marshalInto raw_ Defaults{..} = (do+        (GH.encodeField #text text raw_)+        (GH.encodeField #data_ data_ raw_)+        (GH.encodeField #float float raw_)+        (GH.encodeField #int int raw_)+        (GH.encodeField #uint uint raw_)+        (Std_.pure ())+        )+instance (GH.HasField "text" GH.Slot Defaults Basics.Text) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "data_" GH.Slot Defaults Basics.Data) where+    fieldByLabel  = (GH.ptrField 1)+instance (GH.HasField "float" GH.Slot Defaults Std_.Float) where+    fieldByLabel  = (GH.dataField 0 0 32 1078523331)+instance (GH.HasField "int" GH.Slot Defaults Std_.Int32) where+    fieldByLabel  = (GH.dataField 32 0 32 18446744073709551493)+instance (GH.HasField "uint" GH.Slot Defaults Std_.Word32) where+    fieldByLabel  = (GH.dataField 0 1 32 42)+data BenchmarkA +type instance (R.ReprFor BenchmarkA) = (R.Ptr (Std_.Just R.Struct))+instance (C.TypedStruct BenchmarkA) where+    numStructWords  = 3+    numStructPtrs  = 2+instance (C.Allocate BenchmarkA) where+    type AllocHint BenchmarkA = ()+    new _ = C.newTypedStruct+instance (C.EstimateAlloc BenchmarkA (C.Parsed BenchmarkA))+instance (C.AllocateList BenchmarkA) where+    type ListAllocHint BenchmarkA = Std_.Int+    newList  = C.newTypedStructList+instance (C.EstimateListAlloc BenchmarkA (C.Parsed BenchmarkA))+data instance C.Parsed BenchmarkA+    = BenchmarkA +        {name :: (RP.Parsed Basics.Text)+        ,birthDay :: (RP.Parsed Std_.Int64)+        ,phone :: (RP.Parsed Basics.Text)+        ,siblings :: (RP.Parsed Std_.Int32)+        ,spouse :: (RP.Parsed Std_.Bool)+        ,money :: (RP.Parsed Std_.Double)}+    deriving(Generics.Generic)+deriving instance (Std_.Show (C.Parsed BenchmarkA))+deriving instance (Std_.Eq (C.Parsed BenchmarkA))+instance (C.Parse BenchmarkA (C.Parsed BenchmarkA)) where+    parse raw_ = (BenchmarkA <$> (GH.parseField #name raw_)+                             <*> (GH.parseField #birthDay raw_)+                             <*> (GH.parseField #phone raw_)+                             <*> (GH.parseField #siblings raw_)+                             <*> (GH.parseField #spouse raw_)+                             <*> (GH.parseField #money raw_))+instance (C.Marshal BenchmarkA (C.Parsed BenchmarkA)) where+    marshalInto raw_ BenchmarkA{..} = (do+        (GH.encodeField #name name raw_)+        (GH.encodeField #birthDay birthDay raw_)+        (GH.encodeField #phone phone raw_)+        (GH.encodeField #siblings siblings raw_)+        (GH.encodeField #spouse spouse raw_)+        (GH.encodeField #money money raw_)+        (Std_.pure ())+        )+instance (GH.HasField "name" GH.Slot BenchmarkA Basics.Text) where+    fieldByLabel  = (GH.ptrField 0)+instance (GH.HasField "birthDay" GH.Slot BenchmarkA Std_.Int64) where+    fieldByLabel  = (GH.dataField 0 0 64 0)+instance (GH.HasField "phone" GH.Slot BenchmarkA Basics.Text) where+    fieldByLabel  = (GH.ptrField 1)+instance (GH.HasField "siblings" GH.Slot BenchmarkA Std_.Int32) where+    fieldByLabel  = (GH.dataField 0 1 32 0)+instance (GH.HasField "spouse" GH.Slot BenchmarkA Std_.Bool) where+    fieldByLabel  = (GH.dataField 32 1 1 0)+instance (GH.HasField "money" GH.Slot BenchmarkA Std_.Double) where+    fieldByLabel  = (GH.dataField 0 2 64 0)
gen/tests/Capnp/Gen/Aircraft/Pure.hs view
@@ -137,2826 +137,2826 @@     deriving(Std_.Show             ,Std_.Eq             ,Generics.Generic)-instance (Default.Default (Zdate)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Zdate)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Zdate)) where-    type Cerial msg (Zdate) = (Capnp.Gen.ById.X832bcc6686a26d56.Zdate msg)-    decerialize raw = (Zdate <$> (Capnp.Gen.ById.X832bcc6686a26d56.get_Zdate'year raw)-                             <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_Zdate'month raw)-                             <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_Zdate'day raw))-instance (Classes.Marshal s (Zdate)) where-    marshalInto raw_ value_ = case value_ of-        Zdate{..} ->-            (do-                (Capnp.Gen.ById.X832bcc6686a26d56.set_Zdate'year raw_ year)-                (Capnp.Gen.ById.X832bcc6686a26d56.set_Zdate'month raw_ month)-                (Capnp.Gen.ById.X832bcc6686a26d56.set_Zdate'day raw_ day)-                (Std_.pure ())-                )-instance (Classes.Cerialize s (Zdate))-instance (Classes.Cerialize s (V.Vector (Zdate))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Zdate)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Zdate))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Zdate)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Zdate))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Zdate)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Zdate))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data Zdata -    = Zdata -        {data_ :: BS.ByteString}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (Zdata)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Zdata)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Zdata)) where-    type Cerial msg (Zdata) = (Capnp.Gen.ById.X832bcc6686a26d56.Zdata msg)-    decerialize raw = (Zdata <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Zdata'data_ raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Zdata)) where-    marshalInto raw_ value_ = case value_ of-        Zdata{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) data_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Zdata'data_ raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (Zdata))-instance (Classes.Cerialize s (V.Vector (Zdata))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Zdata)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Zdata))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Zdata)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Zdata))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Zdata)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Zdata))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data PlaneBase -    = PlaneBase -        {name :: T.Text-        ,homes :: (V.Vector Capnp.Gen.ById.X832bcc6686a26d56.Airport)-        ,rating :: Std_.Int64-        ,canFly :: Std_.Bool-        ,capacity :: Std_.Int64-        ,maxSpeed :: Std_.Double}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (PlaneBase)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (PlaneBase)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (PlaneBase)) where-    type Cerial msg (PlaneBase) = (Capnp.Gen.ById.X832bcc6686a26d56.PlaneBase msg)-    decerialize raw = (PlaneBase <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_PlaneBase'name raw) >>= Classes.decerialize)-                                 <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_PlaneBase'homes raw) >>= Classes.decerialize)-                                 <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_PlaneBase'rating raw)-                                 <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_PlaneBase'canFly raw)-                                 <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_PlaneBase'capacity raw)-                                 <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_PlaneBase'maxSpeed raw))-instance (Classes.Marshal s (PlaneBase)) where-    marshalInto raw_ value_ = case value_ of-        PlaneBase{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) name) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_PlaneBase'name raw_))-                ((Classes.cerialize (Untyped.message raw_) homes) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_PlaneBase'homes raw_))-                (Capnp.Gen.ById.X832bcc6686a26d56.set_PlaneBase'rating raw_ rating)-                (Capnp.Gen.ById.X832bcc6686a26d56.set_PlaneBase'canFly raw_ canFly)-                (Capnp.Gen.ById.X832bcc6686a26d56.set_PlaneBase'capacity raw_ capacity)-                (Capnp.Gen.ById.X832bcc6686a26d56.set_PlaneBase'maxSpeed raw_ maxSpeed)-                (Std_.pure ())-                )-instance (Classes.Cerialize s (PlaneBase))-instance (Classes.Cerialize s (V.Vector (PlaneBase))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (PlaneBase)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (PlaneBase))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (PlaneBase)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (PlaneBase))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (PlaneBase)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (PlaneBase))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data B737 -    = B737 -        {base :: PlaneBase}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (B737)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (B737)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (B737)) where-    type Cerial msg (B737) = (Capnp.Gen.ById.X832bcc6686a26d56.B737 msg)-    decerialize raw = (B737 <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_B737'base raw) >>= Classes.decerialize))-instance (Classes.Marshal s (B737)) where-    marshalInto raw_ value_ = case value_ of-        B737{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) base) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_B737'base raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (B737))-instance (Classes.Cerialize s (V.Vector (B737))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (B737)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (B737))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (B737)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (B737))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (B737)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (B737))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data A320 -    = A320 -        {base :: PlaneBase}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (A320)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (A320)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (A320)) where-    type Cerial msg (A320) = (Capnp.Gen.ById.X832bcc6686a26d56.A320 msg)-    decerialize raw = (A320 <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_A320'base raw) >>= Classes.decerialize))-instance (Classes.Marshal s (A320)) where-    marshalInto raw_ value_ = case value_ of-        A320{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) base) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_A320'base raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (A320))-instance (Classes.Cerialize s (V.Vector (A320))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (A320)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (A320))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (A320)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (A320))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (A320)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (A320))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data F16 -    = F16 -        {base :: PlaneBase}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (F16)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (F16)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (F16)) where-    type Cerial msg (F16) = (Capnp.Gen.ById.X832bcc6686a26d56.F16 msg)-    decerialize raw = (F16 <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_F16'base raw) >>= Classes.decerialize))-instance (Classes.Marshal s (F16)) where-    marshalInto raw_ value_ = case value_ of-        F16{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) base) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_F16'base raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (F16))-instance (Classes.Cerialize s (V.Vector (F16))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (F16)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (F16))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (F16)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (F16))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (F16)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (F16))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data Regression -    = Regression -        {base :: PlaneBase-        ,b0 :: Std_.Double-        ,beta :: (V.Vector Std_.Double)-        ,planes :: (V.Vector Aircraft)-        ,ymu :: Std_.Double-        ,ysd :: Std_.Double}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (Regression)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Regression)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Regression)) where-    type Cerial msg (Regression) = (Capnp.Gen.ById.X832bcc6686a26d56.Regression msg)-    decerialize raw = (Regression <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Regression'base raw) >>= Classes.decerialize)-                                  <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_Regression'b0 raw)-                                  <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Regression'beta raw) >>= Classes.decerialize)-                                  <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Regression'planes raw) >>= Classes.decerialize)-                                  <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_Regression'ymu raw)-                                  <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_Regression'ysd raw))-instance (Classes.Marshal s (Regression)) where-    marshalInto raw_ value_ = case value_ of-        Regression{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) base) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Regression'base raw_))-                (Capnp.Gen.ById.X832bcc6686a26d56.set_Regression'b0 raw_ b0)-                ((Classes.cerialize (Untyped.message raw_) beta) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Regression'beta raw_))-                ((Classes.cerialize (Untyped.message raw_) planes) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Regression'planes raw_))-                (Capnp.Gen.ById.X832bcc6686a26d56.set_Regression'ymu raw_ ymu)-                (Capnp.Gen.ById.X832bcc6686a26d56.set_Regression'ysd raw_ ysd)-                (Std_.pure ())-                )-instance (Classes.Cerialize s (Regression))-instance (Classes.Cerialize s (V.Vector (Regression))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Regression)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Regression))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Regression)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Regression))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Regression)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Regression))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data Aircraft -    = Aircraft'void -    | Aircraft'b737 B737-    | Aircraft'a320 A320-    | Aircraft'f16 F16-    | Aircraft'unknown' Std_.Word16-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (Aircraft)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Aircraft)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Aircraft)) where-    type Cerial msg (Aircraft) = (Capnp.Gen.ById.X832bcc6686a26d56.Aircraft msg)-    decerialize raw = (do-        raw <- (Capnp.Gen.ById.X832bcc6686a26d56.get_Aircraft' raw)-        case raw of-            (Capnp.Gen.ById.X832bcc6686a26d56.Aircraft'void) ->-                (Std_.pure Aircraft'void)-            (Capnp.Gen.ById.X832bcc6686a26d56.Aircraft'b737 raw) ->-                (Aircraft'b737 <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Aircraft'a320 raw) ->-                (Aircraft'a320 <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Aircraft'f16 raw) ->-                (Aircraft'f16 <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Aircraft'unknown' tag) ->-                (Std_.pure (Aircraft'unknown' tag))-        )-instance (Classes.Marshal s (Aircraft)) where-    marshalInto raw_ value_ = case value_ of-        (Aircraft'void) ->-            (Capnp.Gen.ById.X832bcc6686a26d56.set_Aircraft'void raw_)-        (Aircraft'b737 arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Aircraft'b737 raw_))-        (Aircraft'a320 arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Aircraft'a320 raw_))-        (Aircraft'f16 arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Aircraft'f16 raw_))-        (Aircraft'unknown' tag) ->-            (Capnp.Gen.ById.X832bcc6686a26d56.set_Aircraft'unknown' raw_ tag)-instance (Classes.Cerialize s (Aircraft))-instance (Classes.Cerialize s (V.Vector (Aircraft))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Aircraft)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Aircraft))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Aircraft)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Aircraft))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Aircraft)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Aircraft))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data Z -    = Z'void -    | Z'zz Z-    | Z'f64 Std_.Double-    | Z'f32 Std_.Float-    | Z'i64 Std_.Int64-    | Z'i32 Std_.Int32-    | Z'i16 Std_.Int16-    | Z'i8 Std_.Int8-    | Z'u64 Std_.Word64-    | Z'u32 Std_.Word32-    | Z'u16 Std_.Word16-    | Z'u8 Std_.Word8-    | Z'bool Std_.Bool-    | Z'text T.Text-    | Z'blob BS.ByteString-    | Z'f64vec (V.Vector Std_.Double)-    | Z'f32vec (V.Vector Std_.Float)-    | Z'i64vec (V.Vector Std_.Int64)-    | Z'i32vec (V.Vector Std_.Int32)-    | Z'i16vec (V.Vector Std_.Int16)-    | Z'i8vec (V.Vector Std_.Int8)-    | Z'u64vec (V.Vector Std_.Word64)-    | Z'u32vec (V.Vector Std_.Word32)-    | Z'u16vec (V.Vector Std_.Word16)-    | Z'u8vec (V.Vector Std_.Word8)-    | Z'zvec (V.Vector Z)-    | Z'zvecvec (V.Vector (V.Vector Z))-    | Z'zdate Zdate-    | Z'zdata Zdata-    | Z'aircraftvec (V.Vector Aircraft)-    | Z'aircraft Aircraft-    | Z'regression Regression-    | Z'planebase PlaneBase-    | Z'airport Capnp.Gen.ById.X832bcc6686a26d56.Airport-    | Z'b737 B737-    | Z'a320 A320-    | Z'f16 F16-    | Z'zdatevec (V.Vector Zdate)-    | Z'zdatavec (V.Vector Zdata)-    | Z'boolvec (V.Vector Std_.Bool)-    | Z'datavec (V.Vector BS.ByteString)-    | Z'textvec (V.Vector T.Text)-    | Z'grp Z'grp-    | Z'echo Echo-    | Z'echoBases EchoBases-    | Z'unknown' Std_.Word16-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (Z)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Z)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Z)) where-    type Cerial msg (Z) = (Capnp.Gen.ById.X832bcc6686a26d56.Z msg)-    decerialize raw = (do-        raw <- (Capnp.Gen.ById.X832bcc6686a26d56.get_Z' raw)-        case raw of-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'void) ->-                (Std_.pure Z'void)-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'zz raw) ->-                (Z'zz <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'f64 raw) ->-                (Std_.pure (Z'f64 raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'f32 raw) ->-                (Std_.pure (Z'f32 raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'i64 raw) ->-                (Std_.pure (Z'i64 raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'i32 raw) ->-                (Std_.pure (Z'i32 raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'i16 raw) ->-                (Std_.pure (Z'i16 raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'i8 raw) ->-                (Std_.pure (Z'i8 raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'u64 raw) ->-                (Std_.pure (Z'u64 raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'u32 raw) ->-                (Std_.pure (Z'u32 raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'u16 raw) ->-                (Std_.pure (Z'u16 raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'u8 raw) ->-                (Std_.pure (Z'u8 raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'bool raw) ->-                (Std_.pure (Z'bool raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'text raw) ->-                (Z'text <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'blob raw) ->-                (Z'blob <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'f64vec raw) ->-                (Z'f64vec <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'f32vec raw) ->-                (Z'f32vec <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'i64vec raw) ->-                (Z'i64vec <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'i32vec raw) ->-                (Z'i32vec <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'i16vec raw) ->-                (Z'i16vec <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'i8vec raw) ->-                (Z'i8vec <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'u64vec raw) ->-                (Z'u64vec <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'u32vec raw) ->-                (Z'u32vec <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'u16vec raw) ->-                (Z'u16vec <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'u8vec raw) ->-                (Z'u8vec <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'zvec raw) ->-                (Z'zvec <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'zvecvec raw) ->-                (Z'zvecvec <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'zdate raw) ->-                (Z'zdate <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'zdata raw) ->-                (Z'zdata <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'aircraftvec raw) ->-                (Z'aircraftvec <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'aircraft raw) ->-                (Z'aircraft <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'regression raw) ->-                (Z'regression <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'planebase raw) ->-                (Z'planebase <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'airport raw) ->-                (Std_.pure (Z'airport raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'b737 raw) ->-                (Z'b737 <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'a320 raw) ->-                (Z'a320 <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'f16 raw) ->-                (Z'f16 <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'zdatevec raw) ->-                (Z'zdatevec <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'zdatavec raw) ->-                (Z'zdatavec <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'boolvec raw) ->-                (Z'boolvec <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'datavec raw) ->-                (Z'datavec <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'textvec raw) ->-                (Z'textvec <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'grp raw) ->-                (Z'grp <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'echo raw) ->-                (Z'echo <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'echoBases raw) ->-                (Z'echoBases <$> (Classes.decerialize raw))-            (Capnp.Gen.ById.X832bcc6686a26d56.Z'unknown' tag) ->-                (Std_.pure (Z'unknown' tag))-        )-instance (Classes.Marshal s (Z)) where-    marshalInto raw_ value_ = case value_ of-        (Z'void) ->-            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'void raw_)-        (Z'zz arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'zz raw_))-        (Z'f64 arg_) ->-            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'f64 raw_ arg_)-        (Z'f32 arg_) ->-            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'f32 raw_ arg_)-        (Z'i64 arg_) ->-            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'i64 raw_ arg_)-        (Z'i32 arg_) ->-            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'i32 raw_ arg_)-        (Z'i16 arg_) ->-            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'i16 raw_ arg_)-        (Z'i8 arg_) ->-            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'i8 raw_ arg_)-        (Z'u64 arg_) ->-            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'u64 raw_ arg_)-        (Z'u32 arg_) ->-            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'u32 raw_ arg_)-        (Z'u16 arg_) ->-            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'u16 raw_ arg_)-        (Z'u8 arg_) ->-            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'u8 raw_ arg_)-        (Z'bool arg_) ->-            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'bool raw_ arg_)-        (Z'text arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'text raw_))-        (Z'blob arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'blob raw_))-        (Z'f64vec arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'f64vec raw_))-        (Z'f32vec arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'f32vec raw_))-        (Z'i64vec arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'i64vec raw_))-        (Z'i32vec arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'i32vec raw_))-        (Z'i16vec arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'i16vec raw_))-        (Z'i8vec arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'i8vec raw_))-        (Z'u64vec arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'u64vec raw_))-        (Z'u32vec arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'u32vec raw_))-        (Z'u16vec arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'u16vec raw_))-        (Z'u8vec arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'u8vec raw_))-        (Z'zvec arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'zvec raw_))-        (Z'zvecvec arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'zvecvec raw_))-        (Z'zdate arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'zdate raw_))-        (Z'zdata arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'zdata raw_))-        (Z'aircraftvec arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'aircraftvec raw_))-        (Z'aircraft arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'aircraft raw_))-        (Z'regression arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'regression raw_))-        (Z'planebase arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'planebase raw_))-        (Z'airport arg_) ->-            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'airport raw_ arg_)-        (Z'b737 arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'b737 raw_))-        (Z'a320 arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'a320 raw_))-        (Z'f16 arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'f16 raw_))-        (Z'zdatevec arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'zdatevec raw_))-        (Z'zdatavec arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'zdatavec raw_))-        (Z'boolvec arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'boolvec raw_))-        (Z'datavec arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'datavec raw_))-        (Z'textvec arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'textvec raw_))-        (Z'grp arg_) ->-            (do-                raw_ <- (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'grp raw_)-                (Classes.marshalInto raw_ arg_)-                )-        (Z'echo arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'echo raw_))-        (Z'echoBases arg_) ->-            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'echoBases raw_))-        (Z'unknown' tag) ->-            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'unknown' raw_ tag)-instance (Classes.Cerialize s (Z))-instance (Classes.Cerialize s (V.Vector (Z))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Z)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Z))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Z)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Z))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Z)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Z))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data Z'grp -    = Z'grp' -        {first :: Std_.Word64-        ,second :: Std_.Word64}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (Z'grp)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Z'grp)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Z'grp)) where-    type Cerial msg (Z'grp) = (Capnp.Gen.ById.X832bcc6686a26d56.Z'grp msg)-    decerialize raw = (Z'grp' <$> (Capnp.Gen.ById.X832bcc6686a26d56.get_Z'grp'first raw)-                              <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_Z'grp'second raw))-instance (Classes.Marshal s (Z'grp)) where-    marshalInto raw_ value_ = case value_ of-        Z'grp'{..} ->-            (do-                (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'grp'first raw_ first)-                (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'grp'second raw_ second)-                (Std_.pure ())-                )-data Counter -    = Counter -        {size :: Std_.Int64-        ,words :: T.Text-        ,wordlist :: (V.Vector T.Text)}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (Counter)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Counter)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Counter)) where-    type Cerial msg (Counter) = (Capnp.Gen.ById.X832bcc6686a26d56.Counter msg)-    decerialize raw = (Counter <$> (Capnp.Gen.ById.X832bcc6686a26d56.get_Counter'size raw)-                               <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Counter'words raw) >>= Classes.decerialize)-                               <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Counter'wordlist raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Counter)) where-    marshalInto raw_ value_ = case value_ of-        Counter{..} ->-            (do-                (Capnp.Gen.ById.X832bcc6686a26d56.set_Counter'size raw_ size)-                ((Classes.cerialize (Untyped.message raw_) words) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Counter'words raw_))-                ((Classes.cerialize (Untyped.message raw_) wordlist) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Counter'wordlist raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (Counter))-instance (Classes.Cerialize s (V.Vector (Counter))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Counter)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Counter))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Counter)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Counter))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Counter)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Counter))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data Bag -    = Bag -        {counter :: Counter}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (Bag)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Bag)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Bag)) where-    type Cerial msg (Bag) = (Capnp.Gen.ById.X832bcc6686a26d56.Bag msg)-    decerialize raw = (Bag <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Bag'counter raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Bag)) where-    marshalInto raw_ value_ = case value_ of-        Bag{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) counter) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Bag'counter raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (Bag))-instance (Classes.Cerialize s (V.Vector (Bag))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Bag)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Bag))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Bag)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Bag))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Bag)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Bag))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data Zserver -    = Zserver -        {waitingjobs :: (V.Vector Zjob)}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (Zserver)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Zserver)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Zserver)) where-    type Cerial msg (Zserver) = (Capnp.Gen.ById.X832bcc6686a26d56.Zserver msg)-    decerialize raw = (Zserver <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Zserver'waitingjobs raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Zserver)) where-    marshalInto raw_ value_ = case value_ of-        Zserver{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) waitingjobs) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Zserver'waitingjobs raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (Zserver))-instance (Classes.Cerialize s (V.Vector (Zserver))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Zserver)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Zserver))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Zserver)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Zserver))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Zserver)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Zserver))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data Zjob -    = Zjob -        {cmd :: T.Text-        ,args :: (V.Vector T.Text)}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (Zjob)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Zjob)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Zjob)) where-    type Cerial msg (Zjob) = (Capnp.Gen.ById.X832bcc6686a26d56.Zjob msg)-    decerialize raw = (Zjob <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Zjob'cmd raw) >>= Classes.decerialize)-                            <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Zjob'args raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Zjob)) where-    marshalInto raw_ value_ = case value_ of-        Zjob{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) cmd) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Zjob'cmd raw_))-                ((Classes.cerialize (Untyped.message raw_) args) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Zjob'args raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (Zjob))-instance (Classes.Cerialize s (V.Vector (Zjob))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Zjob)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Zjob))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Zjob)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Zjob))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Zjob)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Zjob))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data VerEmpty -    = VerEmpty -        {}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (VerEmpty)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (VerEmpty)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (VerEmpty)) where-    type Cerial msg (VerEmpty) = (Capnp.Gen.ById.X832bcc6686a26d56.VerEmpty msg)-    decerialize raw = (Std_.pure VerEmpty)-instance (Classes.Marshal s (VerEmpty)) where-    marshalInto raw_ value_ = case value_ of-        (VerEmpty) ->-            (do-                (Std_.pure ())-                )-instance (Classes.Cerialize s (VerEmpty))-instance (Classes.Cerialize s (V.Vector (VerEmpty))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (VerEmpty)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (VerEmpty))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (VerEmpty)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VerEmpty))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VerEmpty)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VerEmpty))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data VerOneData -    = VerOneData -        {val :: Std_.Int16}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (VerOneData)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (VerOneData)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (VerOneData)) where-    type Cerial msg (VerOneData) = (Capnp.Gen.ById.X832bcc6686a26d56.VerOneData msg)-    decerialize raw = (VerOneData <$> (Capnp.Gen.ById.X832bcc6686a26d56.get_VerOneData'val raw))-instance (Classes.Marshal s (VerOneData)) where-    marshalInto raw_ value_ = case value_ of-        VerOneData{..} ->-            (do-                (Capnp.Gen.ById.X832bcc6686a26d56.set_VerOneData'val raw_ val)-                (Std_.pure ())-                )-instance (Classes.Cerialize s (VerOneData))-instance (Classes.Cerialize s (V.Vector (VerOneData))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (VerOneData)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (VerOneData))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (VerOneData)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VerOneData))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VerOneData)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VerOneData))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data VerTwoData -    = VerTwoData -        {val :: Std_.Int16-        ,duo :: Std_.Int64}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (VerTwoData)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (VerTwoData)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (VerTwoData)) where-    type Cerial msg (VerTwoData) = (Capnp.Gen.ById.X832bcc6686a26d56.VerTwoData msg)-    decerialize raw = (VerTwoData <$> (Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoData'val raw)-                                  <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoData'duo raw))-instance (Classes.Marshal s (VerTwoData)) where-    marshalInto raw_ value_ = case value_ of-        VerTwoData{..} ->-            (do-                (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoData'val raw_ val)-                (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoData'duo raw_ duo)-                (Std_.pure ())-                )-instance (Classes.Cerialize s (VerTwoData))-instance (Classes.Cerialize s (V.Vector (VerTwoData))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (VerTwoData)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (VerTwoData))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (VerTwoData)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VerTwoData))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VerTwoData)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VerTwoData))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data VerOnePtr -    = VerOnePtr -        {ptr :: VerOneData}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (VerOnePtr)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (VerOnePtr)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (VerOnePtr)) where-    type Cerial msg (VerOnePtr) = (Capnp.Gen.ById.X832bcc6686a26d56.VerOnePtr msg)-    decerialize raw = (VerOnePtr <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_VerOnePtr'ptr raw) >>= Classes.decerialize))-instance (Classes.Marshal s (VerOnePtr)) where-    marshalInto raw_ value_ = case value_ of-        VerOnePtr{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) ptr) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_VerOnePtr'ptr raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (VerOnePtr))-instance (Classes.Cerialize s (V.Vector (VerOnePtr))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (VerOnePtr)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (VerOnePtr))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (VerOnePtr)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VerOnePtr))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VerOnePtr)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VerOnePtr))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data VerTwoPtr -    = VerTwoPtr -        {ptr1 :: VerOneData-        ,ptr2 :: VerOneData}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (VerTwoPtr)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (VerTwoPtr)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (VerTwoPtr)) where-    type Cerial msg (VerTwoPtr) = (Capnp.Gen.ById.X832bcc6686a26d56.VerTwoPtr msg)-    decerialize raw = (VerTwoPtr <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoPtr'ptr1 raw) >>= Classes.decerialize)-                                 <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoPtr'ptr2 raw) >>= Classes.decerialize))-instance (Classes.Marshal s (VerTwoPtr)) where-    marshalInto raw_ value_ = case value_ of-        VerTwoPtr{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) ptr1) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoPtr'ptr1 raw_))-                ((Classes.cerialize (Untyped.message raw_) ptr2) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoPtr'ptr2 raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (VerTwoPtr))-instance (Classes.Cerialize s (V.Vector (VerTwoPtr))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (VerTwoPtr)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (VerTwoPtr))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (VerTwoPtr)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VerTwoPtr))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VerTwoPtr)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VerTwoPtr))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data VerTwoDataTwoPtr -    = VerTwoDataTwoPtr -        {val :: Std_.Int16-        ,duo :: Std_.Int64-        ,ptr1 :: VerOneData-        ,ptr2 :: VerOneData}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (VerTwoDataTwoPtr)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (VerTwoDataTwoPtr)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (VerTwoDataTwoPtr)) where-    type Cerial msg (VerTwoDataTwoPtr) = (Capnp.Gen.ById.X832bcc6686a26d56.VerTwoDataTwoPtr msg)-    decerialize raw = (VerTwoDataTwoPtr <$> (Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoDataTwoPtr'val raw)-                                        <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoDataTwoPtr'duo raw)-                                        <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoDataTwoPtr'ptr1 raw) >>= Classes.decerialize)-                                        <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoDataTwoPtr'ptr2 raw) >>= Classes.decerialize))-instance (Classes.Marshal s (VerTwoDataTwoPtr)) where-    marshalInto raw_ value_ = case value_ of-        VerTwoDataTwoPtr{..} ->-            (do-                (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoDataTwoPtr'val raw_ val)-                (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoDataTwoPtr'duo raw_ duo)-                ((Classes.cerialize (Untyped.message raw_) ptr1) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoDataTwoPtr'ptr1 raw_))-                ((Classes.cerialize (Untyped.message raw_) ptr2) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoDataTwoPtr'ptr2 raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (VerTwoDataTwoPtr))-instance (Classes.Cerialize s (V.Vector (VerTwoDataTwoPtr))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (VerTwoDataTwoPtr)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (VerTwoDataTwoPtr))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (VerTwoDataTwoPtr)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VerTwoDataTwoPtr))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VerTwoDataTwoPtr)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VerTwoDataTwoPtr))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data HoldsVerEmptyList -    = HoldsVerEmptyList -        {mylist :: (V.Vector VerEmpty)}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (HoldsVerEmptyList)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (HoldsVerEmptyList)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (HoldsVerEmptyList)) where-    type Cerial msg (HoldsVerEmptyList) = (Capnp.Gen.ById.X832bcc6686a26d56.HoldsVerEmptyList msg)-    decerialize raw = (HoldsVerEmptyList <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_HoldsVerEmptyList'mylist raw) >>= Classes.decerialize))-instance (Classes.Marshal s (HoldsVerEmptyList)) where-    marshalInto raw_ value_ = case value_ of-        HoldsVerEmptyList{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) mylist) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_HoldsVerEmptyList'mylist raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (HoldsVerEmptyList))-instance (Classes.Cerialize s (V.Vector (HoldsVerEmptyList))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (HoldsVerEmptyList)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (HoldsVerEmptyList))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerEmptyList)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerEmptyList))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerEmptyList)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerEmptyList))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data HoldsVerOneDataList -    = HoldsVerOneDataList -        {mylist :: (V.Vector VerOneData)}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (HoldsVerOneDataList)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (HoldsVerOneDataList)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (HoldsVerOneDataList)) where-    type Cerial msg (HoldsVerOneDataList) = (Capnp.Gen.ById.X832bcc6686a26d56.HoldsVerOneDataList msg)-    decerialize raw = (HoldsVerOneDataList <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_HoldsVerOneDataList'mylist raw) >>= Classes.decerialize))-instance (Classes.Marshal s (HoldsVerOneDataList)) where-    marshalInto raw_ value_ = case value_ of-        HoldsVerOneDataList{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) mylist) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_HoldsVerOneDataList'mylist raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (HoldsVerOneDataList))-instance (Classes.Cerialize s (V.Vector (HoldsVerOneDataList))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (HoldsVerOneDataList)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (HoldsVerOneDataList))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerOneDataList)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerOneDataList))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerOneDataList)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerOneDataList))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data HoldsVerTwoDataList -    = HoldsVerTwoDataList -        {mylist :: (V.Vector VerTwoData)}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (HoldsVerTwoDataList)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (HoldsVerTwoDataList)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (HoldsVerTwoDataList)) where-    type Cerial msg (HoldsVerTwoDataList) = (Capnp.Gen.ById.X832bcc6686a26d56.HoldsVerTwoDataList msg)-    decerialize raw = (HoldsVerTwoDataList <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_HoldsVerTwoDataList'mylist raw) >>= Classes.decerialize))-instance (Classes.Marshal s (HoldsVerTwoDataList)) where-    marshalInto raw_ value_ = case value_ of-        HoldsVerTwoDataList{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) mylist) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_HoldsVerTwoDataList'mylist raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (HoldsVerTwoDataList))-instance (Classes.Cerialize s (V.Vector (HoldsVerTwoDataList))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (HoldsVerTwoDataList)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (HoldsVerTwoDataList))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerTwoDataList)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerTwoDataList))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerTwoDataList)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerTwoDataList))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data HoldsVerOnePtrList -    = HoldsVerOnePtrList -        {mylist :: (V.Vector VerOnePtr)}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (HoldsVerOnePtrList)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (HoldsVerOnePtrList)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (HoldsVerOnePtrList)) where-    type Cerial msg (HoldsVerOnePtrList) = (Capnp.Gen.ById.X832bcc6686a26d56.HoldsVerOnePtrList msg)-    decerialize raw = (HoldsVerOnePtrList <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_HoldsVerOnePtrList'mylist raw) >>= Classes.decerialize))-instance (Classes.Marshal s (HoldsVerOnePtrList)) where-    marshalInto raw_ value_ = case value_ of-        HoldsVerOnePtrList{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) mylist) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_HoldsVerOnePtrList'mylist raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (HoldsVerOnePtrList))-instance (Classes.Cerialize s (V.Vector (HoldsVerOnePtrList))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (HoldsVerOnePtrList)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (HoldsVerOnePtrList))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerOnePtrList)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerOnePtrList))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerOnePtrList)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerOnePtrList))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data HoldsVerTwoPtrList -    = HoldsVerTwoPtrList -        {mylist :: (V.Vector VerTwoPtr)}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (HoldsVerTwoPtrList)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (HoldsVerTwoPtrList)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (HoldsVerTwoPtrList)) where-    type Cerial msg (HoldsVerTwoPtrList) = (Capnp.Gen.ById.X832bcc6686a26d56.HoldsVerTwoPtrList msg)-    decerialize raw = (HoldsVerTwoPtrList <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_HoldsVerTwoPtrList'mylist raw) >>= Classes.decerialize))-instance (Classes.Marshal s (HoldsVerTwoPtrList)) where-    marshalInto raw_ value_ = case value_ of-        HoldsVerTwoPtrList{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) mylist) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_HoldsVerTwoPtrList'mylist raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (HoldsVerTwoPtrList))-instance (Classes.Cerialize s (V.Vector (HoldsVerTwoPtrList))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (HoldsVerTwoPtrList)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (HoldsVerTwoPtrList))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerTwoPtrList)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerTwoPtrList))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerTwoPtrList)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerTwoPtrList))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data HoldsVerTwoTwoList -    = HoldsVerTwoTwoList -        {mylist :: (V.Vector VerTwoDataTwoPtr)}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (HoldsVerTwoTwoList)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (HoldsVerTwoTwoList)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (HoldsVerTwoTwoList)) where-    type Cerial msg (HoldsVerTwoTwoList) = (Capnp.Gen.ById.X832bcc6686a26d56.HoldsVerTwoTwoList msg)-    decerialize raw = (HoldsVerTwoTwoList <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_HoldsVerTwoTwoList'mylist raw) >>= Classes.decerialize))-instance (Classes.Marshal s (HoldsVerTwoTwoList)) where-    marshalInto raw_ value_ = case value_ of-        HoldsVerTwoTwoList{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) mylist) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_HoldsVerTwoTwoList'mylist raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (HoldsVerTwoTwoList))-instance (Classes.Cerialize s (V.Vector (HoldsVerTwoTwoList))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (HoldsVerTwoTwoList)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (HoldsVerTwoTwoList))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerTwoTwoList)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerTwoTwoList))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerTwoTwoList)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerTwoTwoList))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data HoldsVerTwoTwoPlus -    = HoldsVerTwoTwoPlus -        {mylist :: (V.Vector VerTwoTwoPlus)}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (HoldsVerTwoTwoPlus)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (HoldsVerTwoTwoPlus)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (HoldsVerTwoTwoPlus)) where-    type Cerial msg (HoldsVerTwoTwoPlus) = (Capnp.Gen.ById.X832bcc6686a26d56.HoldsVerTwoTwoPlus msg)-    decerialize raw = (HoldsVerTwoTwoPlus <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_HoldsVerTwoTwoPlus'mylist raw) >>= Classes.decerialize))-instance (Classes.Marshal s (HoldsVerTwoTwoPlus)) where-    marshalInto raw_ value_ = case value_ of-        HoldsVerTwoTwoPlus{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) mylist) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_HoldsVerTwoTwoPlus'mylist raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (HoldsVerTwoTwoPlus))-instance (Classes.Cerialize s (V.Vector (HoldsVerTwoTwoPlus))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (HoldsVerTwoTwoPlus)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (HoldsVerTwoTwoPlus))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerTwoTwoPlus)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerTwoTwoPlus))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerTwoTwoPlus)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (HoldsVerTwoTwoPlus))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data VerTwoTwoPlus -    = VerTwoTwoPlus -        {val :: Std_.Int16-        ,duo :: Std_.Int64-        ,ptr1 :: VerTwoDataTwoPtr-        ,ptr2 :: VerTwoDataTwoPtr-        ,tre :: Std_.Int64-        ,lst3 :: (V.Vector Std_.Int64)}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (VerTwoTwoPlus)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (VerTwoTwoPlus)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (VerTwoTwoPlus)) where-    type Cerial msg (VerTwoTwoPlus) = (Capnp.Gen.ById.X832bcc6686a26d56.VerTwoTwoPlus msg)-    decerialize raw = (VerTwoTwoPlus <$> (Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoTwoPlus'val raw)-                                     <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoTwoPlus'duo raw)-                                     <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoTwoPlus'ptr1 raw) >>= Classes.decerialize)-                                     <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoTwoPlus'ptr2 raw) >>= Classes.decerialize)-                                     <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoTwoPlus'tre raw)-                                     <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoTwoPlus'lst3 raw) >>= Classes.decerialize))-instance (Classes.Marshal s (VerTwoTwoPlus)) where-    marshalInto raw_ value_ = case value_ of-        VerTwoTwoPlus{..} ->-            (do-                (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoTwoPlus'val raw_ val)-                (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoTwoPlus'duo raw_ duo)-                ((Classes.cerialize (Untyped.message raw_) ptr1) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoTwoPlus'ptr1 raw_))-                ((Classes.cerialize (Untyped.message raw_) ptr2) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoTwoPlus'ptr2 raw_))-                (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoTwoPlus'tre raw_ tre)-                ((Classes.cerialize (Untyped.message raw_) lst3) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoTwoPlus'lst3 raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (VerTwoTwoPlus))-instance (Classes.Cerialize s (V.Vector (VerTwoTwoPlus))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (VerTwoTwoPlus)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (VerTwoTwoPlus))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (VerTwoTwoPlus)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VerTwoTwoPlus))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VerTwoTwoPlus)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VerTwoTwoPlus))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data HoldsText -    = HoldsText -        {txt :: T.Text-        ,lst :: (V.Vector T.Text)-        ,lstlst :: (V.Vector (V.Vector T.Text))}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (HoldsText)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (HoldsText)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (HoldsText)) where-    type Cerial msg (HoldsText) = (Capnp.Gen.ById.X832bcc6686a26d56.HoldsText msg)-    decerialize raw = (HoldsText <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_HoldsText'txt raw) >>= Classes.decerialize)-                                 <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_HoldsText'lst raw) >>= Classes.decerialize)-                                 <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_HoldsText'lstlst raw) >>= Classes.decerialize))-instance (Classes.Marshal s (HoldsText)) where-    marshalInto raw_ value_ = case value_ of-        HoldsText{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) txt) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_HoldsText'txt raw_))-                ((Classes.cerialize (Untyped.message raw_) lst) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_HoldsText'lst raw_))-                ((Classes.cerialize (Untyped.message raw_) lstlst) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_HoldsText'lstlst raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (HoldsText))-instance (Classes.Cerialize s (V.Vector (HoldsText))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (HoldsText)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (HoldsText))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (HoldsText)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (HoldsText))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (HoldsText)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (HoldsText))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data WrapEmpty -    = WrapEmpty -        {mightNotBeReallyEmpty :: VerEmpty}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (WrapEmpty)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (WrapEmpty)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (WrapEmpty)) where-    type Cerial msg (WrapEmpty) = (Capnp.Gen.ById.X832bcc6686a26d56.WrapEmpty msg)-    decerialize raw = (WrapEmpty <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_WrapEmpty'mightNotBeReallyEmpty raw) >>= Classes.decerialize))-instance (Classes.Marshal s (WrapEmpty)) where-    marshalInto raw_ value_ = case value_ of-        WrapEmpty{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) mightNotBeReallyEmpty) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_WrapEmpty'mightNotBeReallyEmpty raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (WrapEmpty))-instance (Classes.Cerialize s (V.Vector (WrapEmpty))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (WrapEmpty)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (WrapEmpty))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (WrapEmpty)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (WrapEmpty))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (WrapEmpty)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (WrapEmpty))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data Wrap2x2 -    = Wrap2x2 -        {mightNotBeReallyEmpty :: VerTwoDataTwoPtr}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (Wrap2x2)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Wrap2x2)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Wrap2x2)) where-    type Cerial msg (Wrap2x2) = (Capnp.Gen.ById.X832bcc6686a26d56.Wrap2x2 msg)-    decerialize raw = (Wrap2x2 <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Wrap2x2'mightNotBeReallyEmpty raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Wrap2x2)) where-    marshalInto raw_ value_ = case value_ of-        Wrap2x2{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) mightNotBeReallyEmpty) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Wrap2x2'mightNotBeReallyEmpty raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (Wrap2x2))-instance (Classes.Cerialize s (V.Vector (Wrap2x2))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Wrap2x2)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Wrap2x2))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Wrap2x2)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Wrap2x2))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Wrap2x2)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Wrap2x2))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data Wrap2x2plus -    = Wrap2x2plus -        {mightNotBeReallyEmpty :: VerTwoTwoPlus}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (Wrap2x2plus)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Wrap2x2plus)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Wrap2x2plus)) where-    type Cerial msg (Wrap2x2plus) = (Capnp.Gen.ById.X832bcc6686a26d56.Wrap2x2plus msg)-    decerialize raw = (Wrap2x2plus <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Wrap2x2plus'mightNotBeReallyEmpty raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Wrap2x2plus)) where-    marshalInto raw_ value_ = case value_ of-        Wrap2x2plus{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) mightNotBeReallyEmpty) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Wrap2x2plus'mightNotBeReallyEmpty raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (Wrap2x2plus))-instance (Classes.Cerialize s (V.Vector (Wrap2x2plus))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Wrap2x2plus)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Wrap2x2plus))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Wrap2x2plus)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Wrap2x2plus))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Wrap2x2plus)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Wrap2x2plus))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data VoidUnion -    = VoidUnion'a -    | VoidUnion'b -    | VoidUnion'unknown' Std_.Word16-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (VoidUnion)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (VoidUnion)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (VoidUnion)) where-    type Cerial msg (VoidUnion) = (Capnp.Gen.ById.X832bcc6686a26d56.VoidUnion msg)-    decerialize raw = (do-        raw <- (Capnp.Gen.ById.X832bcc6686a26d56.get_VoidUnion' raw)-        case raw of-            (Capnp.Gen.ById.X832bcc6686a26d56.VoidUnion'a) ->-                (Std_.pure VoidUnion'a)-            (Capnp.Gen.ById.X832bcc6686a26d56.VoidUnion'b) ->-                (Std_.pure VoidUnion'b)-            (Capnp.Gen.ById.X832bcc6686a26d56.VoidUnion'unknown' tag) ->-                (Std_.pure (VoidUnion'unknown' tag))-        )-instance (Classes.Marshal s (VoidUnion)) where-    marshalInto raw_ value_ = case value_ of-        (VoidUnion'a) ->-            (Capnp.Gen.ById.X832bcc6686a26d56.set_VoidUnion'a raw_)-        (VoidUnion'b) ->-            (Capnp.Gen.ById.X832bcc6686a26d56.set_VoidUnion'b raw_)-        (VoidUnion'unknown' tag) ->-            (Capnp.Gen.ById.X832bcc6686a26d56.set_VoidUnion'unknown' raw_ tag)-instance (Classes.Cerialize s (VoidUnion))-instance (Classes.Cerialize s (V.Vector (VoidUnion))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (VoidUnion)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (VoidUnion))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (VoidUnion)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VoidUnion))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VoidUnion)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (VoidUnion))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data Nester1Capn -    = Nester1Capn -        {strs :: (V.Vector T.Text)}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (Nester1Capn)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Nester1Capn)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Nester1Capn)) where-    type Cerial msg (Nester1Capn) = (Capnp.Gen.ById.X832bcc6686a26d56.Nester1Capn msg)-    decerialize raw = (Nester1Capn <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Nester1Capn'strs raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Nester1Capn)) where-    marshalInto raw_ value_ = case value_ of-        Nester1Capn{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) strs) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Nester1Capn'strs raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (Nester1Capn))-instance (Classes.Cerialize s (V.Vector (Nester1Capn))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Nester1Capn)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Nester1Capn))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Nester1Capn)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Nester1Capn))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Nester1Capn)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Nester1Capn))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data RWTestCapn -    = RWTestCapn -        {nestMatrix :: (V.Vector (V.Vector Nester1Capn))}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (RWTestCapn)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (RWTestCapn)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (RWTestCapn)) where-    type Cerial msg (RWTestCapn) = (Capnp.Gen.ById.X832bcc6686a26d56.RWTestCapn msg)-    decerialize raw = (RWTestCapn <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_RWTestCapn'nestMatrix raw) >>= Classes.decerialize))-instance (Classes.Marshal s (RWTestCapn)) where-    marshalInto raw_ value_ = case value_ of-        RWTestCapn{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) nestMatrix) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_RWTestCapn'nestMatrix raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (RWTestCapn))-instance (Classes.Cerialize s (V.Vector (RWTestCapn))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (RWTestCapn)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (RWTestCapn))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (RWTestCapn)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (RWTestCapn))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (RWTestCapn)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (RWTestCapn))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data ListStructCapn -    = ListStructCapn -        {vec :: (V.Vector Nester1Capn)}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (ListStructCapn)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (ListStructCapn)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (ListStructCapn)) where-    type Cerial msg (ListStructCapn) = (Capnp.Gen.ById.X832bcc6686a26d56.ListStructCapn msg)-    decerialize raw = (ListStructCapn <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_ListStructCapn'vec raw) >>= Classes.decerialize))-instance (Classes.Marshal s (ListStructCapn)) where-    marshalInto raw_ value_ = case value_ of-        ListStructCapn{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) vec) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_ListStructCapn'vec raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (ListStructCapn))-instance (Classes.Cerialize s (V.Vector (ListStructCapn))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (ListStructCapn)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (ListStructCapn))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (ListStructCapn)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (ListStructCapn))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (ListStructCapn)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (ListStructCapn))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-newtype Echo -    = Echo Message.Client-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-class ((MonadIO.MonadIO m)-      ,(Server.Server m cap)) => (Echo'server_ m cap) where-    {-# MINIMAL echo'echo #-}-    echo'echo :: cap -> (Server.MethodHandler m Echo'echo'params Echo'echo'results)-    echo'echo _ = Server.methodUnimplemented-export_Echo :: ((STM.MonadSTM m)-               ,(Echo'server_ Std_.IO cap)) => Supervisors.Supervisor -> cap -> (m (Echo))-export_Echo sup_ server_ = (STM.liftSTM (Echo <$> (Rpc.export sup_ Server.ServerOps{handleCast = (Server.unwrap server_)-                                                                                   ,handleStop = (Server.shutdown server_)-                                                                                   ,handleCall = (\interfaceId_ methodId_ -> case interfaceId_ of-                                                                                       10255578992688506164 ->-                                                                                           case methodId_ of-                                                                                               0 ->-                                                                                                   (Server.toUntypedHandler (echo'echo server_))-                                                                                               _ ->-                                                                                                   Server.methodUnimplemented-                                                                                       _ ->-                                                                                           Server.methodUnimplemented)})))-instance (Rpc.IsClient (Echo)) where-    fromClient  = Echo-    toClient (Echo client) = client-instance (Classes.FromPtr msg (Echo)) where-    fromPtr  = RpcHelpers.isClientFromPtr-instance (Classes.ToPtr s (Echo)) where-    toPtr  = RpcHelpers.isClientToPtr-instance (Classes.Decerialize (Echo)) where-    type Cerial msg (Echo) = (Capnp.Gen.ById.X832bcc6686a26d56.Echo msg)-    decerialize (Capnp.Gen.ById.X832bcc6686a26d56.Echo'newtype_ maybeCap) = case maybeCap of-        (Std_.Nothing) ->-            (Std_.pure (Echo Message.nullClient))-        (Std_.Just cap) ->-            (Echo <$> (Untyped.getClient cap))-instance (Classes.Cerialize s (Echo)) where-    cerialize msg (Echo client) = (Capnp.Gen.ById.X832bcc6686a26d56.Echo'newtype_ <$> (Std_.Just <$> (Untyped.appendCap msg client)))-instance (Server.Server Std_.IO (Echo))-instance (Echo'server_ Std_.IO (Echo)) where-    echo'echo (Echo client) = (Rpc.clientMethodHandler 10255578992688506164 0 client)-data Echo'echo'params -    = Echo'echo'params -        {in_ :: T.Text}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (Echo'echo'params)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Echo'echo'params)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Echo'echo'params)) where-    type Cerial msg (Echo'echo'params) = (Capnp.Gen.ById.X832bcc6686a26d56.Echo'echo'params msg)-    decerialize raw = (Echo'echo'params <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Echo'echo'params'in_ raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Echo'echo'params)) where-    marshalInto raw_ value_ = case value_ of-        Echo'echo'params{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) in_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Echo'echo'params'in_ raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (Echo'echo'params))-instance (Classes.Cerialize s (V.Vector (Echo'echo'params))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Echo'echo'params)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Echo'echo'params))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Echo'echo'params)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Echo'echo'params))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Echo'echo'params)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Echo'echo'params))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data Echo'echo'results -    = Echo'echo'results -        {out :: T.Text}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (Echo'echo'results)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Echo'echo'results)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Echo'echo'results)) where-    type Cerial msg (Echo'echo'results) = (Capnp.Gen.ById.X832bcc6686a26d56.Echo'echo'results msg)-    decerialize raw = (Echo'echo'results <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Echo'echo'results'out raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Echo'echo'results)) where-    marshalInto raw_ value_ = case value_ of-        Echo'echo'results{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) out) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Echo'echo'results'out raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (Echo'echo'results))-instance (Classes.Cerialize s (V.Vector (Echo'echo'results))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Echo'echo'results)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Echo'echo'results))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Echo'echo'results)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Echo'echo'results))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Echo'echo'results)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Echo'echo'results))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data Hoth -    = Hoth -        {base :: EchoBase}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (Hoth)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Hoth)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Hoth)) where-    type Cerial msg (Hoth) = (Capnp.Gen.ById.X832bcc6686a26d56.Hoth msg)-    decerialize raw = (Hoth <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Hoth'base raw) >>= Classes.decerialize))-instance (Classes.Marshal s (Hoth)) where-    marshalInto raw_ value_ = case value_ of-        Hoth{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) base) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Hoth'base raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (Hoth))-instance (Classes.Cerialize s (V.Vector (Hoth))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Hoth)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Hoth))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Hoth)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Hoth))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Hoth)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Hoth))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data EchoBase -    = EchoBase -        {echo :: Echo}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (EchoBase)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (EchoBase)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (EchoBase)) where-    type Cerial msg (EchoBase) = (Capnp.Gen.ById.X832bcc6686a26d56.EchoBase msg)-    decerialize raw = (EchoBase <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_EchoBase'echo raw) >>= Classes.decerialize))-instance (Classes.Marshal s (EchoBase)) where-    marshalInto raw_ value_ = case value_ of-        EchoBase{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) echo) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_EchoBase'echo raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (EchoBase))-instance (Classes.Cerialize s (V.Vector (EchoBase))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (EchoBase)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (EchoBase))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (EchoBase)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (EchoBase))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (EchoBase)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (EchoBase))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data EchoBases -    = EchoBases -        {bases :: (V.Vector EchoBase)}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (EchoBases)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (EchoBases)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (EchoBases)) where-    type Cerial msg (EchoBases) = (Capnp.Gen.ById.X832bcc6686a26d56.EchoBases msg)-    decerialize raw = (EchoBases <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_EchoBases'bases raw) >>= Classes.decerialize))-instance (Classes.Marshal s (EchoBases)) where-    marshalInto raw_ value_ = case value_ of-        EchoBases{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) bases) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_EchoBases'bases raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (EchoBases))-instance (Classes.Cerialize s (V.Vector (EchoBases))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (EchoBases)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (EchoBases))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (EchoBases)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (EchoBases))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (EchoBases)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (EchoBases))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data StackingRoot -    = StackingRoot -        {aWithDefault :: StackingA-        ,a :: StackingA}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (StackingRoot)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (StackingRoot)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (StackingRoot)) where-    type Cerial msg (StackingRoot) = (Capnp.Gen.ById.X832bcc6686a26d56.StackingRoot msg)-    decerialize raw = (StackingRoot <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_StackingRoot'aWithDefault raw) >>= Classes.decerialize)-                                    <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_StackingRoot'a raw) >>= Classes.decerialize))-instance (Classes.Marshal s (StackingRoot)) where-    marshalInto raw_ value_ = case value_ of-        StackingRoot{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) aWithDefault) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_StackingRoot'aWithDefault raw_))-                ((Classes.cerialize (Untyped.message raw_) a) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_StackingRoot'a raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (StackingRoot))-instance (Classes.Cerialize s (V.Vector (StackingRoot))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (StackingRoot)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (StackingRoot))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (StackingRoot)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (StackingRoot))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (StackingRoot)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (StackingRoot))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data StackingA -    = StackingA -        {num :: Std_.Int32-        ,b :: StackingB}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (StackingA)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (StackingA)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (StackingA)) where-    type Cerial msg (StackingA) = (Capnp.Gen.ById.X832bcc6686a26d56.StackingA msg)-    decerialize raw = (StackingA <$> (Capnp.Gen.ById.X832bcc6686a26d56.get_StackingA'num raw)-                                 <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_StackingA'b raw) >>= Classes.decerialize))-instance (Classes.Marshal s (StackingA)) where-    marshalInto raw_ value_ = case value_ of-        StackingA{..} ->-            (do-                (Capnp.Gen.ById.X832bcc6686a26d56.set_StackingA'num raw_ num)-                ((Classes.cerialize (Untyped.message raw_) b) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_StackingA'b raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (StackingA))-instance (Classes.Cerialize s (V.Vector (StackingA))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (StackingA)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (StackingA))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (StackingA)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (StackingA))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (StackingA)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (StackingA))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data StackingB -    = StackingB -        {num :: Std_.Int32}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (StackingB)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (StackingB)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (StackingB)) where-    type Cerial msg (StackingB) = (Capnp.Gen.ById.X832bcc6686a26d56.StackingB msg)-    decerialize raw = (StackingB <$> (Capnp.Gen.ById.X832bcc6686a26d56.get_StackingB'num raw))-instance (Classes.Marshal s (StackingB)) where-    marshalInto raw_ value_ = case value_ of-        StackingB{..} ->-            (do-                (Capnp.Gen.ById.X832bcc6686a26d56.set_StackingB'num raw_ num)-                (Std_.pure ())-                )-instance (Classes.Cerialize s (StackingB))-instance (Classes.Cerialize s (V.Vector (StackingB))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (StackingB)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (StackingB))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (StackingB)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (StackingB))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (StackingB)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (StackingB))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-newtype CallSequence -    = CallSequence Message.Client-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-class ((MonadIO.MonadIO m)-      ,(Server.Server m cap)) => (CallSequence'server_ m cap) where-    {-# MINIMAL callSequence'getNumber #-}-    callSequence'getNumber :: cap -> (Server.MethodHandler m CallSequence'getNumber'params CallSequence'getNumber'results)-    callSequence'getNumber _ = Server.methodUnimplemented-export_CallSequence :: ((STM.MonadSTM m)-                       ,(CallSequence'server_ Std_.IO cap)) => Supervisors.Supervisor -> cap -> (m (CallSequence))-export_CallSequence sup_ server_ = (STM.liftSTM (CallSequence <$> (Rpc.export sup_ Server.ServerOps{handleCast = (Server.unwrap server_)-                                                                                                   ,handleStop = (Server.shutdown server_)-                                                                                                   ,handleCall = (\interfaceId_ methodId_ -> case interfaceId_ of-                                                                                                       12371070827563042848 ->-                                                                                                           case methodId_ of-                                                                                                               0 ->-                                                                                                                   (Server.toUntypedHandler (callSequence'getNumber server_))-                                                                                                               _ ->-                                                                                                                   Server.methodUnimplemented-                                                                                                       _ ->-                                                                                                           Server.methodUnimplemented)})))-instance (Rpc.IsClient (CallSequence)) where-    fromClient  = CallSequence-    toClient (CallSequence client) = client-instance (Classes.FromPtr msg (CallSequence)) where-    fromPtr  = RpcHelpers.isClientFromPtr-instance (Classes.ToPtr s (CallSequence)) where-    toPtr  = RpcHelpers.isClientToPtr-instance (Classes.Decerialize (CallSequence)) where-    type Cerial msg (CallSequence) = (Capnp.Gen.ById.X832bcc6686a26d56.CallSequence msg)-    decerialize (Capnp.Gen.ById.X832bcc6686a26d56.CallSequence'newtype_ maybeCap) = case maybeCap of-        (Std_.Nothing) ->-            (Std_.pure (CallSequence Message.nullClient))-        (Std_.Just cap) ->-            (CallSequence <$> (Untyped.getClient cap))-instance (Classes.Cerialize s (CallSequence)) where-    cerialize msg (CallSequence client) = (Capnp.Gen.ById.X832bcc6686a26d56.CallSequence'newtype_ <$> (Std_.Just <$> (Untyped.appendCap msg client)))-instance (Server.Server Std_.IO (CallSequence))-instance (CallSequence'server_ Std_.IO (CallSequence)) where-    callSequence'getNumber (CallSequence client) = (Rpc.clientMethodHandler 12371070827563042848 0 client)-data CallSequence'getNumber'params -    = CallSequence'getNumber'params -        {}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (CallSequence'getNumber'params)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (CallSequence'getNumber'params)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (CallSequence'getNumber'params)) where-    type Cerial msg (CallSequence'getNumber'params) = (Capnp.Gen.ById.X832bcc6686a26d56.CallSequence'getNumber'params msg)-    decerialize raw = (Std_.pure CallSequence'getNumber'params)-instance (Classes.Marshal s (CallSequence'getNumber'params)) where-    marshalInto raw_ value_ = case value_ of-        (CallSequence'getNumber'params) ->-            (do-                (Std_.pure ())-                )-instance (Classes.Cerialize s (CallSequence'getNumber'params))-instance (Classes.Cerialize s (V.Vector (CallSequence'getNumber'params))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (CallSequence'getNumber'params)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (CallSequence'getNumber'params))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (CallSequence'getNumber'params)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CallSequence'getNumber'params))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CallSequence'getNumber'params)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CallSequence'getNumber'params))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data CallSequence'getNumber'results -    = CallSequence'getNumber'results -        {n :: Std_.Word32}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (CallSequence'getNumber'results)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (CallSequence'getNumber'results)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (CallSequence'getNumber'results)) where-    type Cerial msg (CallSequence'getNumber'results) = (Capnp.Gen.ById.X832bcc6686a26d56.CallSequence'getNumber'results msg)-    decerialize raw = (CallSequence'getNumber'results <$> (Capnp.Gen.ById.X832bcc6686a26d56.get_CallSequence'getNumber'results'n raw))-instance (Classes.Marshal s (CallSequence'getNumber'results)) where-    marshalInto raw_ value_ = case value_ of-        CallSequence'getNumber'results{..} ->-            (do-                (Capnp.Gen.ById.X832bcc6686a26d56.set_CallSequence'getNumber'results'n raw_ n)-                (Std_.pure ())-                )-instance (Classes.Cerialize s (CallSequence'getNumber'results))-instance (Classes.Cerialize s (V.Vector (CallSequence'getNumber'results))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (CallSequence'getNumber'results)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (CallSequence'getNumber'results))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (CallSequence'getNumber'results)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CallSequence'getNumber'results))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CallSequence'getNumber'results)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CallSequence'getNumber'results))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-newtype CounterFactory -    = CounterFactory Message.Client-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-class ((MonadIO.MonadIO m)-      ,(Server.Server m cap)) => (CounterFactory'server_ m cap) where-    {-# MINIMAL counterFactory'newCounter #-}-    counterFactory'newCounter :: cap -> (Server.MethodHandler m CounterFactory'newCounter'params CounterFactory'newCounter'results)-    counterFactory'newCounter _ = Server.methodUnimplemented-export_CounterFactory :: ((STM.MonadSTM m)-                         ,(CounterFactory'server_ Std_.IO cap)) => Supervisors.Supervisor -> cap -> (m (CounterFactory))-export_CounterFactory sup_ server_ = (STM.liftSTM (CounterFactory <$> (Rpc.export sup_ Server.ServerOps{handleCast = (Server.unwrap server_)-                                                                                                       ,handleStop = (Server.shutdown server_)-                                                                                                       ,handleCall = (\interfaceId_ methodId_ -> case interfaceId_ of-                                                                                                           15610220054254702620 ->-                                                                                                               case methodId_ of-                                                                                                                   0 ->-                                                                                                                       (Server.toUntypedHandler (counterFactory'newCounter server_))-                                                                                                                   _ ->-                                                                                                                       Server.methodUnimplemented-                                                                                                           _ ->-                                                                                                               Server.methodUnimplemented)})))-instance (Rpc.IsClient (CounterFactory)) where-    fromClient  = CounterFactory-    toClient (CounterFactory client) = client-instance (Classes.FromPtr msg (CounterFactory)) where-    fromPtr  = RpcHelpers.isClientFromPtr-instance (Classes.ToPtr s (CounterFactory)) where-    toPtr  = RpcHelpers.isClientToPtr-instance (Classes.Decerialize (CounterFactory)) where-    type Cerial msg (CounterFactory) = (Capnp.Gen.ById.X832bcc6686a26d56.CounterFactory msg)-    decerialize (Capnp.Gen.ById.X832bcc6686a26d56.CounterFactory'newtype_ maybeCap) = case maybeCap of-        (Std_.Nothing) ->-            (Std_.pure (CounterFactory Message.nullClient))-        (Std_.Just cap) ->-            (CounterFactory <$> (Untyped.getClient cap))-instance (Classes.Cerialize s (CounterFactory)) where-    cerialize msg (CounterFactory client) = (Capnp.Gen.ById.X832bcc6686a26d56.CounterFactory'newtype_ <$> (Std_.Just <$> (Untyped.appendCap msg client)))-instance (Server.Server Std_.IO (CounterFactory))-instance (CounterFactory'server_ Std_.IO (CounterFactory)) where-    counterFactory'newCounter (CounterFactory client) = (Rpc.clientMethodHandler 15610220054254702620 0 client)-data CounterFactory'newCounter'params -    = CounterFactory'newCounter'params -        {start :: Std_.Word32}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (CounterFactory'newCounter'params)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (CounterFactory'newCounter'params)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (CounterFactory'newCounter'params)) where-    type Cerial msg (CounterFactory'newCounter'params) = (Capnp.Gen.ById.X832bcc6686a26d56.CounterFactory'newCounter'params msg)-    decerialize raw = (CounterFactory'newCounter'params <$> (Capnp.Gen.ById.X832bcc6686a26d56.get_CounterFactory'newCounter'params'start raw))-instance (Classes.Marshal s (CounterFactory'newCounter'params)) where-    marshalInto raw_ value_ = case value_ of-        CounterFactory'newCounter'params{..} ->-            (do-                (Capnp.Gen.ById.X832bcc6686a26d56.set_CounterFactory'newCounter'params'start raw_ start)-                (Std_.pure ())-                )-instance (Classes.Cerialize s (CounterFactory'newCounter'params))-instance (Classes.Cerialize s (V.Vector (CounterFactory'newCounter'params))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (CounterFactory'newCounter'params)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (CounterFactory'newCounter'params))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (CounterFactory'newCounter'params)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CounterFactory'newCounter'params))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CounterFactory'newCounter'params)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CounterFactory'newCounter'params))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data CounterFactory'newCounter'results -    = CounterFactory'newCounter'results -        {counter :: CallSequence}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (CounterFactory'newCounter'results)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (CounterFactory'newCounter'results)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (CounterFactory'newCounter'results)) where-    type Cerial msg (CounterFactory'newCounter'results) = (Capnp.Gen.ById.X832bcc6686a26d56.CounterFactory'newCounter'results msg)-    decerialize raw = (CounterFactory'newCounter'results <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_CounterFactory'newCounter'results'counter raw) >>= Classes.decerialize))-instance (Classes.Marshal s (CounterFactory'newCounter'results)) where-    marshalInto raw_ value_ = case value_ of-        CounterFactory'newCounter'results{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) counter) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_CounterFactory'newCounter'results'counter raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (CounterFactory'newCounter'results))-instance (Classes.Cerialize s (V.Vector (CounterFactory'newCounter'results))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (CounterFactory'newCounter'results)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (CounterFactory'newCounter'results))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (CounterFactory'newCounter'results)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CounterFactory'newCounter'results))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CounterFactory'newCounter'results)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CounterFactory'newCounter'results))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-newtype CounterAcceptor -    = CounterAcceptor Message.Client-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-class ((MonadIO.MonadIO m)-      ,(Server.Server m cap)) => (CounterAcceptor'server_ m cap) where-    {-# MINIMAL counterAcceptor'accept #-}-    counterAcceptor'accept :: cap -> (Server.MethodHandler m CounterAcceptor'accept'params CounterAcceptor'accept'results)-    counterAcceptor'accept _ = Server.methodUnimplemented-export_CounterAcceptor :: ((STM.MonadSTM m)-                          ,(CounterAcceptor'server_ Std_.IO cap)) => Supervisors.Supervisor -> cap -> (m (CounterAcceptor))-export_CounterAcceptor sup_ server_ = (STM.liftSTM (CounterAcceptor <$> (Rpc.export sup_ Server.ServerOps{handleCast = (Server.unwrap server_)-                                                                                                         ,handleStop = (Server.shutdown server_)-                                                                                                         ,handleCall = (\interfaceId_ methodId_ -> case interfaceId_ of-                                                                                                             14317498215560924065 ->-                                                                                                                 case methodId_ of-                                                                                                                     0 ->-                                                                                                                         (Server.toUntypedHandler (counterAcceptor'accept server_))-                                                                                                                     _ ->-                                                                                                                         Server.methodUnimplemented-                                                                                                             _ ->-                                                                                                                 Server.methodUnimplemented)})))-instance (Rpc.IsClient (CounterAcceptor)) where-    fromClient  = CounterAcceptor-    toClient (CounterAcceptor client) = client-instance (Classes.FromPtr msg (CounterAcceptor)) where-    fromPtr  = RpcHelpers.isClientFromPtr-instance (Classes.ToPtr s (CounterAcceptor)) where-    toPtr  = RpcHelpers.isClientToPtr-instance (Classes.Decerialize (CounterAcceptor)) where-    type Cerial msg (CounterAcceptor) = (Capnp.Gen.ById.X832bcc6686a26d56.CounterAcceptor msg)-    decerialize (Capnp.Gen.ById.X832bcc6686a26d56.CounterAcceptor'newtype_ maybeCap) = case maybeCap of-        (Std_.Nothing) ->-            (Std_.pure (CounterAcceptor Message.nullClient))-        (Std_.Just cap) ->-            (CounterAcceptor <$> (Untyped.getClient cap))-instance (Classes.Cerialize s (CounterAcceptor)) where-    cerialize msg (CounterAcceptor client) = (Capnp.Gen.ById.X832bcc6686a26d56.CounterAcceptor'newtype_ <$> (Std_.Just <$> (Untyped.appendCap msg client)))-instance (Server.Server Std_.IO (CounterAcceptor))-instance (CounterAcceptor'server_ Std_.IO (CounterAcceptor)) where-    counterAcceptor'accept (CounterAcceptor client) = (Rpc.clientMethodHandler 14317498215560924065 0 client)-data CounterAcceptor'accept'params -    = CounterAcceptor'accept'params -        {counter :: CallSequence}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (CounterAcceptor'accept'params)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (CounterAcceptor'accept'params)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (CounterAcceptor'accept'params)) where-    type Cerial msg (CounterAcceptor'accept'params) = (Capnp.Gen.ById.X832bcc6686a26d56.CounterAcceptor'accept'params msg)-    decerialize raw = (CounterAcceptor'accept'params <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_CounterAcceptor'accept'params'counter raw) >>= Classes.decerialize))-instance (Classes.Marshal s (CounterAcceptor'accept'params)) where-    marshalInto raw_ value_ = case value_ of-        CounterAcceptor'accept'params{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) counter) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_CounterAcceptor'accept'params'counter raw_))-                (Std_.pure ())-                )-instance (Classes.Cerialize s (CounterAcceptor'accept'params))-instance (Classes.Cerialize s (V.Vector (CounterAcceptor'accept'params))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (CounterAcceptor'accept'params)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (CounterAcceptor'accept'params))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (CounterAcceptor'accept'params)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CounterAcceptor'accept'params))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CounterAcceptor'accept'params)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CounterAcceptor'accept'params))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data CounterAcceptor'accept'results -    = CounterAcceptor'accept'results -        {}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (CounterAcceptor'accept'results)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (CounterAcceptor'accept'results)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (CounterAcceptor'accept'results)) where-    type Cerial msg (CounterAcceptor'accept'results) = (Capnp.Gen.ById.X832bcc6686a26d56.CounterAcceptor'accept'results msg)-    decerialize raw = (Std_.pure CounterAcceptor'accept'results)-instance (Classes.Marshal s (CounterAcceptor'accept'results)) where-    marshalInto raw_ value_ = case value_ of-        (CounterAcceptor'accept'results) ->-            (do-                (Std_.pure ())-                )-instance (Classes.Cerialize s (CounterAcceptor'accept'results))-instance (Classes.Cerialize s (V.Vector (CounterAcceptor'accept'results))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (CounterAcceptor'accept'results)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (CounterAcceptor'accept'results))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (CounterAcceptor'accept'results)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CounterAcceptor'accept'results))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CounterAcceptor'accept'results)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (CounterAcceptor'accept'results))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-newtype Top -    = Top Message.Client-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-class ((MonadIO.MonadIO m)-      ,(Server.Server m cap)) => (Top'server_ m cap) where-    {-# MINIMAL top'top #-}-    top'top :: cap -> (Server.MethodHandler m Top'top'params Top'top'results)-    top'top _ = Server.methodUnimplemented-export_Top :: ((STM.MonadSTM m)-              ,(Top'server_ Std_.IO cap)) => Supervisors.Supervisor -> cap -> (m (Top))-export_Top sup_ server_ = (STM.liftSTM (Top <$> (Rpc.export sup_ Server.ServerOps{handleCast = (Server.unwrap server_)-                                                                                 ,handleStop = (Server.shutdown server_)-                                                                                 ,handleCall = (\interfaceId_ methodId_ -> case interfaceId_ of-                                                                                     17861645508359101525 ->-                                                                                         case methodId_ of-                                                                                             0 ->-                                                                                                 (Server.toUntypedHandler (top'top server_))-                                                                                             _ ->-                                                                                                 Server.methodUnimplemented-                                                                                     _ ->-                                                                                         Server.methodUnimplemented)})))-instance (Rpc.IsClient (Top)) where-    fromClient  = Top-    toClient (Top client) = client-instance (Classes.FromPtr msg (Top)) where-    fromPtr  = RpcHelpers.isClientFromPtr-instance (Classes.ToPtr s (Top)) where-    toPtr  = RpcHelpers.isClientToPtr-instance (Classes.Decerialize (Top)) where-    type Cerial msg (Top) = (Capnp.Gen.ById.X832bcc6686a26d56.Top msg)-    decerialize (Capnp.Gen.ById.X832bcc6686a26d56.Top'newtype_ maybeCap) = case maybeCap of-        (Std_.Nothing) ->-            (Std_.pure (Top Message.nullClient))-        (Std_.Just cap) ->-            (Top <$> (Untyped.getClient cap))-instance (Classes.Cerialize s (Top)) where-    cerialize msg (Top client) = (Capnp.Gen.ById.X832bcc6686a26d56.Top'newtype_ <$> (Std_.Just <$> (Untyped.appendCap msg client)))-instance (Server.Server Std_.IO (Top))-instance (Top'server_ Std_.IO (Top)) where-    top'top (Top client) = (Rpc.clientMethodHandler 17861645508359101525 0 client)-data Top'top'params -    = Top'top'params -        {}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (Top'top'params)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Top'top'params)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Top'top'params)) where-    type Cerial msg (Top'top'params) = (Capnp.Gen.ById.X832bcc6686a26d56.Top'top'params msg)-    decerialize raw = (Std_.pure Top'top'params)-instance (Classes.Marshal s (Top'top'params)) where-    marshalInto raw_ value_ = case value_ of-        (Top'top'params) ->-            (do-                (Std_.pure ())-                )-instance (Classes.Cerialize s (Top'top'params))-instance (Classes.Cerialize s (V.Vector (Top'top'params))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Top'top'params)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Top'top'params))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Top'top'params)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Top'top'params))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Top'top'params)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Top'top'params))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data Top'top'results -    = Top'top'results -        {}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (Top'top'results)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Top'top'results)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Top'top'results)) where-    type Cerial msg (Top'top'results) = (Capnp.Gen.ById.X832bcc6686a26d56.Top'top'results msg)-    decerialize raw = (Std_.pure Top'top'results)-instance (Classes.Marshal s (Top'top'results)) where-    marshalInto raw_ value_ = case value_ of-        (Top'top'results) ->-            (do-                (Std_.pure ())-                )-instance (Classes.Cerialize s (Top'top'results))-instance (Classes.Cerialize s (V.Vector (Top'top'results))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Top'top'results)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Top'top'results))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Top'top'results)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Top'top'results))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Top'top'results)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Top'top'results))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-newtype Left -    = Left Message.Client-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-class ((MonadIO.MonadIO m)-      ,(Top'server_ m cap)) => (Left'server_ m cap) where-    {-# MINIMAL left'left #-}-    left'left :: cap -> (Server.MethodHandler m Left'left'params Left'left'results)-    left'left _ = Server.methodUnimplemented-export_Left :: ((STM.MonadSTM m)-               ,(Left'server_ Std_.IO cap)) => Supervisors.Supervisor -> cap -> (m (Left))-export_Left sup_ server_ = (STM.liftSTM (Left <$> (Rpc.export sup_ Server.ServerOps{handleCast = (Server.unwrap server_)-                                                                                   ,handleStop = (Server.shutdown server_)-                                                                                   ,handleCall = (\interfaceId_ methodId_ -> case interfaceId_ of-                                                                                       17679152961798450446 ->-                                                                                           case methodId_ of-                                                                                               0 ->-                                                                                                   (Server.toUntypedHandler (left'left server_))-                                                                                               _ ->-                                                                                                   Server.methodUnimplemented-                                                                                       17861645508359101525 ->-                                                                                           case methodId_ of-                                                                                               0 ->-                                                                                                   (Server.toUntypedHandler (top'top server_))-                                                                                               _ ->-                                                                                                   Server.methodUnimplemented-                                                                                       _ ->-                                                                                           Server.methodUnimplemented)})))-instance (Rpc.IsClient (Left)) where-    fromClient  = Left-    toClient (Left client) = client-instance (Classes.FromPtr msg (Left)) where-    fromPtr  = RpcHelpers.isClientFromPtr-instance (Classes.ToPtr s (Left)) where-    toPtr  = RpcHelpers.isClientToPtr-instance (Classes.Decerialize (Left)) where-    type Cerial msg (Left) = (Capnp.Gen.ById.X832bcc6686a26d56.Left msg)-    decerialize (Capnp.Gen.ById.X832bcc6686a26d56.Left'newtype_ maybeCap) = case maybeCap of-        (Std_.Nothing) ->-            (Std_.pure (Left Message.nullClient))-        (Std_.Just cap) ->-            (Left <$> (Untyped.getClient cap))-instance (Classes.Cerialize s (Left)) where-    cerialize msg (Left client) = (Capnp.Gen.ById.X832bcc6686a26d56.Left'newtype_ <$> (Std_.Just <$> (Untyped.appendCap msg client)))-instance (Server.Server Std_.IO (Left))-instance (Left'server_ Std_.IO (Left)) where-    left'left (Left client) = (Rpc.clientMethodHandler 17679152961798450446 0 client)-instance (Top'server_ Std_.IO (Left)) where-    top'top (Left client) = (Rpc.clientMethodHandler 17861645508359101525 0 client)-data Left'left'params -    = Left'left'params -        {}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (Left'left'params)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Left'left'params)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Left'left'params)) where-    type Cerial msg (Left'left'params) = (Capnp.Gen.ById.X832bcc6686a26d56.Left'left'params msg)-    decerialize raw = (Std_.pure Left'left'params)-instance (Classes.Marshal s (Left'left'params)) where-    marshalInto raw_ value_ = case value_ of-        (Left'left'params) ->-            (do-                (Std_.pure ())-                )-instance (Classes.Cerialize s (Left'left'params))-instance (Classes.Cerialize s (V.Vector (Left'left'params))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Left'left'params)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Left'left'params))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Left'left'params)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Left'left'params))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Left'left'params)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Left'left'params))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data Left'left'results -    = Left'left'results -        {}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (Left'left'results)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Left'left'results)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Left'left'results)) where-    type Cerial msg (Left'left'results) = (Capnp.Gen.ById.X832bcc6686a26d56.Left'left'results msg)-    decerialize raw = (Std_.pure Left'left'results)-instance (Classes.Marshal s (Left'left'results)) where-    marshalInto raw_ value_ = case value_ of-        (Left'left'results) ->-            (do-                (Std_.pure ())-                )-instance (Classes.Cerialize s (Left'left'results))-instance (Classes.Cerialize s (V.Vector (Left'left'results))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Left'left'results)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Left'left'results))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Left'left'results)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Left'left'results))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Left'left'results)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Left'left'results))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-newtype Right -    = Right Message.Client-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-class ((MonadIO.MonadIO m)-      ,(Top'server_ m cap)) => (Right'server_ m cap) where-    {-# MINIMAL right'right #-}-    right'right :: cap -> (Server.MethodHandler m Right'right'params Right'right'results)-    right'right _ = Server.methodUnimplemented-export_Right :: ((STM.MonadSTM m)-                ,(Right'server_ Std_.IO cap)) => Supervisors.Supervisor -> cap -> (m (Right))-export_Right sup_ server_ = (STM.liftSTM (Right <$> (Rpc.export sup_ Server.ServerOps{handleCast = (Server.unwrap server_)-                                                                                     ,handleStop = (Server.shutdown server_)-                                                                                     ,handleCall = (\interfaceId_ methodId_ -> case interfaceId_ of-                                                                                         14712639595305348988 ->-                                                                                             case methodId_ of-                                                                                                 0 ->-                                                                                                     (Server.toUntypedHandler (right'right server_))-                                                                                                 _ ->-                                                                                                     Server.methodUnimplemented-                                                                                         17861645508359101525 ->-                                                                                             case methodId_ of-                                                                                                 0 ->-                                                                                                     (Server.toUntypedHandler (top'top server_))-                                                                                                 _ ->-                                                                                                     Server.methodUnimplemented-                                                                                         _ ->-                                                                                             Server.methodUnimplemented)})))-instance (Rpc.IsClient (Right)) where-    fromClient  = Right-    toClient (Right client) = client-instance (Classes.FromPtr msg (Right)) where-    fromPtr  = RpcHelpers.isClientFromPtr-instance (Classes.ToPtr s (Right)) where-    toPtr  = RpcHelpers.isClientToPtr-instance (Classes.Decerialize (Right)) where-    type Cerial msg (Right) = (Capnp.Gen.ById.X832bcc6686a26d56.Right msg)-    decerialize (Capnp.Gen.ById.X832bcc6686a26d56.Right'newtype_ maybeCap) = case maybeCap of-        (Std_.Nothing) ->-            (Std_.pure (Right Message.nullClient))-        (Std_.Just cap) ->-            (Right <$> (Untyped.getClient cap))-instance (Classes.Cerialize s (Right)) where-    cerialize msg (Right client) = (Capnp.Gen.ById.X832bcc6686a26d56.Right'newtype_ <$> (Std_.Just <$> (Untyped.appendCap msg client)))-instance (Server.Server Std_.IO (Right))-instance (Right'server_ Std_.IO (Right)) where-    right'right (Right client) = (Rpc.clientMethodHandler 14712639595305348988 0 client)-instance (Top'server_ Std_.IO (Right)) where-    top'top (Right client) = (Rpc.clientMethodHandler 17861645508359101525 0 client)-data Right'right'params -    = Right'right'params -        {}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (Right'right'params)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Right'right'params)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Right'right'params)) where-    type Cerial msg (Right'right'params) = (Capnp.Gen.ById.X832bcc6686a26d56.Right'right'params msg)-    decerialize raw = (Std_.pure Right'right'params)-instance (Classes.Marshal s (Right'right'params)) where-    marshalInto raw_ value_ = case value_ of-        (Right'right'params) ->-            (do-                (Std_.pure ())-                )-instance (Classes.Cerialize s (Right'right'params))-instance (Classes.Cerialize s (V.Vector (Right'right'params))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Right'right'params)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Right'right'params))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Right'right'params)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Right'right'params))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Right'right'params)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Right'right'params))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data Right'right'results -    = Right'right'results -        {}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (Right'right'results)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Right'right'results)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Right'right'results)) where-    type Cerial msg (Right'right'results) = (Capnp.Gen.ById.X832bcc6686a26d56.Right'right'results msg)-    decerialize raw = (Std_.pure Right'right'results)-instance (Classes.Marshal s (Right'right'results)) where-    marshalInto raw_ value_ = case value_ of-        (Right'right'results) ->-            (do-                (Std_.pure ())-                )-instance (Classes.Cerialize s (Right'right'results))-instance (Classes.Cerialize s (V.Vector (Right'right'results))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Right'right'results)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Right'right'results))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Right'right'results)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Right'right'results))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Right'right'results)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Right'right'results))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-newtype Bottom -    = Bottom Message.Client-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-class ((MonadIO.MonadIO m)-      ,(Left'server_ m cap)-      ,(Right'server_ m cap)) => (Bottom'server_ m cap) where-    {-# MINIMAL bottom'bottom #-}-    bottom'bottom :: cap -> (Server.MethodHandler m Bottom'bottom'params Bottom'bottom'results)-    bottom'bottom _ = Server.methodUnimplemented-export_Bottom :: ((STM.MonadSTM m)-                 ,(Bottom'server_ Std_.IO cap)) => Supervisors.Supervisor -> cap -> (m (Bottom))-export_Bottom sup_ server_ = (STM.liftSTM (Bottom <$> (Rpc.export sup_ Server.ServerOps{handleCast = (Server.unwrap server_)-                                                                                       ,handleStop = (Server.shutdown server_)-                                                                                       ,handleCall = (\interfaceId_ methodId_ -> case interfaceId_ of-                                                                                           18402872613340521775 ->-                                                                                               case methodId_ of-                                                                                                   0 ->-                                                                                                       (Server.toUntypedHandler (bottom'bottom server_))-                                                                                                   _ ->-                                                                                                       Server.methodUnimplemented-                                                                                           17679152961798450446 ->-                                                                                               case methodId_ of-                                                                                                   0 ->-                                                                                                       (Server.toUntypedHandler (left'left server_))-                                                                                                   _ ->-                                                                                                       Server.methodUnimplemented-                                                                                           17861645508359101525 ->-                                                                                               case methodId_ of-                                                                                                   0 ->-                                                                                                       (Server.toUntypedHandler (top'top server_))-                                                                                                   _ ->-                                                                                                       Server.methodUnimplemented-                                                                                           14712639595305348988 ->-                                                                                               case methodId_ of-                                                                                                   0 ->-                                                                                                       (Server.toUntypedHandler (right'right server_))-                                                                                                   _ ->-                                                                                                       Server.methodUnimplemented-                                                                                           _ ->-                                                                                               Server.methodUnimplemented)})))-instance (Rpc.IsClient (Bottom)) where-    fromClient  = Bottom-    toClient (Bottom client) = client-instance (Classes.FromPtr msg (Bottom)) where-    fromPtr  = RpcHelpers.isClientFromPtr-instance (Classes.ToPtr s (Bottom)) where-    toPtr  = RpcHelpers.isClientToPtr-instance (Classes.Decerialize (Bottom)) where-    type Cerial msg (Bottom) = (Capnp.Gen.ById.X832bcc6686a26d56.Bottom msg)-    decerialize (Capnp.Gen.ById.X832bcc6686a26d56.Bottom'newtype_ maybeCap) = case maybeCap of-        (Std_.Nothing) ->-            (Std_.pure (Bottom Message.nullClient))-        (Std_.Just cap) ->-            (Bottom <$> (Untyped.getClient cap))-instance (Classes.Cerialize s (Bottom)) where-    cerialize msg (Bottom client) = (Capnp.Gen.ById.X832bcc6686a26d56.Bottom'newtype_ <$> (Std_.Just <$> (Untyped.appendCap msg client)))-instance (Server.Server Std_.IO (Bottom))-instance (Bottom'server_ Std_.IO (Bottom)) where-    bottom'bottom (Bottom client) = (Rpc.clientMethodHandler 18402872613340521775 0 client)-instance (Left'server_ Std_.IO (Bottom)) where-    left'left (Bottom client) = (Rpc.clientMethodHandler 17679152961798450446 0 client)-instance (Top'server_ Std_.IO (Bottom)) where-    top'top (Bottom client) = (Rpc.clientMethodHandler 17861645508359101525 0 client)-instance (Right'server_ Std_.IO (Bottom)) where-    right'right (Bottom client) = (Rpc.clientMethodHandler 14712639595305348988 0 client)-data Bottom'bottom'params -    = Bottom'bottom'params -        {}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (Bottom'bottom'params)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Bottom'bottom'params)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Bottom'bottom'params)) where-    type Cerial msg (Bottom'bottom'params) = (Capnp.Gen.ById.X832bcc6686a26d56.Bottom'bottom'params msg)-    decerialize raw = (Std_.pure Bottom'bottom'params)-instance (Classes.Marshal s (Bottom'bottom'params)) where-    marshalInto raw_ value_ = case value_ of-        (Bottom'bottom'params) ->-            (do-                (Std_.pure ())-                )-instance (Classes.Cerialize s (Bottom'bottom'params))-instance (Classes.Cerialize s (V.Vector (Bottom'bottom'params))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Bottom'bottom'params)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Bottom'bottom'params))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Bottom'bottom'params)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Bottom'bottom'params))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Bottom'bottom'params)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Bottom'bottom'params))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data Bottom'bottom'results -    = Bottom'bottom'results -        {}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (Bottom'bottom'results)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Bottom'bottom'results)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Bottom'bottom'results)) where-    type Cerial msg (Bottom'bottom'results) = (Capnp.Gen.ById.X832bcc6686a26d56.Bottom'bottom'results msg)-    decerialize raw = (Std_.pure Bottom'bottom'results)-instance (Classes.Marshal s (Bottom'bottom'results)) where-    marshalInto raw_ value_ = case value_ of-        (Bottom'bottom'results) ->-            (do-                (Std_.pure ())-                )-instance (Classes.Cerialize s (Bottom'bottom'results))-instance (Classes.Cerialize s (V.Vector (Bottom'bottom'results))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Bottom'bottom'results)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Bottom'bottom'results))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Bottom'bottom'results)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Bottom'bottom'results))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Bottom'bottom'results)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Bottom'bottom'results))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data Defaults -    = Defaults -        {text :: T.Text-        ,data_ :: BS.ByteString-        ,float :: Std_.Float-        ,int :: Std_.Int32-        ,uint :: Std_.Word32}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (Defaults)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (Defaults)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (Defaults)) where-    type Cerial msg (Defaults) = (Capnp.Gen.ById.X832bcc6686a26d56.Defaults msg)-    decerialize raw = (Defaults <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Defaults'text raw) >>= Classes.decerialize)-                                <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Defaults'data_ raw) >>= Classes.decerialize)-                                <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_Defaults'float raw)-                                <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_Defaults'int raw)-                                <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_Defaults'uint raw))-instance (Classes.Marshal s (Defaults)) where-    marshalInto raw_ value_ = case value_ of-        Defaults{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) text) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Defaults'text raw_))-                ((Classes.cerialize (Untyped.message raw_) data_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Defaults'data_ raw_))-                (Capnp.Gen.ById.X832bcc6686a26d56.set_Defaults'float raw_ float)-                (Capnp.Gen.ById.X832bcc6686a26d56.set_Defaults'int raw_ int)-                (Capnp.Gen.ById.X832bcc6686a26d56.set_Defaults'uint raw_ uint)-                (Std_.pure ())-                )-instance (Classes.Cerialize s (Defaults))-instance (Classes.Cerialize s (V.Vector (Defaults))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (Defaults)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (Defaults))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (Defaults)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Defaults))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Defaults)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (Defaults))))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-data BenchmarkA -    = BenchmarkA -        {name :: T.Text-        ,birthDay :: Std_.Int64-        ,phone :: T.Text-        ,siblings :: Std_.Int32-        ,spouse :: Std_.Bool-        ,money :: Std_.Double}-    deriving(Std_.Show-            ,Std_.Eq-            ,Generics.Generic)-instance (Default.Default (BenchmarkA)) where-    def  = GenHelpersPure.defaultStruct-instance (Classes.FromStruct Message.Const (BenchmarkA)) where-    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)-instance (Classes.Decerialize (BenchmarkA)) where-    type Cerial msg (BenchmarkA) = (Capnp.Gen.ById.X832bcc6686a26d56.BenchmarkA msg)-    decerialize raw = (BenchmarkA <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_BenchmarkA'name raw) >>= Classes.decerialize)-                                  <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_BenchmarkA'birthDay raw)-                                  <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_BenchmarkA'phone raw) >>= Classes.decerialize)-                                  <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_BenchmarkA'siblings raw)-                                  <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_BenchmarkA'spouse raw)-                                  <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_BenchmarkA'money raw))-instance (Classes.Marshal s (BenchmarkA)) where-    marshalInto raw_ value_ = case value_ of-        BenchmarkA{..} ->-            (do-                ((Classes.cerialize (Untyped.message raw_) name) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_BenchmarkA'name raw_))-                (Capnp.Gen.ById.X832bcc6686a26d56.set_BenchmarkA'birthDay raw_ birthDay)-                ((Classes.cerialize (Untyped.message raw_) phone) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_BenchmarkA'phone raw_))-                (Capnp.Gen.ById.X832bcc6686a26d56.set_BenchmarkA'siblings raw_ siblings)-                (Capnp.Gen.ById.X832bcc6686a26d56.set_BenchmarkA'spouse raw_ spouse)-                (Capnp.Gen.ById.X832bcc6686a26d56.set_BenchmarkA'money raw_ money)-                (Std_.pure ())-                )-instance (Classes.Cerialize s (BenchmarkA))-instance (Classes.Cerialize s (V.Vector (BenchmarkA))) where-    cerialize  = GenHelpersPure.cerializeCompositeVec-instance (Classes.Cerialize s (V.Vector (V.Vector (BenchmarkA)))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (BenchmarkA))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (BenchmarkA)))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (BenchmarkA))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (BenchmarkA)))))))) where-    cerialize  = GenHelpersPure.cerializeBasicVec-instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (BenchmarkA))))))))) where+instance (Default.Default Zdate) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const Zdate) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize Zdate) where+    type Cerial msg Zdate = (Capnp.Gen.ById.X832bcc6686a26d56.Zdate msg)+    decerialize raw = (Zdate <$> (Capnp.Gen.ById.X832bcc6686a26d56.get_Zdate'year raw)+                             <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_Zdate'month raw)+                             <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_Zdate'day raw))+instance (Classes.Marshal s Zdate) where+    marshalInto raw_ value_ = case value_ of+        Zdate{..} ->+            (do+                (Capnp.Gen.ById.X832bcc6686a26d56.set_Zdate'year raw_ year)+                (Capnp.Gen.ById.X832bcc6686a26d56.set_Zdate'month raw_ month)+                (Capnp.Gen.ById.X832bcc6686a26d56.set_Zdate'day raw_ day)+                (Std_.pure ())+                )+instance (Classes.Cerialize s Zdate)+instance (Classes.Cerialize s (V.Vector Zdate)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector Zdate))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Zdate)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Zdate))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Zdate)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Zdate))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Zdate)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data Zdata +    = Zdata +        {data_ :: BS.ByteString}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default Zdata) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const Zdata) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize Zdata) where+    type Cerial msg Zdata = (Capnp.Gen.ById.X832bcc6686a26d56.Zdata msg)+    decerialize raw = (Zdata <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Zdata'data_ raw) >>= Classes.decerialize))+instance (Classes.Marshal s Zdata) where+    marshalInto raw_ value_ = case value_ of+        Zdata{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) data_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Zdata'data_ raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s Zdata)+instance (Classes.Cerialize s (V.Vector Zdata)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector Zdata))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Zdata)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Zdata))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Zdata)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Zdata))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Zdata)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data PlaneBase +    = PlaneBase +        {name :: T.Text+        ,homes :: (V.Vector Capnp.Gen.ById.X832bcc6686a26d56.Airport)+        ,rating :: Std_.Int64+        ,canFly :: Std_.Bool+        ,capacity :: Std_.Int64+        ,maxSpeed :: Std_.Double}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default PlaneBase) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const PlaneBase) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize PlaneBase) where+    type Cerial msg PlaneBase = (Capnp.Gen.ById.X832bcc6686a26d56.PlaneBase msg)+    decerialize raw = (PlaneBase <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_PlaneBase'name raw) >>= Classes.decerialize)+                                 <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_PlaneBase'homes raw) >>= Classes.decerialize)+                                 <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_PlaneBase'rating raw)+                                 <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_PlaneBase'canFly raw)+                                 <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_PlaneBase'capacity raw)+                                 <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_PlaneBase'maxSpeed raw))+instance (Classes.Marshal s PlaneBase) where+    marshalInto raw_ value_ = case value_ of+        PlaneBase{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) name) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_PlaneBase'name raw_))+                ((Classes.cerialize (Untyped.message raw_) homes) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_PlaneBase'homes raw_))+                (Capnp.Gen.ById.X832bcc6686a26d56.set_PlaneBase'rating raw_ rating)+                (Capnp.Gen.ById.X832bcc6686a26d56.set_PlaneBase'canFly raw_ canFly)+                (Capnp.Gen.ById.X832bcc6686a26d56.set_PlaneBase'capacity raw_ capacity)+                (Capnp.Gen.ById.X832bcc6686a26d56.set_PlaneBase'maxSpeed raw_ maxSpeed)+                (Std_.pure ())+                )+instance (Classes.Cerialize s PlaneBase)+instance (Classes.Cerialize s (V.Vector PlaneBase)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector PlaneBase))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector PlaneBase)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector PlaneBase))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector PlaneBase)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector PlaneBase))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector PlaneBase)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data B737 +    = B737 +        {base :: PlaneBase}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default B737) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const B737) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize B737) where+    type Cerial msg B737 = (Capnp.Gen.ById.X832bcc6686a26d56.B737 msg)+    decerialize raw = (B737 <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_B737'base raw) >>= Classes.decerialize))+instance (Classes.Marshal s B737) where+    marshalInto raw_ value_ = case value_ of+        B737{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) base) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_B737'base raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s B737)+instance (Classes.Cerialize s (V.Vector B737)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector B737))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector B737)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector B737))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector B737)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector B737))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector B737)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data A320 +    = A320 +        {base :: PlaneBase}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default A320) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const A320) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize A320) where+    type Cerial msg A320 = (Capnp.Gen.ById.X832bcc6686a26d56.A320 msg)+    decerialize raw = (A320 <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_A320'base raw) >>= Classes.decerialize))+instance (Classes.Marshal s A320) where+    marshalInto raw_ value_ = case value_ of+        A320{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) base) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_A320'base raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s A320)+instance (Classes.Cerialize s (V.Vector A320)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector A320))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector A320)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector A320))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector A320)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector A320))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector A320)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data F16 +    = F16 +        {base :: PlaneBase}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default F16) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const F16) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize F16) where+    type Cerial msg F16 = (Capnp.Gen.ById.X832bcc6686a26d56.F16 msg)+    decerialize raw = (F16 <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_F16'base raw) >>= Classes.decerialize))+instance (Classes.Marshal s F16) where+    marshalInto raw_ value_ = case value_ of+        F16{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) base) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_F16'base raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s F16)+instance (Classes.Cerialize s (V.Vector F16)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector F16))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector F16)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector F16))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector F16)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector F16))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector F16)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data Regression +    = Regression +        {base :: PlaneBase+        ,b0 :: Std_.Double+        ,beta :: (V.Vector Std_.Double)+        ,planes :: (V.Vector Aircraft)+        ,ymu :: Std_.Double+        ,ysd :: Std_.Double}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default Regression) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const Regression) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize Regression) where+    type Cerial msg Regression = (Capnp.Gen.ById.X832bcc6686a26d56.Regression msg)+    decerialize raw = (Regression <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Regression'base raw) >>= Classes.decerialize)+                                  <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_Regression'b0 raw)+                                  <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Regression'beta raw) >>= Classes.decerialize)+                                  <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Regression'planes raw) >>= Classes.decerialize)+                                  <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_Regression'ymu raw)+                                  <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_Regression'ysd raw))+instance (Classes.Marshal s Regression) where+    marshalInto raw_ value_ = case value_ of+        Regression{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) base) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Regression'base raw_))+                (Capnp.Gen.ById.X832bcc6686a26d56.set_Regression'b0 raw_ b0)+                ((Classes.cerialize (Untyped.message raw_) beta) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Regression'beta raw_))+                ((Classes.cerialize (Untyped.message raw_) planes) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Regression'planes raw_))+                (Capnp.Gen.ById.X832bcc6686a26d56.set_Regression'ymu raw_ ymu)+                (Capnp.Gen.ById.X832bcc6686a26d56.set_Regression'ysd raw_ ysd)+                (Std_.pure ())+                )+instance (Classes.Cerialize s Regression)+instance (Classes.Cerialize s (V.Vector Regression)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector Regression))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Regression)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Regression))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Regression)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Regression))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Regression)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data Aircraft +    = Aircraft'void +    | Aircraft'b737 B737+    | Aircraft'a320 A320+    | Aircraft'f16 F16+    | Aircraft'unknown' Std_.Word16+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default Aircraft) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const Aircraft) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize Aircraft) where+    type Cerial msg Aircraft = (Capnp.Gen.ById.X832bcc6686a26d56.Aircraft msg)+    decerialize raw = (do+        raw <- (Capnp.Gen.ById.X832bcc6686a26d56.get_Aircraft' raw)+        case raw of+            (Capnp.Gen.ById.X832bcc6686a26d56.Aircraft'void) ->+                (Std_.pure Aircraft'void)+            (Capnp.Gen.ById.X832bcc6686a26d56.Aircraft'b737 raw) ->+                (Aircraft'b737 <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Aircraft'a320 raw) ->+                (Aircraft'a320 <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Aircraft'f16 raw) ->+                (Aircraft'f16 <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Aircraft'unknown' tag) ->+                (Std_.pure (Aircraft'unknown' tag))+        )+instance (Classes.Marshal s Aircraft) where+    marshalInto raw_ value_ = case value_ of+        (Aircraft'void) ->+            (Capnp.Gen.ById.X832bcc6686a26d56.set_Aircraft'void raw_)+        (Aircraft'b737 arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Aircraft'b737 raw_))+        (Aircraft'a320 arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Aircraft'a320 raw_))+        (Aircraft'f16 arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Aircraft'f16 raw_))+        (Aircraft'unknown' tag) ->+            (Capnp.Gen.ById.X832bcc6686a26d56.set_Aircraft'unknown' raw_ tag)+instance (Classes.Cerialize s Aircraft)+instance (Classes.Cerialize s (V.Vector Aircraft)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector Aircraft))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Aircraft)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Aircraft))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Aircraft)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Aircraft))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Aircraft)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data Z +    = Z'void +    | Z'zz Z+    | Z'f64 Std_.Double+    | Z'f32 Std_.Float+    | Z'i64 Std_.Int64+    | Z'i32 Std_.Int32+    | Z'i16 Std_.Int16+    | Z'i8 Std_.Int8+    | Z'u64 Std_.Word64+    | Z'u32 Std_.Word32+    | Z'u16 Std_.Word16+    | Z'u8 Std_.Word8+    | Z'bool Std_.Bool+    | Z'text T.Text+    | Z'blob BS.ByteString+    | Z'f64vec (V.Vector Std_.Double)+    | Z'f32vec (V.Vector Std_.Float)+    | Z'i64vec (V.Vector Std_.Int64)+    | Z'i32vec (V.Vector Std_.Int32)+    | Z'i16vec (V.Vector Std_.Int16)+    | Z'i8vec (V.Vector Std_.Int8)+    | Z'u64vec (V.Vector Std_.Word64)+    | Z'u32vec (V.Vector Std_.Word32)+    | Z'u16vec (V.Vector Std_.Word16)+    | Z'u8vec (V.Vector Std_.Word8)+    | Z'zvec (V.Vector Z)+    | Z'zvecvec (V.Vector (V.Vector Z))+    | Z'zdate Zdate+    | Z'zdata Zdata+    | Z'aircraftvec (V.Vector Aircraft)+    | Z'aircraft Aircraft+    | Z'regression Regression+    | Z'planebase PlaneBase+    | Z'airport Capnp.Gen.ById.X832bcc6686a26d56.Airport+    | Z'b737 B737+    | Z'a320 A320+    | Z'f16 F16+    | Z'zdatevec (V.Vector Zdate)+    | Z'zdatavec (V.Vector Zdata)+    | Z'boolvec (V.Vector Std_.Bool)+    | Z'datavec (V.Vector BS.ByteString)+    | Z'textvec (V.Vector T.Text)+    | Z'grp Z'grp+    | Z'echo Echo+    | Z'echoBases EchoBases+    | Z'unknown' Std_.Word16+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default Z) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const Z) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize Z) where+    type Cerial msg Z = (Capnp.Gen.ById.X832bcc6686a26d56.Z msg)+    decerialize raw = (do+        raw <- (Capnp.Gen.ById.X832bcc6686a26d56.get_Z' raw)+        case raw of+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'void) ->+                (Std_.pure Z'void)+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'zz raw) ->+                (Z'zz <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'f64 raw) ->+                (Std_.pure (Z'f64 raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'f32 raw) ->+                (Std_.pure (Z'f32 raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'i64 raw) ->+                (Std_.pure (Z'i64 raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'i32 raw) ->+                (Std_.pure (Z'i32 raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'i16 raw) ->+                (Std_.pure (Z'i16 raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'i8 raw) ->+                (Std_.pure (Z'i8 raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'u64 raw) ->+                (Std_.pure (Z'u64 raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'u32 raw) ->+                (Std_.pure (Z'u32 raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'u16 raw) ->+                (Std_.pure (Z'u16 raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'u8 raw) ->+                (Std_.pure (Z'u8 raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'bool raw) ->+                (Std_.pure (Z'bool raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'text raw) ->+                (Z'text <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'blob raw) ->+                (Z'blob <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'f64vec raw) ->+                (Z'f64vec <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'f32vec raw) ->+                (Z'f32vec <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'i64vec raw) ->+                (Z'i64vec <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'i32vec raw) ->+                (Z'i32vec <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'i16vec raw) ->+                (Z'i16vec <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'i8vec raw) ->+                (Z'i8vec <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'u64vec raw) ->+                (Z'u64vec <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'u32vec raw) ->+                (Z'u32vec <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'u16vec raw) ->+                (Z'u16vec <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'u8vec raw) ->+                (Z'u8vec <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'zvec raw) ->+                (Z'zvec <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'zvecvec raw) ->+                (Z'zvecvec <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'zdate raw) ->+                (Z'zdate <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'zdata raw) ->+                (Z'zdata <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'aircraftvec raw) ->+                (Z'aircraftvec <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'aircraft raw) ->+                (Z'aircraft <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'regression raw) ->+                (Z'regression <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'planebase raw) ->+                (Z'planebase <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'airport raw) ->+                (Std_.pure (Z'airport raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'b737 raw) ->+                (Z'b737 <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'a320 raw) ->+                (Z'a320 <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'f16 raw) ->+                (Z'f16 <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'zdatevec raw) ->+                (Z'zdatevec <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'zdatavec raw) ->+                (Z'zdatavec <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'boolvec raw) ->+                (Z'boolvec <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'datavec raw) ->+                (Z'datavec <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'textvec raw) ->+                (Z'textvec <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'grp raw) ->+                (Z'grp <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'echo raw) ->+                (Z'echo <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'echoBases raw) ->+                (Z'echoBases <$> (Classes.decerialize raw))+            (Capnp.Gen.ById.X832bcc6686a26d56.Z'unknown' tag) ->+                (Std_.pure (Z'unknown' tag))+        )+instance (Classes.Marshal s Z) where+    marshalInto raw_ value_ = case value_ of+        (Z'void) ->+            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'void raw_)+        (Z'zz arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'zz raw_))+        (Z'f64 arg_) ->+            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'f64 raw_ arg_)+        (Z'f32 arg_) ->+            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'f32 raw_ arg_)+        (Z'i64 arg_) ->+            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'i64 raw_ arg_)+        (Z'i32 arg_) ->+            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'i32 raw_ arg_)+        (Z'i16 arg_) ->+            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'i16 raw_ arg_)+        (Z'i8 arg_) ->+            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'i8 raw_ arg_)+        (Z'u64 arg_) ->+            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'u64 raw_ arg_)+        (Z'u32 arg_) ->+            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'u32 raw_ arg_)+        (Z'u16 arg_) ->+            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'u16 raw_ arg_)+        (Z'u8 arg_) ->+            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'u8 raw_ arg_)+        (Z'bool arg_) ->+            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'bool raw_ arg_)+        (Z'text arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'text raw_))+        (Z'blob arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'blob raw_))+        (Z'f64vec arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'f64vec raw_))+        (Z'f32vec arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'f32vec raw_))+        (Z'i64vec arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'i64vec raw_))+        (Z'i32vec arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'i32vec raw_))+        (Z'i16vec arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'i16vec raw_))+        (Z'i8vec arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'i8vec raw_))+        (Z'u64vec arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'u64vec raw_))+        (Z'u32vec arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'u32vec raw_))+        (Z'u16vec arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'u16vec raw_))+        (Z'u8vec arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'u8vec raw_))+        (Z'zvec arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'zvec raw_))+        (Z'zvecvec arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'zvecvec raw_))+        (Z'zdate arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'zdate raw_))+        (Z'zdata arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'zdata raw_))+        (Z'aircraftvec arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'aircraftvec raw_))+        (Z'aircraft arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'aircraft raw_))+        (Z'regression arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'regression raw_))+        (Z'planebase arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'planebase raw_))+        (Z'airport arg_) ->+            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'airport raw_ arg_)+        (Z'b737 arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'b737 raw_))+        (Z'a320 arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'a320 raw_))+        (Z'f16 arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'f16 raw_))+        (Z'zdatevec arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'zdatevec raw_))+        (Z'zdatavec arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'zdatavec raw_))+        (Z'boolvec arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'boolvec raw_))+        (Z'datavec arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'datavec raw_))+        (Z'textvec arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'textvec raw_))+        (Z'grp arg_) ->+            (do+                raw_ <- (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'grp raw_)+                (Classes.marshalInto raw_ arg_)+                )+        (Z'echo arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'echo raw_))+        (Z'echoBases arg_) ->+            ((Classes.cerialize (Untyped.message raw_) arg_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'echoBases raw_))+        (Z'unknown' tag) ->+            (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'unknown' raw_ tag)+instance (Classes.Cerialize s Z)+instance (Classes.Cerialize s (V.Vector Z)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector Z))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Z)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Z))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Z)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Z))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Z)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data Z'grp +    = Z'grp' +        {first :: Std_.Word64+        ,second :: Std_.Word64}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default Z'grp) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const Z'grp) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize Z'grp) where+    type Cerial msg Z'grp = (Capnp.Gen.ById.X832bcc6686a26d56.Z'grp msg)+    decerialize raw = (Z'grp' <$> (Capnp.Gen.ById.X832bcc6686a26d56.get_Z'grp'first raw)+                              <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_Z'grp'second raw))+instance (Classes.Marshal s Z'grp) where+    marshalInto raw_ value_ = case value_ of+        Z'grp'{..} ->+            (do+                (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'grp'first raw_ first)+                (Capnp.Gen.ById.X832bcc6686a26d56.set_Z'grp'second raw_ second)+                (Std_.pure ())+                )+data Counter +    = Counter +        {size :: Std_.Int64+        ,words :: T.Text+        ,wordlist :: (V.Vector T.Text)}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default Counter) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const Counter) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize Counter) where+    type Cerial msg Counter = (Capnp.Gen.ById.X832bcc6686a26d56.Counter msg)+    decerialize raw = (Counter <$> (Capnp.Gen.ById.X832bcc6686a26d56.get_Counter'size raw)+                               <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Counter'words raw) >>= Classes.decerialize)+                               <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Counter'wordlist raw) >>= Classes.decerialize))+instance (Classes.Marshal s Counter) where+    marshalInto raw_ value_ = case value_ of+        Counter{..} ->+            (do+                (Capnp.Gen.ById.X832bcc6686a26d56.set_Counter'size raw_ size)+                ((Classes.cerialize (Untyped.message raw_) words) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Counter'words raw_))+                ((Classes.cerialize (Untyped.message raw_) wordlist) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Counter'wordlist raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s Counter)+instance (Classes.Cerialize s (V.Vector Counter)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector Counter))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Counter)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Counter))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Counter)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Counter))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Counter)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data Bag +    = Bag +        {counter :: Counter}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default Bag) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const Bag) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize Bag) where+    type Cerial msg Bag = (Capnp.Gen.ById.X832bcc6686a26d56.Bag msg)+    decerialize raw = (Bag <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Bag'counter raw) >>= Classes.decerialize))+instance (Classes.Marshal s Bag) where+    marshalInto raw_ value_ = case value_ of+        Bag{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) counter) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Bag'counter raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s Bag)+instance (Classes.Cerialize s (V.Vector Bag)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector Bag))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Bag)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Bag))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Bag)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Bag))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Bag)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data Zserver +    = Zserver +        {waitingjobs :: (V.Vector Zjob)}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default Zserver) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const Zserver) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize Zserver) where+    type Cerial msg Zserver = (Capnp.Gen.ById.X832bcc6686a26d56.Zserver msg)+    decerialize raw = (Zserver <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Zserver'waitingjobs raw) >>= Classes.decerialize))+instance (Classes.Marshal s Zserver) where+    marshalInto raw_ value_ = case value_ of+        Zserver{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) waitingjobs) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Zserver'waitingjobs raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s Zserver)+instance (Classes.Cerialize s (V.Vector Zserver)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector Zserver))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Zserver)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Zserver))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Zserver)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Zserver))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Zserver)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data Zjob +    = Zjob +        {cmd :: T.Text+        ,args :: (V.Vector T.Text)}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default Zjob) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const Zjob) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize Zjob) where+    type Cerial msg Zjob = (Capnp.Gen.ById.X832bcc6686a26d56.Zjob msg)+    decerialize raw = (Zjob <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Zjob'cmd raw) >>= Classes.decerialize)+                            <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Zjob'args raw) >>= Classes.decerialize))+instance (Classes.Marshal s Zjob) where+    marshalInto raw_ value_ = case value_ of+        Zjob{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) cmd) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Zjob'cmd raw_))+                ((Classes.cerialize (Untyped.message raw_) args) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Zjob'args raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s Zjob)+instance (Classes.Cerialize s (V.Vector Zjob)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector Zjob))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Zjob)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Zjob))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Zjob)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Zjob))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Zjob)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data VerEmpty +    = VerEmpty +        {}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default VerEmpty) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const VerEmpty) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize VerEmpty) where+    type Cerial msg VerEmpty = (Capnp.Gen.ById.X832bcc6686a26d56.VerEmpty msg)+    decerialize raw = (Std_.pure VerEmpty)+instance (Classes.Marshal s VerEmpty) where+    marshalInto raw_ value_ = case value_ of+        (VerEmpty) ->+            (do+                (Std_.pure ())+                )+instance (Classes.Cerialize s VerEmpty)+instance (Classes.Cerialize s (V.Vector VerEmpty)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector VerEmpty))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector VerEmpty)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector VerEmpty))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VerEmpty)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VerEmpty))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VerEmpty)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data VerOneData +    = VerOneData +        {val :: Std_.Int16}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default VerOneData) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const VerOneData) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize VerOneData) where+    type Cerial msg VerOneData = (Capnp.Gen.ById.X832bcc6686a26d56.VerOneData msg)+    decerialize raw = (VerOneData <$> (Capnp.Gen.ById.X832bcc6686a26d56.get_VerOneData'val raw))+instance (Classes.Marshal s VerOneData) where+    marshalInto raw_ value_ = case value_ of+        VerOneData{..} ->+            (do+                (Capnp.Gen.ById.X832bcc6686a26d56.set_VerOneData'val raw_ val)+                (Std_.pure ())+                )+instance (Classes.Cerialize s VerOneData)+instance (Classes.Cerialize s (V.Vector VerOneData)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector VerOneData))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector VerOneData)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector VerOneData))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VerOneData)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VerOneData))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VerOneData)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data VerTwoData +    = VerTwoData +        {val :: Std_.Int16+        ,duo :: Std_.Int64}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default VerTwoData) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const VerTwoData) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize VerTwoData) where+    type Cerial msg VerTwoData = (Capnp.Gen.ById.X832bcc6686a26d56.VerTwoData msg)+    decerialize raw = (VerTwoData <$> (Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoData'val raw)+                                  <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoData'duo raw))+instance (Classes.Marshal s VerTwoData) where+    marshalInto raw_ value_ = case value_ of+        VerTwoData{..} ->+            (do+                (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoData'val raw_ val)+                (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoData'duo raw_ duo)+                (Std_.pure ())+                )+instance (Classes.Cerialize s VerTwoData)+instance (Classes.Cerialize s (V.Vector VerTwoData)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector VerTwoData))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector VerTwoData)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector VerTwoData))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VerTwoData)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VerTwoData))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VerTwoData)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data VerOnePtr +    = VerOnePtr +        {ptr :: VerOneData}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default VerOnePtr) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const VerOnePtr) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize VerOnePtr) where+    type Cerial msg VerOnePtr = (Capnp.Gen.ById.X832bcc6686a26d56.VerOnePtr msg)+    decerialize raw = (VerOnePtr <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_VerOnePtr'ptr raw) >>= Classes.decerialize))+instance (Classes.Marshal s VerOnePtr) where+    marshalInto raw_ value_ = case value_ of+        VerOnePtr{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) ptr) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_VerOnePtr'ptr raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s VerOnePtr)+instance (Classes.Cerialize s (V.Vector VerOnePtr)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector VerOnePtr))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector VerOnePtr)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector VerOnePtr))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VerOnePtr)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VerOnePtr))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VerOnePtr)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data VerTwoPtr +    = VerTwoPtr +        {ptr1 :: VerOneData+        ,ptr2 :: VerOneData}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default VerTwoPtr) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const VerTwoPtr) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize VerTwoPtr) where+    type Cerial msg VerTwoPtr = (Capnp.Gen.ById.X832bcc6686a26d56.VerTwoPtr msg)+    decerialize raw = (VerTwoPtr <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoPtr'ptr1 raw) >>= Classes.decerialize)+                                 <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoPtr'ptr2 raw) >>= Classes.decerialize))+instance (Classes.Marshal s VerTwoPtr) where+    marshalInto raw_ value_ = case value_ of+        VerTwoPtr{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) ptr1) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoPtr'ptr1 raw_))+                ((Classes.cerialize (Untyped.message raw_) ptr2) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoPtr'ptr2 raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s VerTwoPtr)+instance (Classes.Cerialize s (V.Vector VerTwoPtr)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector VerTwoPtr))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector VerTwoPtr)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector VerTwoPtr))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VerTwoPtr)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VerTwoPtr))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VerTwoPtr)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data VerTwoDataTwoPtr +    = VerTwoDataTwoPtr +        {val :: Std_.Int16+        ,duo :: Std_.Int64+        ,ptr1 :: VerOneData+        ,ptr2 :: VerOneData}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default VerTwoDataTwoPtr) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const VerTwoDataTwoPtr) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize VerTwoDataTwoPtr) where+    type Cerial msg VerTwoDataTwoPtr = (Capnp.Gen.ById.X832bcc6686a26d56.VerTwoDataTwoPtr msg)+    decerialize raw = (VerTwoDataTwoPtr <$> (Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoDataTwoPtr'val raw)+                                        <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoDataTwoPtr'duo raw)+                                        <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoDataTwoPtr'ptr1 raw) >>= Classes.decerialize)+                                        <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoDataTwoPtr'ptr2 raw) >>= Classes.decerialize))+instance (Classes.Marshal s VerTwoDataTwoPtr) where+    marshalInto raw_ value_ = case value_ of+        VerTwoDataTwoPtr{..} ->+            (do+                (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoDataTwoPtr'val raw_ val)+                (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoDataTwoPtr'duo raw_ duo)+                ((Classes.cerialize (Untyped.message raw_) ptr1) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoDataTwoPtr'ptr1 raw_))+                ((Classes.cerialize (Untyped.message raw_) ptr2) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoDataTwoPtr'ptr2 raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s VerTwoDataTwoPtr)+instance (Classes.Cerialize s (V.Vector VerTwoDataTwoPtr)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector VerTwoDataTwoPtr))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector VerTwoDataTwoPtr)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector VerTwoDataTwoPtr))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VerTwoDataTwoPtr)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VerTwoDataTwoPtr))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VerTwoDataTwoPtr)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data HoldsVerEmptyList +    = HoldsVerEmptyList +        {mylist :: (V.Vector VerEmpty)}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default HoldsVerEmptyList) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const HoldsVerEmptyList) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize HoldsVerEmptyList) where+    type Cerial msg HoldsVerEmptyList = (Capnp.Gen.ById.X832bcc6686a26d56.HoldsVerEmptyList msg)+    decerialize raw = (HoldsVerEmptyList <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_HoldsVerEmptyList'mylist raw) >>= Classes.decerialize))+instance (Classes.Marshal s HoldsVerEmptyList) where+    marshalInto raw_ value_ = case value_ of+        HoldsVerEmptyList{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) mylist) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_HoldsVerEmptyList'mylist raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s HoldsVerEmptyList)+instance (Classes.Cerialize s (V.Vector HoldsVerEmptyList)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector HoldsVerEmptyList))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector HoldsVerEmptyList)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerEmptyList))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerEmptyList)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerEmptyList))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerEmptyList)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data HoldsVerOneDataList +    = HoldsVerOneDataList +        {mylist :: (V.Vector VerOneData)}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default HoldsVerOneDataList) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const HoldsVerOneDataList) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize HoldsVerOneDataList) where+    type Cerial msg HoldsVerOneDataList = (Capnp.Gen.ById.X832bcc6686a26d56.HoldsVerOneDataList msg)+    decerialize raw = (HoldsVerOneDataList <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_HoldsVerOneDataList'mylist raw) >>= Classes.decerialize))+instance (Classes.Marshal s HoldsVerOneDataList) where+    marshalInto raw_ value_ = case value_ of+        HoldsVerOneDataList{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) mylist) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_HoldsVerOneDataList'mylist raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s HoldsVerOneDataList)+instance (Classes.Cerialize s (V.Vector HoldsVerOneDataList)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector HoldsVerOneDataList))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector HoldsVerOneDataList)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerOneDataList))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerOneDataList)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerOneDataList))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerOneDataList)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data HoldsVerTwoDataList +    = HoldsVerTwoDataList +        {mylist :: (V.Vector VerTwoData)}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default HoldsVerTwoDataList) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const HoldsVerTwoDataList) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize HoldsVerTwoDataList) where+    type Cerial msg HoldsVerTwoDataList = (Capnp.Gen.ById.X832bcc6686a26d56.HoldsVerTwoDataList msg)+    decerialize raw = (HoldsVerTwoDataList <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_HoldsVerTwoDataList'mylist raw) >>= Classes.decerialize))+instance (Classes.Marshal s HoldsVerTwoDataList) where+    marshalInto raw_ value_ = case value_ of+        HoldsVerTwoDataList{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) mylist) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_HoldsVerTwoDataList'mylist raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s HoldsVerTwoDataList)+instance (Classes.Cerialize s (V.Vector HoldsVerTwoDataList)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector HoldsVerTwoDataList))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector HoldsVerTwoDataList)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerTwoDataList))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerTwoDataList)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerTwoDataList))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerTwoDataList)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data HoldsVerOnePtrList +    = HoldsVerOnePtrList +        {mylist :: (V.Vector VerOnePtr)}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default HoldsVerOnePtrList) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const HoldsVerOnePtrList) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize HoldsVerOnePtrList) where+    type Cerial msg HoldsVerOnePtrList = (Capnp.Gen.ById.X832bcc6686a26d56.HoldsVerOnePtrList msg)+    decerialize raw = (HoldsVerOnePtrList <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_HoldsVerOnePtrList'mylist raw) >>= Classes.decerialize))+instance (Classes.Marshal s HoldsVerOnePtrList) where+    marshalInto raw_ value_ = case value_ of+        HoldsVerOnePtrList{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) mylist) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_HoldsVerOnePtrList'mylist raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s HoldsVerOnePtrList)+instance (Classes.Cerialize s (V.Vector HoldsVerOnePtrList)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector HoldsVerOnePtrList))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector HoldsVerOnePtrList)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerOnePtrList))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerOnePtrList)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerOnePtrList))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerOnePtrList)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data HoldsVerTwoPtrList +    = HoldsVerTwoPtrList +        {mylist :: (V.Vector VerTwoPtr)}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default HoldsVerTwoPtrList) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const HoldsVerTwoPtrList) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize HoldsVerTwoPtrList) where+    type Cerial msg HoldsVerTwoPtrList = (Capnp.Gen.ById.X832bcc6686a26d56.HoldsVerTwoPtrList msg)+    decerialize raw = (HoldsVerTwoPtrList <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_HoldsVerTwoPtrList'mylist raw) >>= Classes.decerialize))+instance (Classes.Marshal s HoldsVerTwoPtrList) where+    marshalInto raw_ value_ = case value_ of+        HoldsVerTwoPtrList{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) mylist) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_HoldsVerTwoPtrList'mylist raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s HoldsVerTwoPtrList)+instance (Classes.Cerialize s (V.Vector HoldsVerTwoPtrList)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector HoldsVerTwoPtrList))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector HoldsVerTwoPtrList)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerTwoPtrList))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerTwoPtrList)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerTwoPtrList))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerTwoPtrList)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data HoldsVerTwoTwoList +    = HoldsVerTwoTwoList +        {mylist :: (V.Vector VerTwoDataTwoPtr)}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default HoldsVerTwoTwoList) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const HoldsVerTwoTwoList) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize HoldsVerTwoTwoList) where+    type Cerial msg HoldsVerTwoTwoList = (Capnp.Gen.ById.X832bcc6686a26d56.HoldsVerTwoTwoList msg)+    decerialize raw = (HoldsVerTwoTwoList <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_HoldsVerTwoTwoList'mylist raw) >>= Classes.decerialize))+instance (Classes.Marshal s HoldsVerTwoTwoList) where+    marshalInto raw_ value_ = case value_ of+        HoldsVerTwoTwoList{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) mylist) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_HoldsVerTwoTwoList'mylist raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s HoldsVerTwoTwoList)+instance (Classes.Cerialize s (V.Vector HoldsVerTwoTwoList)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector HoldsVerTwoTwoList))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector HoldsVerTwoTwoList)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerTwoTwoList))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerTwoTwoList)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerTwoTwoList))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerTwoTwoList)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data HoldsVerTwoTwoPlus +    = HoldsVerTwoTwoPlus +        {mylist :: (V.Vector VerTwoTwoPlus)}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default HoldsVerTwoTwoPlus) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const HoldsVerTwoTwoPlus) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize HoldsVerTwoTwoPlus) where+    type Cerial msg HoldsVerTwoTwoPlus = (Capnp.Gen.ById.X832bcc6686a26d56.HoldsVerTwoTwoPlus msg)+    decerialize raw = (HoldsVerTwoTwoPlus <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_HoldsVerTwoTwoPlus'mylist raw) >>= Classes.decerialize))+instance (Classes.Marshal s HoldsVerTwoTwoPlus) where+    marshalInto raw_ value_ = case value_ of+        HoldsVerTwoTwoPlus{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) mylist) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_HoldsVerTwoTwoPlus'mylist raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s HoldsVerTwoTwoPlus)+instance (Classes.Cerialize s (V.Vector HoldsVerTwoTwoPlus)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector HoldsVerTwoTwoPlus))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector HoldsVerTwoTwoPlus)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerTwoTwoPlus))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerTwoTwoPlus)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerTwoTwoPlus))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector HoldsVerTwoTwoPlus)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data VerTwoTwoPlus +    = VerTwoTwoPlus +        {val :: Std_.Int16+        ,duo :: Std_.Int64+        ,ptr1 :: VerTwoDataTwoPtr+        ,ptr2 :: VerTwoDataTwoPtr+        ,tre :: Std_.Int64+        ,lst3 :: (V.Vector Std_.Int64)}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default VerTwoTwoPlus) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const VerTwoTwoPlus) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize VerTwoTwoPlus) where+    type Cerial msg VerTwoTwoPlus = (Capnp.Gen.ById.X832bcc6686a26d56.VerTwoTwoPlus msg)+    decerialize raw = (VerTwoTwoPlus <$> (Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoTwoPlus'val raw)+                                     <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoTwoPlus'duo raw)+                                     <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoTwoPlus'ptr1 raw) >>= Classes.decerialize)+                                     <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoTwoPlus'ptr2 raw) >>= Classes.decerialize)+                                     <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoTwoPlus'tre raw)+                                     <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_VerTwoTwoPlus'lst3 raw) >>= Classes.decerialize))+instance (Classes.Marshal s VerTwoTwoPlus) where+    marshalInto raw_ value_ = case value_ of+        VerTwoTwoPlus{..} ->+            (do+                (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoTwoPlus'val raw_ val)+                (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoTwoPlus'duo raw_ duo)+                ((Classes.cerialize (Untyped.message raw_) ptr1) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoTwoPlus'ptr1 raw_))+                ((Classes.cerialize (Untyped.message raw_) ptr2) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoTwoPlus'ptr2 raw_))+                (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoTwoPlus'tre raw_ tre)+                ((Classes.cerialize (Untyped.message raw_) lst3) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_VerTwoTwoPlus'lst3 raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s VerTwoTwoPlus)+instance (Classes.Cerialize s (V.Vector VerTwoTwoPlus)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector VerTwoTwoPlus))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector VerTwoTwoPlus)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector VerTwoTwoPlus))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VerTwoTwoPlus)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VerTwoTwoPlus))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VerTwoTwoPlus)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data HoldsText +    = HoldsText +        {txt :: T.Text+        ,lst :: (V.Vector T.Text)+        ,lstlst :: (V.Vector (V.Vector T.Text))}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default HoldsText) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const HoldsText) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize HoldsText) where+    type Cerial msg HoldsText = (Capnp.Gen.ById.X832bcc6686a26d56.HoldsText msg)+    decerialize raw = (HoldsText <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_HoldsText'txt raw) >>= Classes.decerialize)+                                 <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_HoldsText'lst raw) >>= Classes.decerialize)+                                 <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_HoldsText'lstlst raw) >>= Classes.decerialize))+instance (Classes.Marshal s HoldsText) where+    marshalInto raw_ value_ = case value_ of+        HoldsText{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) txt) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_HoldsText'txt raw_))+                ((Classes.cerialize (Untyped.message raw_) lst) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_HoldsText'lst raw_))+                ((Classes.cerialize (Untyped.message raw_) lstlst) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_HoldsText'lstlst raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s HoldsText)+instance (Classes.Cerialize s (V.Vector HoldsText)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector HoldsText))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector HoldsText)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector HoldsText))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector HoldsText)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector HoldsText))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector HoldsText)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data WrapEmpty +    = WrapEmpty +        {mightNotBeReallyEmpty :: VerEmpty}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default WrapEmpty) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const WrapEmpty) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize WrapEmpty) where+    type Cerial msg WrapEmpty = (Capnp.Gen.ById.X832bcc6686a26d56.WrapEmpty msg)+    decerialize raw = (WrapEmpty <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_WrapEmpty'mightNotBeReallyEmpty raw) >>= Classes.decerialize))+instance (Classes.Marshal s WrapEmpty) where+    marshalInto raw_ value_ = case value_ of+        WrapEmpty{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) mightNotBeReallyEmpty) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_WrapEmpty'mightNotBeReallyEmpty raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s WrapEmpty)+instance (Classes.Cerialize s (V.Vector WrapEmpty)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector WrapEmpty))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector WrapEmpty)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector WrapEmpty))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector WrapEmpty)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector WrapEmpty))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector WrapEmpty)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data Wrap2x2 +    = Wrap2x2 +        {mightNotBeReallyEmpty :: VerTwoDataTwoPtr}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default Wrap2x2) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const Wrap2x2) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize Wrap2x2) where+    type Cerial msg Wrap2x2 = (Capnp.Gen.ById.X832bcc6686a26d56.Wrap2x2 msg)+    decerialize raw = (Wrap2x2 <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Wrap2x2'mightNotBeReallyEmpty raw) >>= Classes.decerialize))+instance (Classes.Marshal s Wrap2x2) where+    marshalInto raw_ value_ = case value_ of+        Wrap2x2{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) mightNotBeReallyEmpty) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Wrap2x2'mightNotBeReallyEmpty raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s Wrap2x2)+instance (Classes.Cerialize s (V.Vector Wrap2x2)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector Wrap2x2))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Wrap2x2)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Wrap2x2))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Wrap2x2)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Wrap2x2))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Wrap2x2)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data Wrap2x2plus +    = Wrap2x2plus +        {mightNotBeReallyEmpty :: VerTwoTwoPlus}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default Wrap2x2plus) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const Wrap2x2plus) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize Wrap2x2plus) where+    type Cerial msg Wrap2x2plus = (Capnp.Gen.ById.X832bcc6686a26d56.Wrap2x2plus msg)+    decerialize raw = (Wrap2x2plus <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Wrap2x2plus'mightNotBeReallyEmpty raw) >>= Classes.decerialize))+instance (Classes.Marshal s Wrap2x2plus) where+    marshalInto raw_ value_ = case value_ of+        Wrap2x2plus{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) mightNotBeReallyEmpty) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Wrap2x2plus'mightNotBeReallyEmpty raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s Wrap2x2plus)+instance (Classes.Cerialize s (V.Vector Wrap2x2plus)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector Wrap2x2plus))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Wrap2x2plus)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Wrap2x2plus))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Wrap2x2plus)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Wrap2x2plus))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Wrap2x2plus)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data VoidUnion +    = VoidUnion'a +    | VoidUnion'b +    | VoidUnion'unknown' Std_.Word16+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default VoidUnion) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const VoidUnion) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize VoidUnion) where+    type Cerial msg VoidUnion = (Capnp.Gen.ById.X832bcc6686a26d56.VoidUnion msg)+    decerialize raw = (do+        raw <- (Capnp.Gen.ById.X832bcc6686a26d56.get_VoidUnion' raw)+        case raw of+            (Capnp.Gen.ById.X832bcc6686a26d56.VoidUnion'a) ->+                (Std_.pure VoidUnion'a)+            (Capnp.Gen.ById.X832bcc6686a26d56.VoidUnion'b) ->+                (Std_.pure VoidUnion'b)+            (Capnp.Gen.ById.X832bcc6686a26d56.VoidUnion'unknown' tag) ->+                (Std_.pure (VoidUnion'unknown' tag))+        )+instance (Classes.Marshal s VoidUnion) where+    marshalInto raw_ value_ = case value_ of+        (VoidUnion'a) ->+            (Capnp.Gen.ById.X832bcc6686a26d56.set_VoidUnion'a raw_)+        (VoidUnion'b) ->+            (Capnp.Gen.ById.X832bcc6686a26d56.set_VoidUnion'b raw_)+        (VoidUnion'unknown' tag) ->+            (Capnp.Gen.ById.X832bcc6686a26d56.set_VoidUnion'unknown' raw_ tag)+instance (Classes.Cerialize s VoidUnion)+instance (Classes.Cerialize s (V.Vector VoidUnion)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector VoidUnion))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector VoidUnion)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector VoidUnion))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VoidUnion)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VoidUnion))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector VoidUnion)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data Nester1Capn +    = Nester1Capn +        {strs :: (V.Vector T.Text)}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default Nester1Capn) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const Nester1Capn) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize Nester1Capn) where+    type Cerial msg Nester1Capn = (Capnp.Gen.ById.X832bcc6686a26d56.Nester1Capn msg)+    decerialize raw = (Nester1Capn <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Nester1Capn'strs raw) >>= Classes.decerialize))+instance (Classes.Marshal s Nester1Capn) where+    marshalInto raw_ value_ = case value_ of+        Nester1Capn{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) strs) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Nester1Capn'strs raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s Nester1Capn)+instance (Classes.Cerialize s (V.Vector Nester1Capn)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector Nester1Capn))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Nester1Capn)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Nester1Capn))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Nester1Capn)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Nester1Capn))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Nester1Capn)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data RWTestCapn +    = RWTestCapn +        {nestMatrix :: (V.Vector (V.Vector Nester1Capn))}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default RWTestCapn) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const RWTestCapn) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize RWTestCapn) where+    type Cerial msg RWTestCapn = (Capnp.Gen.ById.X832bcc6686a26d56.RWTestCapn msg)+    decerialize raw = (RWTestCapn <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_RWTestCapn'nestMatrix raw) >>= Classes.decerialize))+instance (Classes.Marshal s RWTestCapn) where+    marshalInto raw_ value_ = case value_ of+        RWTestCapn{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) nestMatrix) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_RWTestCapn'nestMatrix raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s RWTestCapn)+instance (Classes.Cerialize s (V.Vector RWTestCapn)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector RWTestCapn))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector RWTestCapn)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector RWTestCapn))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector RWTestCapn)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector RWTestCapn))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector RWTestCapn)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data ListStructCapn +    = ListStructCapn +        {vec :: (V.Vector Nester1Capn)}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default ListStructCapn) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const ListStructCapn) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize ListStructCapn) where+    type Cerial msg ListStructCapn = (Capnp.Gen.ById.X832bcc6686a26d56.ListStructCapn msg)+    decerialize raw = (ListStructCapn <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_ListStructCapn'vec raw) >>= Classes.decerialize))+instance (Classes.Marshal s ListStructCapn) where+    marshalInto raw_ value_ = case value_ of+        ListStructCapn{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) vec) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_ListStructCapn'vec raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s ListStructCapn)+instance (Classes.Cerialize s (V.Vector ListStructCapn)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector ListStructCapn))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector ListStructCapn)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector ListStructCapn))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector ListStructCapn)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector ListStructCapn))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector ListStructCapn)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+newtype Echo +    = Echo Message.Client+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+class ((MonadIO.MonadIO m)+      ,(Server.Server m cap)) => (Echo'server_ m cap) where+    {-# MINIMAL echo'echo #-}+    echo'echo :: cap -> (Server.MethodHandler m Echo'echo'params Echo'echo'results)+    echo'echo _ = Server.methodUnimplemented+export_Echo :: ((STM.MonadSTM m)+               ,(Echo'server_ Std_.IO cap)) => Supervisors.Supervisor -> cap -> (m Echo)+export_Echo sup_ server_ = (STM.liftSTM (Echo <$> (Rpc.export sup_ Server.ServerOps{handleCast = (Server.unwrap server_)+                                                                                   ,handleStop = (Server.shutdown server_)+                                                                                   ,handleCall = (\interfaceId_ methodId_ -> case interfaceId_ of+                                                                                       10255578992688506164 ->+                                                                                           case methodId_ of+                                                                                               0 ->+                                                                                                   (Server.toUntypedHandler (echo'echo server_))+                                                                                               _ ->+                                                                                                   Server.methodUnimplemented+                                                                                       _ ->+                                                                                           Server.methodUnimplemented)})))+instance (Rpc.IsClient Echo) where+    fromClient  = Echo+    toClient (Echo client) = client+instance (Classes.FromPtr msg Echo) where+    fromPtr  = RpcHelpers.isClientFromPtr+instance (Classes.ToPtr s Echo) where+    toPtr  = RpcHelpers.isClientToPtr+instance (Classes.Decerialize Echo) where+    type Cerial msg Echo = (Capnp.Gen.ById.X832bcc6686a26d56.Echo msg)+    decerialize (Capnp.Gen.ById.X832bcc6686a26d56.Echo'newtype_ maybeCap) = case maybeCap of+        (Std_.Nothing) ->+            (Std_.pure (Echo Message.nullClient))+        (Std_.Just cap) ->+            (Echo <$> (Untyped.getClient cap))+instance (Classes.Cerialize s Echo) where+    cerialize msg (Echo client) = (Capnp.Gen.ById.X832bcc6686a26d56.Echo'newtype_ <$> (Std_.Just <$> (Untyped.appendCap msg client)))+instance (Server.Server Std_.IO Echo)+instance (Echo'server_ Std_.IO Echo) where+    echo'echo (Echo client) = (Rpc.clientMethodHandler 10255578992688506164 0 client)+data Echo'echo'params +    = Echo'echo'params +        {in_ :: T.Text}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default Echo'echo'params) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const Echo'echo'params) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize Echo'echo'params) where+    type Cerial msg Echo'echo'params = (Capnp.Gen.ById.X832bcc6686a26d56.Echo'echo'params msg)+    decerialize raw = (Echo'echo'params <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Echo'echo'params'in_ raw) >>= Classes.decerialize))+instance (Classes.Marshal s Echo'echo'params) where+    marshalInto raw_ value_ = case value_ of+        Echo'echo'params{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) in_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Echo'echo'params'in_ raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s Echo'echo'params)+instance (Classes.Cerialize s (V.Vector Echo'echo'params)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector Echo'echo'params))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Echo'echo'params)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Echo'echo'params))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Echo'echo'params)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Echo'echo'params))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Echo'echo'params)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data Echo'echo'results +    = Echo'echo'results +        {out :: T.Text}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default Echo'echo'results) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const Echo'echo'results) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize Echo'echo'results) where+    type Cerial msg Echo'echo'results = (Capnp.Gen.ById.X832bcc6686a26d56.Echo'echo'results msg)+    decerialize raw = (Echo'echo'results <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Echo'echo'results'out raw) >>= Classes.decerialize))+instance (Classes.Marshal s Echo'echo'results) where+    marshalInto raw_ value_ = case value_ of+        Echo'echo'results{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) out) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Echo'echo'results'out raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s Echo'echo'results)+instance (Classes.Cerialize s (V.Vector Echo'echo'results)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector Echo'echo'results))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Echo'echo'results)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Echo'echo'results))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Echo'echo'results)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Echo'echo'results))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Echo'echo'results)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data Hoth +    = Hoth +        {base :: EchoBase}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default Hoth) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const Hoth) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize Hoth) where+    type Cerial msg Hoth = (Capnp.Gen.ById.X832bcc6686a26d56.Hoth msg)+    decerialize raw = (Hoth <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Hoth'base raw) >>= Classes.decerialize))+instance (Classes.Marshal s Hoth) where+    marshalInto raw_ value_ = case value_ of+        Hoth{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) base) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Hoth'base raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s Hoth)+instance (Classes.Cerialize s (V.Vector Hoth)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector Hoth))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Hoth)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Hoth))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Hoth)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Hoth))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Hoth)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data EchoBase +    = EchoBase +        {echo :: Echo}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default EchoBase) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const EchoBase) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize EchoBase) where+    type Cerial msg EchoBase = (Capnp.Gen.ById.X832bcc6686a26d56.EchoBase msg)+    decerialize raw = (EchoBase <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_EchoBase'echo raw) >>= Classes.decerialize))+instance (Classes.Marshal s EchoBase) where+    marshalInto raw_ value_ = case value_ of+        EchoBase{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) echo) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_EchoBase'echo raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s EchoBase)+instance (Classes.Cerialize s (V.Vector EchoBase)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector EchoBase))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector EchoBase)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector EchoBase))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector EchoBase)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector EchoBase))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector EchoBase)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data EchoBases +    = EchoBases +        {bases :: (V.Vector EchoBase)}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default EchoBases) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const EchoBases) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize EchoBases) where+    type Cerial msg EchoBases = (Capnp.Gen.ById.X832bcc6686a26d56.EchoBases msg)+    decerialize raw = (EchoBases <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_EchoBases'bases raw) >>= Classes.decerialize))+instance (Classes.Marshal s EchoBases) where+    marshalInto raw_ value_ = case value_ of+        EchoBases{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) bases) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_EchoBases'bases raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s EchoBases)+instance (Classes.Cerialize s (V.Vector EchoBases)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector EchoBases))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector EchoBases)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector EchoBases))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector EchoBases)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector EchoBases))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector EchoBases)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data StackingRoot +    = StackingRoot +        {aWithDefault :: StackingA+        ,a :: StackingA}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default StackingRoot) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const StackingRoot) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize StackingRoot) where+    type Cerial msg StackingRoot = (Capnp.Gen.ById.X832bcc6686a26d56.StackingRoot msg)+    decerialize raw = (StackingRoot <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_StackingRoot'aWithDefault raw) >>= Classes.decerialize)+                                    <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_StackingRoot'a raw) >>= Classes.decerialize))+instance (Classes.Marshal s StackingRoot) where+    marshalInto raw_ value_ = case value_ of+        StackingRoot{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) aWithDefault) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_StackingRoot'aWithDefault raw_))+                ((Classes.cerialize (Untyped.message raw_) a) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_StackingRoot'a raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s StackingRoot)+instance (Classes.Cerialize s (V.Vector StackingRoot)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector StackingRoot))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector StackingRoot)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector StackingRoot))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector StackingRoot)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector StackingRoot))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector StackingRoot)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data StackingA +    = StackingA +        {num :: Std_.Int32+        ,b :: StackingB}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default StackingA) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const StackingA) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize StackingA) where+    type Cerial msg StackingA = (Capnp.Gen.ById.X832bcc6686a26d56.StackingA msg)+    decerialize raw = (StackingA <$> (Capnp.Gen.ById.X832bcc6686a26d56.get_StackingA'num raw)+                                 <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_StackingA'b raw) >>= Classes.decerialize))+instance (Classes.Marshal s StackingA) where+    marshalInto raw_ value_ = case value_ of+        StackingA{..} ->+            (do+                (Capnp.Gen.ById.X832bcc6686a26d56.set_StackingA'num raw_ num)+                ((Classes.cerialize (Untyped.message raw_) b) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_StackingA'b raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s StackingA)+instance (Classes.Cerialize s (V.Vector StackingA)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector StackingA))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector StackingA)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector StackingA))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector StackingA)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector StackingA))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector StackingA)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data StackingB +    = StackingB +        {num :: Std_.Int32}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default StackingB) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const StackingB) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize StackingB) where+    type Cerial msg StackingB = (Capnp.Gen.ById.X832bcc6686a26d56.StackingB msg)+    decerialize raw = (StackingB <$> (Capnp.Gen.ById.X832bcc6686a26d56.get_StackingB'num raw))+instance (Classes.Marshal s StackingB) where+    marshalInto raw_ value_ = case value_ of+        StackingB{..} ->+            (do+                (Capnp.Gen.ById.X832bcc6686a26d56.set_StackingB'num raw_ num)+                (Std_.pure ())+                )+instance (Classes.Cerialize s StackingB)+instance (Classes.Cerialize s (V.Vector StackingB)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector StackingB))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector StackingB)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector StackingB))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector StackingB)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector StackingB))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector StackingB)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+newtype CallSequence +    = CallSequence Message.Client+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+class ((MonadIO.MonadIO m)+      ,(Server.Server m cap)) => (CallSequence'server_ m cap) where+    {-# MINIMAL callSequence'getNumber #-}+    callSequence'getNumber :: cap -> (Server.MethodHandler m CallSequence'getNumber'params CallSequence'getNumber'results)+    callSequence'getNumber _ = Server.methodUnimplemented+export_CallSequence :: ((STM.MonadSTM m)+                       ,(CallSequence'server_ Std_.IO cap)) => Supervisors.Supervisor -> cap -> (m CallSequence)+export_CallSequence sup_ server_ = (STM.liftSTM (CallSequence <$> (Rpc.export sup_ Server.ServerOps{handleCast = (Server.unwrap server_)+                                                                                                   ,handleStop = (Server.shutdown server_)+                                                                                                   ,handleCall = (\interfaceId_ methodId_ -> case interfaceId_ of+                                                                                                       12371070827563042848 ->+                                                                                                           case methodId_ of+                                                                                                               0 ->+                                                                                                                   (Server.toUntypedHandler (callSequence'getNumber server_))+                                                                                                               _ ->+                                                                                                                   Server.methodUnimplemented+                                                                                                       _ ->+                                                                                                           Server.methodUnimplemented)})))+instance (Rpc.IsClient CallSequence) where+    fromClient  = CallSequence+    toClient (CallSequence client) = client+instance (Classes.FromPtr msg CallSequence) where+    fromPtr  = RpcHelpers.isClientFromPtr+instance (Classes.ToPtr s CallSequence) where+    toPtr  = RpcHelpers.isClientToPtr+instance (Classes.Decerialize CallSequence) where+    type Cerial msg CallSequence = (Capnp.Gen.ById.X832bcc6686a26d56.CallSequence msg)+    decerialize (Capnp.Gen.ById.X832bcc6686a26d56.CallSequence'newtype_ maybeCap) = case maybeCap of+        (Std_.Nothing) ->+            (Std_.pure (CallSequence Message.nullClient))+        (Std_.Just cap) ->+            (CallSequence <$> (Untyped.getClient cap))+instance (Classes.Cerialize s CallSequence) where+    cerialize msg (CallSequence client) = (Capnp.Gen.ById.X832bcc6686a26d56.CallSequence'newtype_ <$> (Std_.Just <$> (Untyped.appendCap msg client)))+instance (Server.Server Std_.IO CallSequence)+instance (CallSequence'server_ Std_.IO CallSequence) where+    callSequence'getNumber (CallSequence client) = (Rpc.clientMethodHandler 12371070827563042848 0 client)+data CallSequence'getNumber'params +    = CallSequence'getNumber'params +        {}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default CallSequence'getNumber'params) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const CallSequence'getNumber'params) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize CallSequence'getNumber'params) where+    type Cerial msg CallSequence'getNumber'params = (Capnp.Gen.ById.X832bcc6686a26d56.CallSequence'getNumber'params msg)+    decerialize raw = (Std_.pure CallSequence'getNumber'params)+instance (Classes.Marshal s CallSequence'getNumber'params) where+    marshalInto raw_ value_ = case value_ of+        (CallSequence'getNumber'params) ->+            (do+                (Std_.pure ())+                )+instance (Classes.Cerialize s CallSequence'getNumber'params)+instance (Classes.Cerialize s (V.Vector CallSequence'getNumber'params)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector CallSequence'getNumber'params))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector CallSequence'getNumber'params)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector CallSequence'getNumber'params))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CallSequence'getNumber'params)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CallSequence'getNumber'params))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CallSequence'getNumber'params)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data CallSequence'getNumber'results +    = CallSequence'getNumber'results +        {n :: Std_.Word32}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default CallSequence'getNumber'results) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const CallSequence'getNumber'results) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize CallSequence'getNumber'results) where+    type Cerial msg CallSequence'getNumber'results = (Capnp.Gen.ById.X832bcc6686a26d56.CallSequence'getNumber'results msg)+    decerialize raw = (CallSequence'getNumber'results <$> (Capnp.Gen.ById.X832bcc6686a26d56.get_CallSequence'getNumber'results'n raw))+instance (Classes.Marshal s CallSequence'getNumber'results) where+    marshalInto raw_ value_ = case value_ of+        CallSequence'getNumber'results{..} ->+            (do+                (Capnp.Gen.ById.X832bcc6686a26d56.set_CallSequence'getNumber'results'n raw_ n)+                (Std_.pure ())+                )+instance (Classes.Cerialize s CallSequence'getNumber'results)+instance (Classes.Cerialize s (V.Vector CallSequence'getNumber'results)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector CallSequence'getNumber'results))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector CallSequence'getNumber'results)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector CallSequence'getNumber'results))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CallSequence'getNumber'results)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CallSequence'getNumber'results))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CallSequence'getNumber'results)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+newtype CounterFactory +    = CounterFactory Message.Client+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+class ((MonadIO.MonadIO m)+      ,(Server.Server m cap)) => (CounterFactory'server_ m cap) where+    {-# MINIMAL counterFactory'newCounter #-}+    counterFactory'newCounter :: cap -> (Server.MethodHandler m CounterFactory'newCounter'params CounterFactory'newCounter'results)+    counterFactory'newCounter _ = Server.methodUnimplemented+export_CounterFactory :: ((STM.MonadSTM m)+                         ,(CounterFactory'server_ Std_.IO cap)) => Supervisors.Supervisor -> cap -> (m CounterFactory)+export_CounterFactory sup_ server_ = (STM.liftSTM (CounterFactory <$> (Rpc.export sup_ Server.ServerOps{handleCast = (Server.unwrap server_)+                                                                                                       ,handleStop = (Server.shutdown server_)+                                                                                                       ,handleCall = (\interfaceId_ methodId_ -> case interfaceId_ of+                                                                                                           15610220054254702620 ->+                                                                                                               case methodId_ of+                                                                                                                   0 ->+                                                                                                                       (Server.toUntypedHandler (counterFactory'newCounter server_))+                                                                                                                   _ ->+                                                                                                                       Server.methodUnimplemented+                                                                                                           _ ->+                                                                                                               Server.methodUnimplemented)})))+instance (Rpc.IsClient CounterFactory) where+    fromClient  = CounterFactory+    toClient (CounterFactory client) = client+instance (Classes.FromPtr msg CounterFactory) where+    fromPtr  = RpcHelpers.isClientFromPtr+instance (Classes.ToPtr s CounterFactory) where+    toPtr  = RpcHelpers.isClientToPtr+instance (Classes.Decerialize CounterFactory) where+    type Cerial msg CounterFactory = (Capnp.Gen.ById.X832bcc6686a26d56.CounterFactory msg)+    decerialize (Capnp.Gen.ById.X832bcc6686a26d56.CounterFactory'newtype_ maybeCap) = case maybeCap of+        (Std_.Nothing) ->+            (Std_.pure (CounterFactory Message.nullClient))+        (Std_.Just cap) ->+            (CounterFactory <$> (Untyped.getClient cap))+instance (Classes.Cerialize s CounterFactory) where+    cerialize msg (CounterFactory client) = (Capnp.Gen.ById.X832bcc6686a26d56.CounterFactory'newtype_ <$> (Std_.Just <$> (Untyped.appendCap msg client)))+instance (Server.Server Std_.IO CounterFactory)+instance (CounterFactory'server_ Std_.IO CounterFactory) where+    counterFactory'newCounter (CounterFactory client) = (Rpc.clientMethodHandler 15610220054254702620 0 client)+data CounterFactory'newCounter'params +    = CounterFactory'newCounter'params +        {start :: Std_.Word32}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default CounterFactory'newCounter'params) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const CounterFactory'newCounter'params) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize CounterFactory'newCounter'params) where+    type Cerial msg CounterFactory'newCounter'params = (Capnp.Gen.ById.X832bcc6686a26d56.CounterFactory'newCounter'params msg)+    decerialize raw = (CounterFactory'newCounter'params <$> (Capnp.Gen.ById.X832bcc6686a26d56.get_CounterFactory'newCounter'params'start raw))+instance (Classes.Marshal s CounterFactory'newCounter'params) where+    marshalInto raw_ value_ = case value_ of+        CounterFactory'newCounter'params{..} ->+            (do+                (Capnp.Gen.ById.X832bcc6686a26d56.set_CounterFactory'newCounter'params'start raw_ start)+                (Std_.pure ())+                )+instance (Classes.Cerialize s CounterFactory'newCounter'params)+instance (Classes.Cerialize s (V.Vector CounterFactory'newCounter'params)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector CounterFactory'newCounter'params))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector CounterFactory'newCounter'params)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector CounterFactory'newCounter'params))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CounterFactory'newCounter'params)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CounterFactory'newCounter'params))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CounterFactory'newCounter'params)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data CounterFactory'newCounter'results +    = CounterFactory'newCounter'results +        {counter :: CallSequence}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default CounterFactory'newCounter'results) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const CounterFactory'newCounter'results) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize CounterFactory'newCounter'results) where+    type Cerial msg CounterFactory'newCounter'results = (Capnp.Gen.ById.X832bcc6686a26d56.CounterFactory'newCounter'results msg)+    decerialize raw = (CounterFactory'newCounter'results <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_CounterFactory'newCounter'results'counter raw) >>= Classes.decerialize))+instance (Classes.Marshal s CounterFactory'newCounter'results) where+    marshalInto raw_ value_ = case value_ of+        CounterFactory'newCounter'results{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) counter) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_CounterFactory'newCounter'results'counter raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s CounterFactory'newCounter'results)+instance (Classes.Cerialize s (V.Vector CounterFactory'newCounter'results)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector CounterFactory'newCounter'results))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector CounterFactory'newCounter'results)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector CounterFactory'newCounter'results))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CounterFactory'newCounter'results)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CounterFactory'newCounter'results))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CounterFactory'newCounter'results)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+newtype CounterAcceptor +    = CounterAcceptor Message.Client+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+class ((MonadIO.MonadIO m)+      ,(Server.Server m cap)) => (CounterAcceptor'server_ m cap) where+    {-# MINIMAL counterAcceptor'accept #-}+    counterAcceptor'accept :: cap -> (Server.MethodHandler m CounterAcceptor'accept'params CounterAcceptor'accept'results)+    counterAcceptor'accept _ = Server.methodUnimplemented+export_CounterAcceptor :: ((STM.MonadSTM m)+                          ,(CounterAcceptor'server_ Std_.IO cap)) => Supervisors.Supervisor -> cap -> (m CounterAcceptor)+export_CounterAcceptor sup_ server_ = (STM.liftSTM (CounterAcceptor <$> (Rpc.export sup_ Server.ServerOps{handleCast = (Server.unwrap server_)+                                                                                                         ,handleStop = (Server.shutdown server_)+                                                                                                         ,handleCall = (\interfaceId_ methodId_ -> case interfaceId_ of+                                                                                                             14317498215560924065 ->+                                                                                                                 case methodId_ of+                                                                                                                     0 ->+                                                                                                                         (Server.toUntypedHandler (counterAcceptor'accept server_))+                                                                                                                     _ ->+                                                                                                                         Server.methodUnimplemented+                                                                                                             _ ->+                                                                                                                 Server.methodUnimplemented)})))+instance (Rpc.IsClient CounterAcceptor) where+    fromClient  = CounterAcceptor+    toClient (CounterAcceptor client) = client+instance (Classes.FromPtr msg CounterAcceptor) where+    fromPtr  = RpcHelpers.isClientFromPtr+instance (Classes.ToPtr s CounterAcceptor) where+    toPtr  = RpcHelpers.isClientToPtr+instance (Classes.Decerialize CounterAcceptor) where+    type Cerial msg CounterAcceptor = (Capnp.Gen.ById.X832bcc6686a26d56.CounterAcceptor msg)+    decerialize (Capnp.Gen.ById.X832bcc6686a26d56.CounterAcceptor'newtype_ maybeCap) = case maybeCap of+        (Std_.Nothing) ->+            (Std_.pure (CounterAcceptor Message.nullClient))+        (Std_.Just cap) ->+            (CounterAcceptor <$> (Untyped.getClient cap))+instance (Classes.Cerialize s CounterAcceptor) where+    cerialize msg (CounterAcceptor client) = (Capnp.Gen.ById.X832bcc6686a26d56.CounterAcceptor'newtype_ <$> (Std_.Just <$> (Untyped.appendCap msg client)))+instance (Server.Server Std_.IO CounterAcceptor)+instance (CounterAcceptor'server_ Std_.IO CounterAcceptor) where+    counterAcceptor'accept (CounterAcceptor client) = (Rpc.clientMethodHandler 14317498215560924065 0 client)+data CounterAcceptor'accept'params +    = CounterAcceptor'accept'params +        {counter :: CallSequence}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default CounterAcceptor'accept'params) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const CounterAcceptor'accept'params) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize CounterAcceptor'accept'params) where+    type Cerial msg CounterAcceptor'accept'params = (Capnp.Gen.ById.X832bcc6686a26d56.CounterAcceptor'accept'params msg)+    decerialize raw = (CounterAcceptor'accept'params <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_CounterAcceptor'accept'params'counter raw) >>= Classes.decerialize))+instance (Classes.Marshal s CounterAcceptor'accept'params) where+    marshalInto raw_ value_ = case value_ of+        CounterAcceptor'accept'params{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) counter) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_CounterAcceptor'accept'params'counter raw_))+                (Std_.pure ())+                )+instance (Classes.Cerialize s CounterAcceptor'accept'params)+instance (Classes.Cerialize s (V.Vector CounterAcceptor'accept'params)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector CounterAcceptor'accept'params))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector CounterAcceptor'accept'params)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector CounterAcceptor'accept'params))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CounterAcceptor'accept'params)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CounterAcceptor'accept'params))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CounterAcceptor'accept'params)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data CounterAcceptor'accept'results +    = CounterAcceptor'accept'results +        {}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default CounterAcceptor'accept'results) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const CounterAcceptor'accept'results) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize CounterAcceptor'accept'results) where+    type Cerial msg CounterAcceptor'accept'results = (Capnp.Gen.ById.X832bcc6686a26d56.CounterAcceptor'accept'results msg)+    decerialize raw = (Std_.pure CounterAcceptor'accept'results)+instance (Classes.Marshal s CounterAcceptor'accept'results) where+    marshalInto raw_ value_ = case value_ of+        (CounterAcceptor'accept'results) ->+            (do+                (Std_.pure ())+                )+instance (Classes.Cerialize s CounterAcceptor'accept'results)+instance (Classes.Cerialize s (V.Vector CounterAcceptor'accept'results)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector CounterAcceptor'accept'results))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector CounterAcceptor'accept'results)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector CounterAcceptor'accept'results))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CounterAcceptor'accept'results)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CounterAcceptor'accept'results))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector CounterAcceptor'accept'results)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+newtype Top +    = Top Message.Client+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+class ((MonadIO.MonadIO m)+      ,(Server.Server m cap)) => (Top'server_ m cap) where+    {-# MINIMAL top'top #-}+    top'top :: cap -> (Server.MethodHandler m Top'top'params Top'top'results)+    top'top _ = Server.methodUnimplemented+export_Top :: ((STM.MonadSTM m)+              ,(Top'server_ Std_.IO cap)) => Supervisors.Supervisor -> cap -> (m Top)+export_Top sup_ server_ = (STM.liftSTM (Top <$> (Rpc.export sup_ Server.ServerOps{handleCast = (Server.unwrap server_)+                                                                                 ,handleStop = (Server.shutdown server_)+                                                                                 ,handleCall = (\interfaceId_ methodId_ -> case interfaceId_ of+                                                                                     17861645508359101525 ->+                                                                                         case methodId_ of+                                                                                             0 ->+                                                                                                 (Server.toUntypedHandler (top'top server_))+                                                                                             _ ->+                                                                                                 Server.methodUnimplemented+                                                                                     _ ->+                                                                                         Server.methodUnimplemented)})))+instance (Rpc.IsClient Top) where+    fromClient  = Top+    toClient (Top client) = client+instance (Classes.FromPtr msg Top) where+    fromPtr  = RpcHelpers.isClientFromPtr+instance (Classes.ToPtr s Top) where+    toPtr  = RpcHelpers.isClientToPtr+instance (Classes.Decerialize Top) where+    type Cerial msg Top = (Capnp.Gen.ById.X832bcc6686a26d56.Top msg)+    decerialize (Capnp.Gen.ById.X832bcc6686a26d56.Top'newtype_ maybeCap) = case maybeCap of+        (Std_.Nothing) ->+            (Std_.pure (Top Message.nullClient))+        (Std_.Just cap) ->+            (Top <$> (Untyped.getClient cap))+instance (Classes.Cerialize s Top) where+    cerialize msg (Top client) = (Capnp.Gen.ById.X832bcc6686a26d56.Top'newtype_ <$> (Std_.Just <$> (Untyped.appendCap msg client)))+instance (Server.Server Std_.IO Top)+instance (Top'server_ Std_.IO Top) where+    top'top (Top client) = (Rpc.clientMethodHandler 17861645508359101525 0 client)+data Top'top'params +    = Top'top'params +        {}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default Top'top'params) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const Top'top'params) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize Top'top'params) where+    type Cerial msg Top'top'params = (Capnp.Gen.ById.X832bcc6686a26d56.Top'top'params msg)+    decerialize raw = (Std_.pure Top'top'params)+instance (Classes.Marshal s Top'top'params) where+    marshalInto raw_ value_ = case value_ of+        (Top'top'params) ->+            (do+                (Std_.pure ())+                )+instance (Classes.Cerialize s Top'top'params)+instance (Classes.Cerialize s (V.Vector Top'top'params)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector Top'top'params))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Top'top'params)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Top'top'params))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Top'top'params)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Top'top'params))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Top'top'params)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data Top'top'results +    = Top'top'results +        {}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default Top'top'results) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const Top'top'results) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize Top'top'results) where+    type Cerial msg Top'top'results = (Capnp.Gen.ById.X832bcc6686a26d56.Top'top'results msg)+    decerialize raw = (Std_.pure Top'top'results)+instance (Classes.Marshal s Top'top'results) where+    marshalInto raw_ value_ = case value_ of+        (Top'top'results) ->+            (do+                (Std_.pure ())+                )+instance (Classes.Cerialize s Top'top'results)+instance (Classes.Cerialize s (V.Vector Top'top'results)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector Top'top'results))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Top'top'results)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Top'top'results))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Top'top'results)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Top'top'results))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Top'top'results)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+newtype Left +    = Left Message.Client+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+class ((MonadIO.MonadIO m)+      ,(Top'server_ m cap)) => (Left'server_ m cap) where+    {-# MINIMAL left'left #-}+    left'left :: cap -> (Server.MethodHandler m Left'left'params Left'left'results)+    left'left _ = Server.methodUnimplemented+export_Left :: ((STM.MonadSTM m)+               ,(Left'server_ Std_.IO cap)) => Supervisors.Supervisor -> cap -> (m Left)+export_Left sup_ server_ = (STM.liftSTM (Left <$> (Rpc.export sup_ Server.ServerOps{handleCast = (Server.unwrap server_)+                                                                                   ,handleStop = (Server.shutdown server_)+                                                                                   ,handleCall = (\interfaceId_ methodId_ -> case interfaceId_ of+                                                                                       17679152961798450446 ->+                                                                                           case methodId_ of+                                                                                               0 ->+                                                                                                   (Server.toUntypedHandler (left'left server_))+                                                                                               _ ->+                                                                                                   Server.methodUnimplemented+                                                                                       17861645508359101525 ->+                                                                                           case methodId_ of+                                                                                               0 ->+                                                                                                   (Server.toUntypedHandler (top'top server_))+                                                                                               _ ->+                                                                                                   Server.methodUnimplemented+                                                                                       _ ->+                                                                                           Server.methodUnimplemented)})))+instance (Rpc.IsClient Left) where+    fromClient  = Left+    toClient (Left client) = client+instance (Classes.FromPtr msg Left) where+    fromPtr  = RpcHelpers.isClientFromPtr+instance (Classes.ToPtr s Left) where+    toPtr  = RpcHelpers.isClientToPtr+instance (Classes.Decerialize Left) where+    type Cerial msg Left = (Capnp.Gen.ById.X832bcc6686a26d56.Left msg)+    decerialize (Capnp.Gen.ById.X832bcc6686a26d56.Left'newtype_ maybeCap) = case maybeCap of+        (Std_.Nothing) ->+            (Std_.pure (Left Message.nullClient))+        (Std_.Just cap) ->+            (Left <$> (Untyped.getClient cap))+instance (Classes.Cerialize s Left) where+    cerialize msg (Left client) = (Capnp.Gen.ById.X832bcc6686a26d56.Left'newtype_ <$> (Std_.Just <$> (Untyped.appendCap msg client)))+instance (Server.Server Std_.IO Left)+instance (Left'server_ Std_.IO Left) where+    left'left (Left client) = (Rpc.clientMethodHandler 17679152961798450446 0 client)+instance (Top'server_ Std_.IO Left) where+    top'top (Left client) = (Rpc.clientMethodHandler 17861645508359101525 0 client)+data Left'left'params +    = Left'left'params +        {}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default Left'left'params) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const Left'left'params) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize Left'left'params) where+    type Cerial msg Left'left'params = (Capnp.Gen.ById.X832bcc6686a26d56.Left'left'params msg)+    decerialize raw = (Std_.pure Left'left'params)+instance (Classes.Marshal s Left'left'params) where+    marshalInto raw_ value_ = case value_ of+        (Left'left'params) ->+            (do+                (Std_.pure ())+                )+instance (Classes.Cerialize s Left'left'params)+instance (Classes.Cerialize s (V.Vector Left'left'params)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector Left'left'params))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Left'left'params)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Left'left'params))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Left'left'params)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Left'left'params))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Left'left'params)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data Left'left'results +    = Left'left'results +        {}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default Left'left'results) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const Left'left'results) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize Left'left'results) where+    type Cerial msg Left'left'results = (Capnp.Gen.ById.X832bcc6686a26d56.Left'left'results msg)+    decerialize raw = (Std_.pure Left'left'results)+instance (Classes.Marshal s Left'left'results) where+    marshalInto raw_ value_ = case value_ of+        (Left'left'results) ->+            (do+                (Std_.pure ())+                )+instance (Classes.Cerialize s Left'left'results)+instance (Classes.Cerialize s (V.Vector Left'left'results)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector Left'left'results))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Left'left'results)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Left'left'results))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Left'left'results)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Left'left'results))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Left'left'results)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+newtype Right +    = Right Message.Client+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+class ((MonadIO.MonadIO m)+      ,(Top'server_ m cap)) => (Right'server_ m cap) where+    {-# MINIMAL right'right #-}+    right'right :: cap -> (Server.MethodHandler m Right'right'params Right'right'results)+    right'right _ = Server.methodUnimplemented+export_Right :: ((STM.MonadSTM m)+                ,(Right'server_ Std_.IO cap)) => Supervisors.Supervisor -> cap -> (m Right)+export_Right sup_ server_ = (STM.liftSTM (Right <$> (Rpc.export sup_ Server.ServerOps{handleCast = (Server.unwrap server_)+                                                                                     ,handleStop = (Server.shutdown server_)+                                                                                     ,handleCall = (\interfaceId_ methodId_ -> case interfaceId_ of+                                                                                         14712639595305348988 ->+                                                                                             case methodId_ of+                                                                                                 0 ->+                                                                                                     (Server.toUntypedHandler (right'right server_))+                                                                                                 _ ->+                                                                                                     Server.methodUnimplemented+                                                                                         17861645508359101525 ->+                                                                                             case methodId_ of+                                                                                                 0 ->+                                                                                                     (Server.toUntypedHandler (top'top server_))+                                                                                                 _ ->+                                                                                                     Server.methodUnimplemented+                                                                                         _ ->+                                                                                             Server.methodUnimplemented)})))+instance (Rpc.IsClient Right) where+    fromClient  = Right+    toClient (Right client) = client+instance (Classes.FromPtr msg Right) where+    fromPtr  = RpcHelpers.isClientFromPtr+instance (Classes.ToPtr s Right) where+    toPtr  = RpcHelpers.isClientToPtr+instance (Classes.Decerialize Right) where+    type Cerial msg Right = (Capnp.Gen.ById.X832bcc6686a26d56.Right msg)+    decerialize (Capnp.Gen.ById.X832bcc6686a26d56.Right'newtype_ maybeCap) = case maybeCap of+        (Std_.Nothing) ->+            (Std_.pure (Right Message.nullClient))+        (Std_.Just cap) ->+            (Right <$> (Untyped.getClient cap))+instance (Classes.Cerialize s Right) where+    cerialize msg (Right client) = (Capnp.Gen.ById.X832bcc6686a26d56.Right'newtype_ <$> (Std_.Just <$> (Untyped.appendCap msg client)))+instance (Server.Server Std_.IO Right)+instance (Right'server_ Std_.IO Right) where+    right'right (Right client) = (Rpc.clientMethodHandler 14712639595305348988 0 client)+instance (Top'server_ Std_.IO Right) where+    top'top (Right client) = (Rpc.clientMethodHandler 17861645508359101525 0 client)+data Right'right'params +    = Right'right'params +        {}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default Right'right'params) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const Right'right'params) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize Right'right'params) where+    type Cerial msg Right'right'params = (Capnp.Gen.ById.X832bcc6686a26d56.Right'right'params msg)+    decerialize raw = (Std_.pure Right'right'params)+instance (Classes.Marshal s Right'right'params) where+    marshalInto raw_ value_ = case value_ of+        (Right'right'params) ->+            (do+                (Std_.pure ())+                )+instance (Classes.Cerialize s Right'right'params)+instance (Classes.Cerialize s (V.Vector Right'right'params)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector Right'right'params))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Right'right'params)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Right'right'params))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Right'right'params)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Right'right'params))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Right'right'params)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data Right'right'results +    = Right'right'results +        {}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default Right'right'results) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const Right'right'results) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize Right'right'results) where+    type Cerial msg Right'right'results = (Capnp.Gen.ById.X832bcc6686a26d56.Right'right'results msg)+    decerialize raw = (Std_.pure Right'right'results)+instance (Classes.Marshal s Right'right'results) where+    marshalInto raw_ value_ = case value_ of+        (Right'right'results) ->+            (do+                (Std_.pure ())+                )+instance (Classes.Cerialize s Right'right'results)+instance (Classes.Cerialize s (V.Vector Right'right'results)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector Right'right'results))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Right'right'results)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Right'right'results))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Right'right'results)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Right'right'results))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Right'right'results)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+newtype Bottom +    = Bottom Message.Client+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+class ((MonadIO.MonadIO m)+      ,(Left'server_ m cap)+      ,(Right'server_ m cap)) => (Bottom'server_ m cap) where+    {-# MINIMAL bottom'bottom #-}+    bottom'bottom :: cap -> (Server.MethodHandler m Bottom'bottom'params Bottom'bottom'results)+    bottom'bottom _ = Server.methodUnimplemented+export_Bottom :: ((STM.MonadSTM m)+                 ,(Bottom'server_ Std_.IO cap)) => Supervisors.Supervisor -> cap -> (m Bottom)+export_Bottom sup_ server_ = (STM.liftSTM (Bottom <$> (Rpc.export sup_ Server.ServerOps{handleCast = (Server.unwrap server_)+                                                                                       ,handleStop = (Server.shutdown server_)+                                                                                       ,handleCall = (\interfaceId_ methodId_ -> case interfaceId_ of+                                                                                           18402872613340521775 ->+                                                                                               case methodId_ of+                                                                                                   0 ->+                                                                                                       (Server.toUntypedHandler (bottom'bottom server_))+                                                                                                   _ ->+                                                                                                       Server.methodUnimplemented+                                                                                           17679152961798450446 ->+                                                                                               case methodId_ of+                                                                                                   0 ->+                                                                                                       (Server.toUntypedHandler (left'left server_))+                                                                                                   _ ->+                                                                                                       Server.methodUnimplemented+                                                                                           17861645508359101525 ->+                                                                                               case methodId_ of+                                                                                                   0 ->+                                                                                                       (Server.toUntypedHandler (top'top server_))+                                                                                                   _ ->+                                                                                                       Server.methodUnimplemented+                                                                                           14712639595305348988 ->+                                                                                               case methodId_ of+                                                                                                   0 ->+                                                                                                       (Server.toUntypedHandler (right'right server_))+                                                                                                   _ ->+                                                                                                       Server.methodUnimplemented+                                                                                           _ ->+                                                                                               Server.methodUnimplemented)})))+instance (Rpc.IsClient Bottom) where+    fromClient  = Bottom+    toClient (Bottom client) = client+instance (Classes.FromPtr msg Bottom) where+    fromPtr  = RpcHelpers.isClientFromPtr+instance (Classes.ToPtr s Bottom) where+    toPtr  = RpcHelpers.isClientToPtr+instance (Classes.Decerialize Bottom) where+    type Cerial msg Bottom = (Capnp.Gen.ById.X832bcc6686a26d56.Bottom msg)+    decerialize (Capnp.Gen.ById.X832bcc6686a26d56.Bottom'newtype_ maybeCap) = case maybeCap of+        (Std_.Nothing) ->+            (Std_.pure (Bottom Message.nullClient))+        (Std_.Just cap) ->+            (Bottom <$> (Untyped.getClient cap))+instance (Classes.Cerialize s Bottom) where+    cerialize msg (Bottom client) = (Capnp.Gen.ById.X832bcc6686a26d56.Bottom'newtype_ <$> (Std_.Just <$> (Untyped.appendCap msg client)))+instance (Server.Server Std_.IO Bottom)+instance (Bottom'server_ Std_.IO Bottom) where+    bottom'bottom (Bottom client) = (Rpc.clientMethodHandler 18402872613340521775 0 client)+instance (Left'server_ Std_.IO Bottom) where+    left'left (Bottom client) = (Rpc.clientMethodHandler 17679152961798450446 0 client)+instance (Top'server_ Std_.IO Bottom) where+    top'top (Bottom client) = (Rpc.clientMethodHandler 17861645508359101525 0 client)+instance (Right'server_ Std_.IO Bottom) where+    right'right (Bottom client) = (Rpc.clientMethodHandler 14712639595305348988 0 client)+data Bottom'bottom'params +    = Bottom'bottom'params +        {}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default Bottom'bottom'params) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const Bottom'bottom'params) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize Bottom'bottom'params) where+    type Cerial msg Bottom'bottom'params = (Capnp.Gen.ById.X832bcc6686a26d56.Bottom'bottom'params msg)+    decerialize raw = (Std_.pure Bottom'bottom'params)+instance (Classes.Marshal s Bottom'bottom'params) where+    marshalInto raw_ value_ = case value_ of+        (Bottom'bottom'params) ->+            (do+                (Std_.pure ())+                )+instance (Classes.Cerialize s Bottom'bottom'params)+instance (Classes.Cerialize s (V.Vector Bottom'bottom'params)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector Bottom'bottom'params))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Bottom'bottom'params)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Bottom'bottom'params))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Bottom'bottom'params)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Bottom'bottom'params))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Bottom'bottom'params)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data Bottom'bottom'results +    = Bottom'bottom'results +        {}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default Bottom'bottom'results) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const Bottom'bottom'results) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize Bottom'bottom'results) where+    type Cerial msg Bottom'bottom'results = (Capnp.Gen.ById.X832bcc6686a26d56.Bottom'bottom'results msg)+    decerialize raw = (Std_.pure Bottom'bottom'results)+instance (Classes.Marshal s Bottom'bottom'results) where+    marshalInto raw_ value_ = case value_ of+        (Bottom'bottom'results) ->+            (do+                (Std_.pure ())+                )+instance (Classes.Cerialize s Bottom'bottom'results)+instance (Classes.Cerialize s (V.Vector Bottom'bottom'results)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector Bottom'bottom'results))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Bottom'bottom'results)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Bottom'bottom'results))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Bottom'bottom'results)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Bottom'bottom'results))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Bottom'bottom'results)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data Defaults +    = Defaults +        {text :: T.Text+        ,data_ :: BS.ByteString+        ,float :: Std_.Float+        ,int :: Std_.Int32+        ,uint :: Std_.Word32}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default Defaults) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const Defaults) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize Defaults) where+    type Cerial msg Defaults = (Capnp.Gen.ById.X832bcc6686a26d56.Defaults msg)+    decerialize raw = (Defaults <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Defaults'text raw) >>= Classes.decerialize)+                                <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_Defaults'data_ raw) >>= Classes.decerialize)+                                <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_Defaults'float raw)+                                <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_Defaults'int raw)+                                <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_Defaults'uint raw))+instance (Classes.Marshal s Defaults) where+    marshalInto raw_ value_ = case value_ of+        Defaults{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) text) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Defaults'text raw_))+                ((Classes.cerialize (Untyped.message raw_) data_) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_Defaults'data_ raw_))+                (Capnp.Gen.ById.X832bcc6686a26d56.set_Defaults'float raw_ float)+                (Capnp.Gen.ById.X832bcc6686a26d56.set_Defaults'int raw_ int)+                (Capnp.Gen.ById.X832bcc6686a26d56.set_Defaults'uint raw_ uint)+                (Std_.pure ())+                )+instance (Classes.Cerialize s Defaults)+instance (Classes.Cerialize s (V.Vector Defaults)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector Defaults))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector Defaults)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector Defaults))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Defaults)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Defaults))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector Defaults)))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+data BenchmarkA +    = BenchmarkA +        {name :: T.Text+        ,birthDay :: Std_.Int64+        ,phone :: T.Text+        ,siblings :: Std_.Int32+        ,spouse :: Std_.Bool+        ,money :: Std_.Double}+    deriving(Std_.Show+            ,Std_.Eq+            ,Generics.Generic)+instance (Default.Default BenchmarkA) where+    def  = GenHelpersPure.defaultStruct+instance (Classes.FromStruct Message.Const BenchmarkA) where+    fromStruct struct = ((Classes.fromStruct struct) >>= Classes.decerialize)+instance (Classes.Decerialize BenchmarkA) where+    type Cerial msg BenchmarkA = (Capnp.Gen.ById.X832bcc6686a26d56.BenchmarkA msg)+    decerialize raw = (BenchmarkA <$> ((Capnp.Gen.ById.X832bcc6686a26d56.get_BenchmarkA'name raw) >>= Classes.decerialize)+                                  <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_BenchmarkA'birthDay raw)+                                  <*> ((Capnp.Gen.ById.X832bcc6686a26d56.get_BenchmarkA'phone raw) >>= Classes.decerialize)+                                  <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_BenchmarkA'siblings raw)+                                  <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_BenchmarkA'spouse raw)+                                  <*> (Capnp.Gen.ById.X832bcc6686a26d56.get_BenchmarkA'money raw))+instance (Classes.Marshal s BenchmarkA) where+    marshalInto raw_ value_ = case value_ of+        BenchmarkA{..} ->+            (do+                ((Classes.cerialize (Untyped.message raw_) name) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_BenchmarkA'name raw_))+                (Capnp.Gen.ById.X832bcc6686a26d56.set_BenchmarkA'birthDay raw_ birthDay)+                ((Classes.cerialize (Untyped.message raw_) phone) >>= (Capnp.Gen.ById.X832bcc6686a26d56.set_BenchmarkA'phone raw_))+                (Capnp.Gen.ById.X832bcc6686a26d56.set_BenchmarkA'siblings raw_ siblings)+                (Capnp.Gen.ById.X832bcc6686a26d56.set_BenchmarkA'spouse raw_ spouse)+                (Capnp.Gen.ById.X832bcc6686a26d56.set_BenchmarkA'money raw_ money)+                (Std_.pure ())+                )+instance (Classes.Cerialize s BenchmarkA)+instance (Classes.Cerialize s (V.Vector BenchmarkA)) where+    cerialize  = GenHelpersPure.cerializeCompositeVec+instance (Classes.Cerialize s (V.Vector (V.Vector BenchmarkA))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector BenchmarkA)))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector BenchmarkA))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector BenchmarkA)))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector BenchmarkA))))))) where+    cerialize  = GenHelpersPure.cerializeBasicVec+instance (Classes.Cerialize s (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector (V.Vector BenchmarkA)))))))) where     cerialize  = GenHelpersPure.cerializeBasicVec instance (Classes.Decerialize Capnp.Gen.ById.X832bcc6686a26d56.Airport) where     type Cerial msg Capnp.Gen.ById.X832bcc6686a26d56.Airport = Capnp.Gen.ById.X832bcc6686a26d56.Airport
+ gen/tests/Capnp/Gen/ById/X832bcc6686a26d56/New.hs view
@@ -0,0 +1,12 @@+{-# OPTIONS_GHC -Wno-unused-imports #-}+{-# OPTIONS_GHC -Wno-dodgy-exports #-}+{-# OPTIONS_GHC -Wno-unused-matches #-}+{-# OPTIONS_GHC -Wno-orphans #-}+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-}+module Capnp.Gen.ById.X832bcc6686a26d56.New(module Capnp.Gen.Aircraft.New) where+import Capnp.Gen.Aircraft.New+import qualified Prelude as Std_+import qualified Data.Word as Std_+import qualified Data.Int as Std_+import Prelude ((<$>), (<*>), (>>=))
+ gen/tests/Capnp/Gen/ById/Xb6421fb8e478d144/New.hs view
@@ -0,0 +1,12 @@+{-# OPTIONS_GHC -Wno-unused-imports #-}+{-# OPTIONS_GHC -Wno-dodgy-exports #-}+{-# OPTIONS_GHC -Wno-unused-matches #-}+{-# OPTIONS_GHC -Wno-orphans #-}+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-}+module Capnp.Gen.ById.Xb6421fb8e478d144.New(module Capnp.Gen.Generics.New) where+import Capnp.Gen.Generics.New+import qualified Prelude as Std_+import qualified Data.Word as Std_+import qualified Data.Int as Std_+import Prelude ((<$>), (<*>), (>>=))
+ gen/tests/Capnp/Gen/Generics/New.hs view
@@ -0,0 +1,435 @@+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE EmptyDataDeriving #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE UndecidableInstances #-}+{-# LANGUAGE OverloadedLabels #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE RecordWildCards #-}+{-# OPTIONS_GHC -Wno-unused-imports #-}+{-# OPTIONS_GHC -Wno-dodgy-exports #-}+{-# OPTIONS_GHC -Wno-unused-matches #-}+{-# OPTIONS_GHC -Wno-orphans #-}+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}+{-# OPTIONS_GHC -Wno-name-shadowing #-}+module Capnp.Gen.Generics.New where+import qualified Capnp.Repr as R+import qualified Capnp.Repr.Parsed as RP+import qualified Capnp.New.Basics as Basics+import qualified GHC.OverloadedLabels as OL+import qualified Capnp.GenHelpers.New as GH+import qualified Capnp.New.Classes as C+import qualified GHC.Generics as Generics+import qualified Capnp.GenHelpers.ReExports.Data.ByteString as BS+import qualified Prelude as Std_+import qualified Data.Word as Std_+import qualified Data.Int as Std_+import Prelude ((<$>), (<*>), (>>=))+data Maybe t+type instance (R.ReprFor (Maybe t)) = (R.Ptr (Std_.Just R.Struct))+instance ((GH.TypeParam t)) => (C.TypedStruct (Maybe t)) where+    numStructWords  = 1+    numStructPtrs  = 1+instance ((GH.TypeParam t)) => (C.Allocate (Maybe t)) where+    type AllocHint (Maybe t) = ()+    new _ = C.newTypedStruct+instance ((GH.TypeParam t)) => (C.EstimateAlloc (Maybe t) (C.Parsed (Maybe t)))+instance ((GH.TypeParam t)) => (C.AllocateList (Maybe t)) where+    type ListAllocHint (Maybe t) = Std_.Int+    newList  = C.newTypedStructList+instance ((GH.TypeParam t)) => (C.EstimateListAlloc (Maybe t) (C.Parsed (Maybe t)))+data instance C.Parsed (Maybe t)+    = Maybe +        {union' :: (C.Parsed (GH.Which (Maybe t)))}+    deriving(Generics.Generic)+deriving instance ((Std_.Show (RP.Parsed t))) => (Std_.Show (C.Parsed (Maybe t)))+deriving instance ((Std_.Eq (RP.Parsed t))) => (Std_.Eq (C.Parsed (Maybe t)))+instance ((GH.TypeParam t)) => (C.Parse (Maybe t) (C.Parsed (Maybe t))) where+    parse raw_ = (Maybe <$> (C.parse (GH.structUnion raw_)))+instance ((GH.TypeParam t)) => (C.Marshal (Maybe t) (C.Parsed (Maybe t))) where+    marshalInto raw_ Maybe{..} = (do+        (C.marshalInto (GH.structUnion raw_) union')+        )+instance ((GH.TypeParam t)) => (GH.HasUnion (Maybe t)) where+    unionField  = (GH.dataField 0 0 16 0)+    data RawWhich mut_ (Maybe t)+        = RW_Maybe'nothing (R.Raw mut_ ())+        | RW_Maybe'just (R.Raw mut_ t)+        | RW_Maybe'unknown' Std_.Word16+    internalWhich tag_ struct_ = case tag_ of+        0 ->+            (RW_Maybe'nothing <$> (GH.readVariant #nothing struct_))+        1 ->+            (RW_Maybe'just <$> (GH.readVariant #just struct_))+        _ ->+            (Std_.pure (RW_Maybe'unknown' tag_))+    data Which (Maybe t)+instance ((GH.TypeParam t)) => (GH.HasVariant "nothing" GH.Slot (Maybe t) ()) where+    variantByLabel  = (GH.Variant GH.voidField 0)+instance ((GH.TypeParam t)) => (GH.HasVariant "just" GH.Slot (Maybe t) t) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 1)+data instance C.Parsed (GH.Which (Maybe t))+    = Maybe'nothing +    | Maybe'just (RP.Parsed t)+    | Maybe'unknown' Std_.Word16+    deriving(Generics.Generic)+deriving instance ((Std_.Show (RP.Parsed t))) => (Std_.Show (C.Parsed (GH.Which (Maybe t))))+deriving instance ((Std_.Eq (RP.Parsed t))) => (Std_.Eq (C.Parsed (GH.Which (Maybe t))))+instance ((GH.TypeParam t)) => (C.Parse (GH.Which (Maybe t)) (C.Parsed (GH.Which (Maybe t)))) where+    parse raw_ = (do+        rawWhich_ <- (GH.unionWhich raw_)+        case rawWhich_ of+            (RW_Maybe'nothing _) ->+                (Std_.pure Maybe'nothing)+            (RW_Maybe'just rawArg_) ->+                (Maybe'just <$> (C.parse rawArg_))+            (RW_Maybe'unknown' tag_) ->+                (Std_.pure (Maybe'unknown' tag_))+        )+instance ((GH.TypeParam t)) => (C.Marshal (GH.Which (Maybe t)) (C.Parsed (GH.Which (Maybe t)))) where+    marshalInto raw_ parsed_ = case parsed_ of+        (Maybe'nothing) ->+            (GH.encodeVariant #nothing () (GH.unionStruct raw_))+        (Maybe'just arg_) ->+            (GH.encodeVariant #just arg_ (GH.unionStruct raw_))+        (Maybe'unknown' tag_) ->+            (GH.encodeField GH.unionField tag_ (GH.unionStruct raw_))+data Either a b+type instance (R.ReprFor (Either a b)) = (R.Ptr (Std_.Just R.Struct))+instance ((GH.TypeParam a)+         ,(GH.TypeParam b)) => (C.TypedStruct (Either a b)) where+    numStructWords  = 1+    numStructPtrs  = 1+instance ((GH.TypeParam a)+         ,(GH.TypeParam b)) => (C.Allocate (Either a b)) where+    type AllocHint (Either a b) = ()+    new _ = C.newTypedStruct+instance ((GH.TypeParam a)+         ,(GH.TypeParam b)) => (C.EstimateAlloc (Either a b) (C.Parsed (Either a b)))+instance ((GH.TypeParam a)+         ,(GH.TypeParam b)) => (C.AllocateList (Either a b)) where+    type ListAllocHint (Either a b) = Std_.Int+    newList  = C.newTypedStructList+instance ((GH.TypeParam a)+         ,(GH.TypeParam b)) => (C.EstimateListAlloc (Either a b) (C.Parsed (Either a b)))+data instance C.Parsed (Either a b)+    = Either +        {union' :: (C.Parsed (GH.Which (Either a b)))}+    deriving(Generics.Generic)+deriving instance ((Std_.Show (RP.Parsed a))+                  ,(Std_.Show (RP.Parsed b))) => (Std_.Show (C.Parsed (Either a b)))+deriving instance ((Std_.Eq (RP.Parsed a))+                  ,(Std_.Eq (RP.Parsed b))) => (Std_.Eq (C.Parsed (Either a b)))+instance ((GH.TypeParam a)+         ,(GH.TypeParam b)) => (C.Parse (Either a b) (C.Parsed (Either a b))) where+    parse raw_ = (Either <$> (C.parse (GH.structUnion raw_)))+instance ((GH.TypeParam a)+         ,(GH.TypeParam b)) => (C.Marshal (Either a b) (C.Parsed (Either a b))) where+    marshalInto raw_ Either{..} = (do+        (C.marshalInto (GH.structUnion raw_) union')+        )+instance ((GH.TypeParam a)+         ,(GH.TypeParam b)) => (GH.HasUnion (Either a b)) where+    unionField  = (GH.dataField 0 0 16 0)+    data RawWhich mut_ (Either a b)+        = RW_Either'left (R.Raw mut_ a)+        | RW_Either'right (R.Raw mut_ b)+        | RW_Either'unknown' Std_.Word16+    internalWhich tag_ struct_ = case tag_ of+        0 ->+            (RW_Either'left <$> (GH.readVariant #left struct_))+        1 ->+            (RW_Either'right <$> (GH.readVariant #right struct_))+        _ ->+            (Std_.pure (RW_Either'unknown' tag_))+    data Which (Either a b)+instance ((GH.TypeParam a)+         ,(GH.TypeParam b)) => (GH.HasVariant "left" GH.Slot (Either a b) a) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 0)+instance ((GH.TypeParam a)+         ,(GH.TypeParam b)) => (GH.HasVariant "right" GH.Slot (Either a b) b) where+    variantByLabel  = (GH.Variant (GH.ptrField 0) 1)+data instance C.Parsed (GH.Which (Either a b))+    = Either'left (RP.Parsed a)+    | Either'right (RP.Parsed b)+    | Either'unknown' Std_.Word16+    deriving(Generics.Generic)+deriving instance ((Std_.Show (RP.Parsed a))+                  ,(Std_.Show (RP.Parsed b))) => (Std_.Show (C.Parsed (GH.Which (Either a b))))+deriving instance ((Std_.Eq (RP.Parsed a))+                  ,(Std_.Eq (RP.Parsed b))) => (Std_.Eq (C.Parsed (GH.Which (Either a b))))+instance ((GH.TypeParam a)+         ,(GH.TypeParam b)) => (C.Parse (GH.Which (Either a b)) (C.Parsed (GH.Which (Either a b)))) where+    parse raw_ = (do+        rawWhich_ <- (GH.unionWhich raw_)+        case rawWhich_ of+            (RW_Either'left rawArg_) ->+                (Either'left <$> (C.parse rawArg_))+            (RW_Either'right rawArg_) ->+                (Either'right <$> (C.parse rawArg_))+            (RW_Either'unknown' tag_) ->+                (Std_.pure (Either'unknown' tag_))+        )+instance ((GH.TypeParam a)+         ,(GH.TypeParam b)) => (C.Marshal (GH.Which (Either a b)) (C.Parsed (GH.Which (Either a b)))) where+    marshalInto raw_ parsed_ = case parsed_ of+        (Either'left arg_) ->+            (GH.encodeVariant #left arg_ (GH.unionStruct raw_))+        (Either'right arg_) ->+            (GH.encodeVariant #right arg_ (GH.unionStruct raw_))+        (Either'unknown' tag_) ->+            (GH.encodeField GH.unionField tag_ (GH.unionStruct raw_))+data Pair a b+type instance (R.ReprFor (Pair a b)) = (R.Ptr (Std_.Just R.Struct))+instance ((GH.TypeParam a)+         ,(GH.TypeParam b)) => (C.TypedStruct (Pair a b)) where+    numStructWords  = 0+    numStructPtrs  = 2+instance ((GH.TypeParam a)+         ,(GH.TypeParam b)) => (C.Allocate (Pair a b)) where+    type AllocHint (Pair a b) = ()+    new _ = C.newTypedStruct+instance ((GH.TypeParam a)+         ,(GH.TypeParam b)) => (C.EstimateAlloc (Pair a b) (C.Parsed (Pair a b)))+instance ((GH.TypeParam a)+         ,(GH.TypeParam b)) => (C.AllocateList (Pair a b)) where+    type ListAllocHint (Pair a b) = Std_.Int+    newList  = C.newTypedStructList+instance ((GH.TypeParam a)+         ,(GH.TypeParam b)) => (C.EstimateListAlloc (Pair a b) (C.Parsed (Pair a b)))+data instance C.Parsed (Pair a b)+    = Pair +        {fst :: (RP.Parsed a)+        ,snd :: (RP.Parsed b)}+    deriving(Generics.Generic)+deriving instance ((Std_.Show (RP.Parsed a))+                  ,(Std_.Show (RP.Parsed b))) => (Std_.Show (C.Parsed (Pair a b)))+deriving instance ((Std_.Eq (RP.Parsed a))+                  ,(Std_.Eq (RP.Parsed b))) => (Std_.Eq (C.Parsed (Pair a b)))+instance ((GH.TypeParam a)+         ,(GH.TypeParam b)) => (C.Parse (Pair a b) (C.Parsed (Pair a b))) where+    parse raw_ = (Pair <$> (GH.parseField #fst raw_)+                       <*> (GH.parseField #snd raw_))+instance ((GH.TypeParam a)+         ,(GH.TypeParam b)) => (C.Marshal (Pair a b) (C.Parsed (Pair a b))) where+    marshalInto raw_ Pair{..} = (do+        (GH.encodeField #fst fst raw_)+        (GH.encodeField #snd snd raw_)+        (Std_.pure ())+        )+instance ((GH.TypeParam a)+         ,(GH.TypeParam b)) => (GH.HasField "fst" GH.Slot (Pair a b) a) where+    fieldByLabel  = (GH.ptrField 0)+instance ((GH.TypeParam a)+         ,(GH.TypeParam b)) => (GH.HasField "snd" GH.Slot (Pair a b) b) where+    fieldByLabel  = (GH.ptrField 1)+data Nested t+type instance (R.ReprFor (Nested t)) = (R.Ptr (Std_.Just R.Struct))+instance ((GH.TypeParam t)) => (C.TypedStruct (Nested t)) where+    numStructWords  = 0+    numStructPtrs  = 0+instance ((GH.TypeParam t)) => (C.Allocate (Nested t)) where+    type AllocHint (Nested t) = ()+    new _ = C.newTypedStruct+instance ((GH.TypeParam t)) => (C.EstimateAlloc (Nested t) (C.Parsed (Nested t)))+instance ((GH.TypeParam t)) => (C.AllocateList (Nested t)) where+    type ListAllocHint (Nested t) = Std_.Int+    newList  = C.newTypedStructList+instance ((GH.TypeParam t)) => (C.EstimateListAlloc (Nested t) (C.Parsed (Nested t)))+data instance C.Parsed (Nested t)+    = Nested +        {}+    deriving(Generics.Generic)+deriving instance ((Std_.Show (RP.Parsed t))) => (Std_.Show (C.Parsed (Nested t)))+deriving instance ((Std_.Eq (RP.Parsed t))) => (Std_.Eq (C.Parsed (Nested t)))+instance ((GH.TypeParam t)) => (C.Parse (Nested t) (C.Parsed (Nested t))) where+    parse raw_ = (Std_.pure Nested)+instance ((GH.TypeParam t)) => (C.Marshal (Nested t) (C.Parsed (Nested t))) where+    marshalInto _raw (Nested) = (Std_.pure ())+data Nested'SomeStruct t+type instance (R.ReprFor (Nested'SomeStruct t)) = (R.Ptr (Std_.Just R.Struct))+instance ((GH.TypeParam t)) => (C.TypedStruct (Nested'SomeStruct t)) where+    numStructWords  = 0+    numStructPtrs  = 1+instance ((GH.TypeParam t)) => (C.Allocate (Nested'SomeStruct t)) where+    type AllocHint (Nested'SomeStruct t) = ()+    new _ = C.newTypedStruct+instance ((GH.TypeParam t)) => (C.EstimateAlloc (Nested'SomeStruct t) (C.Parsed (Nested'SomeStruct t)))+instance ((GH.TypeParam t)) => (C.AllocateList (Nested'SomeStruct t)) where+    type ListAllocHint (Nested'SomeStruct t) = Std_.Int+    newList  = C.newTypedStructList+instance ((GH.TypeParam t)) => (C.EstimateListAlloc (Nested'SomeStruct t) (C.Parsed (Nested'SomeStruct t)))+data instance C.Parsed (Nested'SomeStruct t)+    = Nested'SomeStruct +        {value :: (RP.Parsed t)}+    deriving(Generics.Generic)+deriving instance ((Std_.Show (RP.Parsed t))) => (Std_.Show (C.Parsed (Nested'SomeStruct t)))+deriving instance ((Std_.Eq (RP.Parsed t))) => (Std_.Eq (C.Parsed (Nested'SomeStruct t)))+instance ((GH.TypeParam t)) => (C.Parse (Nested'SomeStruct t) (C.Parsed (Nested'SomeStruct t))) where+    parse raw_ = (Nested'SomeStruct <$> (GH.parseField #value raw_))+instance ((GH.TypeParam t)) => (C.Marshal (Nested'SomeStruct t) (C.Parsed (Nested'SomeStruct t))) where+    marshalInto raw_ Nested'SomeStruct{..} = (do+        (GH.encodeField #value value raw_)+        (Std_.pure ())+        )+instance ((GH.TypeParam t)) => (GH.HasField "value" GH.Slot (Nested'SomeStruct t) t) where+    fieldByLabel  = (GH.ptrField 0)+data Nested'SomeInterface t+type instance (R.ReprFor (Nested'SomeInterface t)) = (R.Ptr (Std_.Just R.Cap))+instance ((GH.TypeParam t)) => (C.Parse (Nested'SomeInterface t) (GH.Client (Nested'SomeInterface t))) where+    parse  = GH.parseCap+    encode  = GH.encodeCap+instance ((GH.TypeParam t)) => (GH.HasMethod "method" (Nested'SomeInterface t) (Nested'SomeInterface'method'params t) (Nested'SomeInterface'method'results t)) where+    methodByLabel  = (GH.Method 17400383877992806407 0)+data Nested'SomeInterface'method'params t+type instance (R.ReprFor (Nested'SomeInterface'method'params t)) = (R.Ptr (Std_.Just R.Struct))+instance ((GH.TypeParam t)) => (C.TypedStruct (Nested'SomeInterface'method'params t)) where+    numStructWords  = 0+    numStructPtrs  = 1+instance ((GH.TypeParam t)) => (C.Allocate (Nested'SomeInterface'method'params t)) where+    type AllocHint (Nested'SomeInterface'method'params t) = ()+    new _ = C.newTypedStruct+instance ((GH.TypeParam t)) => (C.EstimateAlloc (Nested'SomeInterface'method'params t) (C.Parsed (Nested'SomeInterface'method'params t)))+instance ((GH.TypeParam t)) => (C.AllocateList (Nested'SomeInterface'method'params t)) where+    type ListAllocHint (Nested'SomeInterface'method'params t) = Std_.Int+    newList  = C.newTypedStructList+instance ((GH.TypeParam t)) => (C.EstimateListAlloc (Nested'SomeInterface'method'params t) (C.Parsed (Nested'SomeInterface'method'params t)))+data instance C.Parsed (Nested'SomeInterface'method'params t)+    = Nested'SomeInterface'method'params +        {arg :: (RP.Parsed t)}+    deriving(Generics.Generic)+deriving instance ((Std_.Show (RP.Parsed t))) => (Std_.Show (C.Parsed (Nested'SomeInterface'method'params t)))+deriving instance ((Std_.Eq (RP.Parsed t))) => (Std_.Eq (C.Parsed (Nested'SomeInterface'method'params t)))+instance ((GH.TypeParam t)) => (C.Parse (Nested'SomeInterface'method'params t) (C.Parsed (Nested'SomeInterface'method'params t))) where+    parse raw_ = (Nested'SomeInterface'method'params <$> (GH.parseField #arg raw_))+instance ((GH.TypeParam t)) => (C.Marshal (Nested'SomeInterface'method'params t) (C.Parsed (Nested'SomeInterface'method'params t))) where+    marshalInto raw_ Nested'SomeInterface'method'params{..} = (do+        (GH.encodeField #arg arg raw_)+        (Std_.pure ())+        )+instance ((GH.TypeParam t)) => (GH.HasField "arg" GH.Slot (Nested'SomeInterface'method'params t) t) where+    fieldByLabel  = (GH.ptrField 0)+data Nested'SomeInterface'method'results t+type instance (R.ReprFor (Nested'SomeInterface'method'results t)) = (R.Ptr (Std_.Just R.Struct))+instance ((GH.TypeParam t)) => (C.TypedStruct (Nested'SomeInterface'method'results t)) where+    numStructWords  = 0+    numStructPtrs  = 1+instance ((GH.TypeParam t)) => (C.Allocate (Nested'SomeInterface'method'results t)) where+    type AllocHint (Nested'SomeInterface'method'results t) = ()+    new _ = C.newTypedStruct+instance ((GH.TypeParam t)) => (C.EstimateAlloc (Nested'SomeInterface'method'results t) (C.Parsed (Nested'SomeInterface'method'results t)))+instance ((GH.TypeParam t)) => (C.AllocateList (Nested'SomeInterface'method'results t)) where+    type ListAllocHint (Nested'SomeInterface'method'results t) = Std_.Int+    newList  = C.newTypedStructList+instance ((GH.TypeParam t)) => (C.EstimateListAlloc (Nested'SomeInterface'method'results t) (C.Parsed (Nested'SomeInterface'method'results t)))+data instance C.Parsed (Nested'SomeInterface'method'results t)+    = Nested'SomeInterface'method'results +        {result :: (RP.Parsed t)}+    deriving(Generics.Generic)+deriving instance ((Std_.Show (RP.Parsed t))) => (Std_.Show (C.Parsed (Nested'SomeInterface'method'results t)))+deriving instance ((Std_.Eq (RP.Parsed t))) => (Std_.Eq (C.Parsed (Nested'SomeInterface'method'results t)))+instance ((GH.TypeParam t)) => (C.Parse (Nested'SomeInterface'method'results t) (C.Parsed (Nested'SomeInterface'method'results t))) where+    parse raw_ = (Nested'SomeInterface'method'results <$> (GH.parseField #result raw_))+instance ((GH.TypeParam t)) => (C.Marshal (Nested'SomeInterface'method'results t) (C.Parsed (Nested'SomeInterface'method'results t))) where+    marshalInto raw_ Nested'SomeInterface'method'results{..} = (do+        (GH.encodeField #result result raw_)+        (Std_.pure ())+        )+instance ((GH.TypeParam t)) => (GH.HasField "result" GH.Slot (Nested'SomeInterface'method'results t) t) where+    fieldByLabel  = (GH.ptrField 0)+data Specialized t+type instance (R.ReprFor (Specialized t)) = (R.Ptr (Std_.Just R.Struct))+instance ((GH.TypeParam t)) => (C.TypedStruct (Specialized t)) where+    numStructWords  = 0+    numStructPtrs  = 2+instance ((GH.TypeParam t)) => (C.Allocate (Specialized t)) where+    type AllocHint (Specialized t) = ()+    new _ = C.newTypedStruct+instance ((GH.TypeParam t)) => (C.EstimateAlloc (Specialized t) (C.Parsed (Specialized t)))+instance ((GH.TypeParam t)) => (C.AllocateList (Specialized t)) where+    type ListAllocHint (Specialized t) = Std_.Int+    newList  = C.newTypedStructList+instance ((GH.TypeParam t)) => (C.EstimateListAlloc (Specialized t) (C.Parsed (Specialized t)))+data instance C.Parsed (Specialized t)+    = Specialized +        {either :: (RP.Parsed (Either Basics.Text t))+        ,nestedStruct :: (RP.Parsed (Nested'SomeStruct Basics.Data))}+    deriving(Generics.Generic)+deriving instance ((Std_.Show (RP.Parsed t))) => (Std_.Show (C.Parsed (Specialized t)))+deriving instance ((Std_.Eq (RP.Parsed t))) => (Std_.Eq (C.Parsed (Specialized t)))+instance ((GH.TypeParam t)) => (C.Parse (Specialized t) (C.Parsed (Specialized t))) where+    parse raw_ = (Specialized <$> (GH.parseField #either raw_)+                              <*> (GH.parseField #nestedStruct raw_))+instance ((GH.TypeParam t)) => (C.Marshal (Specialized t) (C.Parsed (Specialized t))) where+    marshalInto raw_ Specialized{..} = (do+        (GH.encodeField #either either raw_)+        (GH.encodeField #nestedStruct nestedStruct raw_)+        (Std_.pure ())+        )+instance ((GH.TypeParam t)) => (GH.HasField "either" GH.Slot (Specialized t) (Either Basics.Text t)) where+    fieldByLabel  = (GH.ptrField 0)+instance ((GH.TypeParam t)) => (GH.HasField "nestedStruct" GH.Slot (Specialized t) (Nested'SomeStruct Basics.Data)) where+    fieldByLabel  = (GH.ptrField 1)+data HasGroup t+type instance (R.ReprFor (HasGroup t)) = (R.Ptr (Std_.Just R.Struct))+instance ((GH.TypeParam t)) => (C.TypedStruct (HasGroup t)) where+    numStructWords  = 0+    numStructPtrs  = 1+instance ((GH.TypeParam t)) => (C.Allocate (HasGroup t)) where+    type AllocHint (HasGroup t) = ()+    new _ = C.newTypedStruct+instance ((GH.TypeParam t)) => (C.EstimateAlloc (HasGroup t) (C.Parsed (HasGroup t)))+instance ((GH.TypeParam t)) => (C.AllocateList (HasGroup t)) where+    type ListAllocHint (HasGroup t) = Std_.Int+    newList  = C.newTypedStructList+instance ((GH.TypeParam t)) => (C.EstimateListAlloc (HasGroup t) (C.Parsed (HasGroup t)))+data instance C.Parsed (HasGroup t)+    = HasGroup +        {theGroup :: (RP.Parsed (HasGroup'theGroup t))}+    deriving(Generics.Generic)+deriving instance ((Std_.Show (RP.Parsed t))) => (Std_.Show (C.Parsed (HasGroup t)))+deriving instance ((Std_.Eq (RP.Parsed t))) => (Std_.Eq (C.Parsed (HasGroup t)))+instance ((GH.TypeParam t)) => (C.Parse (HasGroup t) (C.Parsed (HasGroup t))) where+    parse raw_ = (HasGroup <$> (GH.parseField #theGroup raw_))+instance ((GH.TypeParam t)) => (C.Marshal (HasGroup t) (C.Parsed (HasGroup t))) where+    marshalInto raw_ HasGroup{..} = (do+        (do+            group_ <- (GH.readField #theGroup raw_)+            (C.marshalInto group_ theGroup)+            )+        (Std_.pure ())+        )+instance ((GH.TypeParam t)) => (GH.HasField "theGroup" GH.Group (HasGroup t) (HasGroup'theGroup t)) where+    fieldByLabel  = GH.groupField+data HasGroup'theGroup t+type instance (R.ReprFor (HasGroup'theGroup t)) = (R.Ptr (Std_.Just R.Struct))+instance ((GH.TypeParam t)) => (C.TypedStruct (HasGroup'theGroup t)) where+    numStructWords  = 0+    numStructPtrs  = 1+instance ((GH.TypeParam t)) => (C.Allocate (HasGroup'theGroup t)) where+    type AllocHint (HasGroup'theGroup t) = ()+    new _ = C.newTypedStruct+instance ((GH.TypeParam t)) => (C.EstimateAlloc (HasGroup'theGroup t) (C.Parsed (HasGroup'theGroup t)))+instance ((GH.TypeParam t)) => (C.AllocateList (HasGroup'theGroup t)) where+    type ListAllocHint (HasGroup'theGroup t) = Std_.Int+    newList  = C.newTypedStructList+instance ((GH.TypeParam t)) => (C.EstimateListAlloc (HasGroup'theGroup t) (C.Parsed (HasGroup'theGroup t)))+data instance C.Parsed (HasGroup'theGroup t)+    = HasGroup'theGroup' +        {value :: (RP.Parsed t)}+    deriving(Generics.Generic)+deriving instance ((Std_.Show (RP.Parsed t))) => (Std_.Show (C.Parsed (HasGroup'theGroup t)))+deriving instance ((Std_.Eq (RP.Parsed t))) => (Std_.Eq (C.Parsed (HasGroup'theGroup t)))+instance ((GH.TypeParam t)) => (C.Parse (HasGroup'theGroup t) (C.Parsed (HasGroup'theGroup t))) where+    parse raw_ = (HasGroup'theGroup' <$> (GH.parseField #value raw_))+instance ((GH.TypeParam t)) => (C.Marshal (HasGroup'theGroup t) (C.Parsed (HasGroup'theGroup t))) where+    marshalInto raw_ HasGroup'theGroup'{..} = (do+        (GH.encodeField #value value raw_)+        (Std_.pure ())+        )+instance ((GH.TypeParam t)) => (GH.HasField "value" GH.Slot (HasGroup'theGroup t) t) where+    fieldByLabel  = (GH.ptrField 0)
lib/Capnp/Basics/Pure.hs view
@@ -34,7 +34,7 @@ import Capnp.Classes  import Capnp.Errors  (Error(InvalidUtf8Error))-import Capnp.Message (Mutability (..))+import Capnp.Message (Mutability(..)) import Capnp.Untyped (rawBytes)  import qualified Capnp.Basics  as Basics
lib/Capnp/Bits.hs view
@@ -101,6 +101,7 @@     (orig .&. mask) .|. (fromIntegral new `shiftL` shift)   where     mask = complement $ fromIntegral (maxBound `asTypeOf` new) `shiftL` shift+{-# INLINE replaceBits #-}  -- | 1 bit datatype, in the tradition of Word8, Word16 et al. newtype Word1 = Word1 { word1ToBool :: Bool }
lib/Capnp/Canonicalize.hs view
@@ -30,11 +30,15 @@ import Data.Foldable    (for_) import Data.Maybe       (isNothing) import Data.Traversable (for)+-- import qualified Language.Haskell.TH as TH -import           Capnp.Bits    (WordCount)-import           Capnp.Message (Mutability (..))-import qualified Capnp.Message as M-import qualified Capnp.Untyped as U+import           Capnp.Bits           (WordCount)+import           Capnp.Message        (Mutability(..))+import qualified Capnp.Message        as M+import           Capnp.TraversalLimit (LimitT)+import qualified Capnp.Untyped        as U+import           Control.Monad.ST     (RealWorld)+-- import           Internal.BuildPure   (PureBuilder)  -- | 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@@ -44,8 +48,10 @@ -- malformed messages), this can fail if the message does not fit in a single segment, -- as the canonical form requires single-segment messages. canonicalize-    :: (U.RWCtx m s, M.MonadReadMessage mutIn m)-    => U.Struct mutIn -> m (M.Message ('Mut s), M.Segment ('Mut s))+   :: (U.RWCtx m s, M.MonadReadMessage mutIn m)+   => U.Struct mutIn -> m (M.Message ('Mut s), M.Segment ('Mut s))+{-# SPECIALIZE canonicalize :: U.Struct 'Const -> LimitT IO (M.Message ('Mut RealWorld), M.Segment ('Mut RealWorld)) #-}+{-# SPECIALIZE canonicalize :: U.Struct ('Mut RealWorld) -> LimitT IO (M.Message ('Mut RealWorld), M.Segment ('Mut RealWorld)) #-} canonicalize rootStructIn = do     let msgIn = U.message rootStructIn     -- Note [Allocation strategy]@@ -68,6 +74,8 @@ cloneCanonicalStruct     :: (U.RWCtx m s, M.MonadReadMessage mutIn m)     => U.Struct mutIn -> M.Message ('Mut s) -> m (U.Struct ('Mut s))+{-# SPECIALIZE cloneCanonicalStruct :: U.Struct 'Const -> M.Message ('Mut RealWorld) -> LimitT IO (U.Struct ('Mut RealWorld)) #-}+{-# SPECIALIZE cloneCanonicalStruct :: U.Struct ('Mut RealWorld) -> M.Message ('Mut RealWorld) -> LimitT IO (U.Struct ('Mut RealWorld)) #-} cloneCanonicalStruct structIn msgOut = do     (nWords, nPtrs) <- findCanonicalSectionCounts structIn     structOut <- U.allocStruct msgOut (fromIntegral nWords) (fromIntegral nPtrs)@@ -77,6 +85,8 @@ copyCanonicalStruct     :: (U.RWCtx m s, M.MonadReadMessage mutIn m)     => U.Struct mutIn -> U.Struct ('Mut s) -> m ()+{-# SPECIALIZE copyCanonicalStruct :: U.Struct 'Const -> U.Struct ('Mut RealWorld) -> LimitT IO () #-}+{-# SPECIALIZE copyCanonicalStruct :: U.Struct ('Mut RealWorld) -> U.Struct ('Mut RealWorld) -> LimitT IO () #-} copyCanonicalStruct structIn structOut = do     let nWords = fromIntegral $ U.structWordCount structOut         nPtrs = fromIntegral $ U.structPtrCount structOut@@ -88,7 +98,9 @@         ptrOut <- cloneCanonicalPtr ptrIn (U.message structOut)         U.setPtr ptrOut i structOut -findCanonicalSectionCounts :: U.ReadCtx m msg => U.Struct msg -> m (Word16, Word16)+findCanonicalSectionCounts :: U.ReadCtx m mut => U.Struct mut -> m (Word16, Word16)+{-# SPECIALIZE findCanonicalSectionCounts :: U.Struct 'Const -> LimitT IO (Word16, Word16) #-}+{-# SPECIALIZE findCanonicalSectionCounts :: U.Struct ('Mut RealWorld) -> LimitT IO (Word16, Word16) #-} findCanonicalSectionCounts struct = do     nWords <- canonicalSectionCount (== 0) (`U.getData` struct) (fromIntegral $ U.structWordCount struct)     nPtrs <- canonicalSectionCount isNothing (`U.getPtr` struct) (fromIntegral $ U.structPtrCount struct)@@ -105,6 +117,8 @@ cloneCanonicalPtr     :: (U.RWCtx m s, M.MonadReadMessage mutIn m)     => Maybe (U.Ptr mutIn) -> M.Message ('Mut s) -> m (Maybe (U.Ptr ('Mut s)))+{-# SPECIALIZE cloneCanonicalPtr :: Maybe (U.Ptr 'Const) -> M.Message ('Mut RealWorld) -> LimitT IO (Maybe (U.Ptr ('Mut RealWorld))) #-}+{-# SPECIALIZE cloneCanonicalPtr :: Maybe (U.Ptr ('Mut RealWorld)) -> M.Message ('Mut RealWorld) -> LimitT IO (Maybe (U.Ptr ('Mut RealWorld))) #-} cloneCanonicalPtr ptrIn msgOut =     case ptrIn of         Nothing ->@@ -120,6 +134,8 @@ cloneCanonicalList     :: (U.RWCtx m s, M.MonadReadMessage mutIn m)     => U.List mutIn -> M.Message ('Mut s) -> m (U.List ('Mut s))+{-# SPECIALIZE cloneCanonicalList :: U.List 'Const -> M.Message ('Mut RealWorld) -> LimitT IO (U.List ('Mut RealWorld)) #-}+{-# SPECIALIZE cloneCanonicalList :: U.List ('Mut RealWorld) -> M.Message ('Mut RealWorld) -> LimitT IO (U.List ('Mut RealWorld)) #-} cloneCanonicalList listIn msgOut =     case listIn of         U.List0 l -> U.List0 <$> U.allocList0 msgOut (U.length l)@@ -134,6 +150,16 @@ copyCanonicalDataList     :: (U.RWCtx m s, M.MonadReadMessage mutIn m)     => U.ListOf mutIn a -> U.ListOf ('Mut s) a -> m (U.ListOf ('Mut s) a)+{-# SPECIALIZE copyCanonicalDataList+    :: U.ListOf 'Const a+    -> U.ListOf ('Mut RealWorld) a+    -> LimitT IO (U.ListOf ('Mut RealWorld) a)+    #-}+{-# SPECIALIZE copyCanonicalDataList+    :: U.ListOf ('Mut RealWorld) a+    -> U.ListOf ('Mut RealWorld) a+    -> LimitT IO (U.ListOf ('Mut RealWorld) a)+    #-} copyCanonicalDataList listIn listOut = do     for_ [0..U.length listIn - 1] $ \i -> do         value <- U.index i listIn@@ -145,6 +171,16 @@     => U.ListOf mutIn (Maybe (U.Ptr mutIn))     -> U.ListOf ('Mut s) (Maybe (U.Ptr ('Mut s)))     -> m (U.ListOf ('Mut s) (Maybe (U.Ptr ('Mut s))))+{-# SPECIALIZE copyCanonicalPtrList+    :: U.ListOf 'Const (Maybe (U.Ptr 'Const))+    -> U.ListOf ('Mut RealWorld) (Maybe (U.Ptr ('Mut RealWorld)))+    -> LimitT IO (U.ListOf ('Mut RealWorld) (Maybe (U.Ptr ('Mut RealWorld))))+    #-}+{-# SPECIALIZE copyCanonicalPtrList+    :: U.ListOf ('Mut RealWorld) (Maybe (U.Ptr ('Mut RealWorld)))+    -> U.ListOf ('Mut RealWorld) (Maybe (U.Ptr ('Mut RealWorld)))+    -> LimitT IO (U.ListOf ('Mut RealWorld) (Maybe (U.Ptr ('Mut RealWorld))))+    #-} copyCanonicalPtrList listIn listOut = do     for_ [0..U.length listIn - 1] $ \i -> do         ptrIn <- U.index i listIn@@ -157,6 +193,16 @@     => U.ListOf mutIn (U.Struct mutIn)     -> M.Message ('Mut s)     -> m (U.ListOf ('Mut s) (U.Struct ('Mut s)))+{-# SPECIALIZE cloneCanonicalStructList+    :: U.ListOf 'Const (U.Struct 'Const)+    -> M.Message ('Mut RealWorld)+    -> LimitT IO (U.ListOf ('Mut RealWorld) (U.Struct ('Mut RealWorld)))+    #-}+{-# SPECIALIZE cloneCanonicalStructList+    :: U.ListOf ('Mut RealWorld) (U.Struct ('Mut RealWorld))+    -> M.Message ('Mut RealWorld)+    -> LimitT IO (U.ListOf ('Mut RealWorld) (U.Struct ('Mut RealWorld)))+    #-} cloneCanonicalStructList listIn msgOut = do     (nWords, nPtrs) <- findCanonicalListSectionCounts listIn     listOut <- U.allocCompositeList msgOut nWords nPtrs (U.length listIn)@@ -168,6 +214,16 @@     => U.ListOf mutIn (U.Struct mutIn)     -> U.ListOf ('Mut s) (U.Struct ('Mut s))     -> m ()+{-# SPECIALIZE copyCanonicalStructList+    :: U.ListOf 'Const (U.Struct 'Const)+    -> U.ListOf ('Mut RealWorld) (U.Struct ('Mut RealWorld))+    -> LimitT IO ()+    #-}+{-# SPECIALIZE copyCanonicalStructList+    :: U.ListOf ('Mut RealWorld) (U.Struct ('Mut RealWorld))+    -> U.ListOf ('Mut RealWorld) (U.Struct ('Mut RealWorld))+    -> LimitT IO ()+    #-} copyCanonicalStructList listIn listOut =     for_ [0..U.length listIn - 1] $ \i -> do         structIn <- U.index i listIn@@ -177,6 +233,12 @@ findCanonicalListSectionCounts     :: U.ReadCtx m mut     => U.ListOf mut (U.Struct mut) -> m (Word16, Word16)+{-# SPECIALIZE findCanonicalListSectionCounts+    :: U.ListOf 'Const (U.Struct 'Const) -> LimitT IO (Word16, Word16)+    #-}+{-# SPECIALIZE findCanonicalListSectionCounts+    :: U.ListOf ('Mut RealWorld) (U.Struct ('Mut RealWorld)) -> LimitT IO (Word16, Word16)+    #-} findCanonicalListSectionCounts list = go 0 0 0 where     go i !nWords !nPtrs         | i >= U.length list =@@ -185,3 +247,70 @@             struct <- U.index i list             (nWords', nPtrs') <- findCanonicalSectionCounts struct             go (i+1) (max nWords nWords') (max nPtrs nPtrs')+++{-+do+    -- Generate specializations for various functions above.+    --+    -- TODO: Figure out why this version doesn't seem to be taking+    -- effect; having the explicit SPECIALIZE pragmas written out+    -- literally results in a 15-20% speedup vs. trying to generate+    -- them with template haskell. But ew.+    --+    -- TODO(cleanup): find some way to group the signature & the specialization together+    -- without duplicating everything.+    let specializations :: [(TH.Name, [TH.TypeQ])]+        specializations =+            [ ( 'copyCanonicalStructList+              , each $ \mutIn mutOut m ->+                    [t| U.ListOf $mutIn (U.Struct $mutIn)+                        -> U.ListOf $mutOut (U.Struct $mutOut) -> $m ()+                    |]+              )+            , ( 'copyCanonicalDataList+              , each $ \mutIn mutOut m -> do+                    a <- pure . TH.VarT <$> TH.newName "a"+                    [t| U.ListOf $mutIn $a -> U.ListOf $mutOut $a -> $m (U.ListOf $mutOut $a) |]+              )+            , ( 'copyCanonicalPtrList+              , each $ \mutIn mutOut m ->+                    [t| U.ListOf $mutIn (Maybe (U.Ptr $mutIn))+                        -> U.ListOf $mutOut (Maybe (U.Ptr $mutOut))+                        -> $m (U.ListOf $mutOut (Maybe (U.Ptr $mutOut)))+                    |]+              )+            , ( 'cloneCanonicalPtr+              , each $ \mutIn mutOut m ->+                    [t| Maybe (U.Ptr $mutIn) -> M.Message $mutOut -> $m (Maybe (U.Ptr $mutOut)) |]+              )+            , ( 'cloneCanonicalList+              , each $ \mutIn mutOut m ->+                    [t| U.List $mutIn -> M.Message $mutOut -> $m (U.List $mutOut) |]+              )+            , ( 'cloneCanonicalStruct+              , each $ \mutIn mutOut m ->+                    [t| U.Struct $mutIn -> M.Message $mutOut -> $m (U.Struct $mutOut) |]+              )+            , ( 'copyCanonicalStruct+              , each $ \mutIn mutOut m ->+                    [t| U.Struct $mutIn -> U.Struct $mutOut -> $m () |]+              )+            ]+        each f = do+            let s = pure $ TH.VarT (TH.mkName "s")+            (m, s) <- [ ( [t| LimitT IO |], [t| RealWorld |] )+                      , ( [t| PureBuilder $s |], s )+                      ]+            mutIn <- [ [t| 'Const |], [t| 'Mut $s |] ]+            pure $ f mutIn [t| 'Mut $s |] m+{-+            map+                (\t -> f t [t| 'Mut RealWorld |] [t| LimitT IO |])+                [ [t| 'Const |], [t| 'Mut RealWorld |] ]+-}+    concat <$> for specializations (\(name, types) -> do+        for types $ \mkType -> do+            t <- mkType+            pure $ TH.PragmaD $ TH.SpecialiseP name t Nothing TH.AllPhases)+-}
lib/Capnp/Classes.hs view
@@ -54,10 +54,10 @@     , castWord64ToDouble     ) -import Capnp.Bits    (Word1 (..))+import Capnp.Bits    (Word1(..)) import Capnp.Errors  (Error(SchemaViolationError))-import Capnp.Message (Mutability (..))-import Capnp.Untyped (Cap, ListOf, Ptr (..), ReadCtx, Struct, messageDefault)+import Capnp.Message (Mutability(..))+import Capnp.Untyped (Cap, ListOf, Ptr(..), ReadCtx, Struct, messageDefault)  import qualified Capnp.Message as M import qualified Capnp.Untyped as U
lib/Capnp/Convert.hs view
@@ -1,4 +1,5 @@ {-# LANGUAGE DataKinds        #-}+{-# LANGUAGE ExplicitForAll   #-} {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE TypeFamilies     #-} {-|@@ -28,6 +29,15 @@     , valueToBS     , valueToLBS     , valueToMsg++    -- new API+    , msgToRaw+    , msgToParsed+    , parsedToRaw+    , parsedToMsg+    , parsedToBuilder+    , parsedToBS+    , parsedToLBS     ) where  import Control.Monad       ((>=>))@@ -41,12 +51,15 @@ import Capnp.Classes  import Capnp.Bits           (WordCount)-import Capnp.Message        (Mutability (..))+import Capnp.Message        (Mutability(..))+import Capnp.New.Classes    (Parse(encode, parse)) import Capnp.TraversalLimit (LimitT, MonadLimit, evalLimitT) import Codec.Capnp          (getRoot, setRoot) import Data.Mutable         (freeze)  import qualified Capnp.Message as M+import qualified Capnp.Repr    as R+import qualified Capnp.Untyped as U  -- | Compute a reasonable limit based on the size of a message. The limit -- is the total number of words in all of the message's segments, multiplied@@ -122,3 +135,39 @@     ret <- cerialize msg val     setRoot ret     pure msg++-- | Get the root pointer of a message, wrapped as a 'R.Raw'.+msgToRaw :: forall a m mut. (U.ReadCtx m mut, R.IsStruct a) => M.Message mut -> m (R.Raw mut a)+msgToRaw = fmap R.Raw . U.rootPtr++-- | Get the root pointer of a message, as a parsed ADT.+msgToParsed :: forall a m pa. (U.ReadCtx m 'Const, R.IsStruct a, Parse a pa) => M.Message 'Const -> m pa+msgToParsed msg = msgToRaw msg >>= parse++-- | Serialize the parsed form of a struct into its 'R.Raw' form, and make it the root+-- of its message.+parsedToRaw :: forall a m pa s. (U.RWCtx m s, R.IsStruct a, Parse a pa) => pa -> m (R.Raw ('Mut s) a)+parsedToRaw p = do+    msg <- M.newMessage Nothing+    value@(R.Raw struct) <- encode msg p+    U.setRoot struct+    pure value++-- | Serialize the parsed form of a struct into a message with that value as its+-- root, returning the message.+parsedToMsg :: forall a m pa s. (U.RWCtx m s, R.IsStruct a, Parse a pa) => pa -> m (M.Message ('Mut s))+parsedToMsg p = do+    root <- parsedToRaw p+    pure $ U.message root++-- | Serialize the parsed form of a struct and return it as a 'BB.Builder'+parsedToBuilder :: forall a m pa s. (U.RWCtx m s, R.IsStruct a, Parse a pa) => pa -> m BB.Builder+parsedToBuilder p = msgToBuilder <$> (parsedToMsg p >>= freeze)++-- | Serialize the parsed form of a struct and return it as a lazy 'LBS.ByteString'+parsedToLBS :: forall a m pa s. (U.RWCtx m s, R.IsStruct a, Parse a pa) => pa -> m LBS.ByteString+parsedToLBS = fmap BB.toLazyByteString . parsedToBuilder++-- | Serialize the parsed form of a struct and return it as a strict 'BS.ByteString'+parsedToBS :: forall a m pa s. (U.RWCtx m s, R.IsStruct a, Parse a pa) => pa -> m BS.ByteString+parsedToBS = fmap LBS.toStrict . parsedToLBS
+ lib/Capnp/Fields.hs view
@@ -0,0 +1,128 @@+{-# LANGUAGE AllowAmbiguousTypes    #-}+{-# LANGUAGE DataKinds              #-}+{-# LANGUAGE FlexibleContexts       #-}+{-# LANGUAGE FlexibleInstances      #-}+{-# LANGUAGE FunctionalDependencies #-}+{-# LANGUAGE GADTs                  #-}+{-# LANGUAGE ScopedTypeVariables    #-}+{-# LANGUAGE TypeApplications       #-}+{-# LANGUAGE TypeFamilies           #-}+{-# LANGUAGE UndecidableInstances   #-}+-- | Module: Capnp.Fields+-- Description: Support for working with struct fields+module Capnp.Fields+    ( HasField(..)+    , Field(..)+    , FieldLoc(..)+    , DataFieldLoc(..)+    , FieldKind(..)+    , HasUnion(..)+    , Variant(..)+    , HasVariant(..)+    ) where+++import Capnp.Bits+import Data.Word++import GHC.OverloadedLabels (IsLabel(..))+import GHC.TypeLits         (Symbol)++import qualified Capnp.Classes     as C+import qualified Capnp.Message     as M+import qualified Capnp.New.Classes as NC+import qualified Capnp.Repr        as R+import qualified Capnp.Untyped     as U++-- | 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).+data FieldKind+    = 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.+    deriving(Show, Read, Eq)++-- | @'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.+newtype Field (k :: FieldKind) a b = Field (FieldLoc k (R.ReprFor b))++-- | The location of a field within a message.+data FieldLoc (k :: FieldKind) (r :: R.Repr) where+    GroupField :: FieldLoc 'Group ('R.Ptr ('Just 'R.Struct))+    PtrField :: R.IsPtrRepr a => Word16 -> FieldLoc 'Slot ('R.Ptr a)+    DataField :: C.IsWord (R.UntypedData a) => DataFieldLoc a -> FieldLoc 'Slot ('R.Data a)+    VoidField :: FieldLoc 'Slot ('R.Data 'R.Sz0)++-- | The location of a data (non-pointer) field.+data DataFieldLoc (sz :: R.DataSz) = DataFieldLoc+    { shift        :: !BitCount+    , index        :: !Word16+    , mask         :: !Word64+    , defaultValue :: !Word64+    }++-- | An instance of 'HasUnion' indicates that the given type is a capnproto struct+-- (or group) with an anonymous union.+class R.IsStruct a => HasUnion a where+    -- | 'unionField' is a field holding the union's tag.+    unionField :: Field 'Slot a Word16++    -- | '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 Which a++    -- | Concrete view into a union embedded in a message. This will be a sum+    -- type with other 'Raw' values as arguments.+    data RawWhich (mut :: M.Mutability) a++    -- | Helper used in generated code to extract a 'RawWhich' from its+    -- surrounding struct.+    internalWhich :: U.ReadCtx m mut => Word16 -> R.Raw mut a -> m (RawWhich mut a)++type instance R.ReprFor (Which a) = 'R.Ptr ('Just 'R.Struct)++instance (NC.Allocate a, HasUnion a, R.IsStruct (Which a)) => NC.Allocate (Which a) where+    type AllocHint (Which a) = NC.AllocHint a+    new hint msg = do+        R.Raw struct <- NC.new @a hint msg+        pure (R.Raw struct)++instance+    ( NC.Allocate (Which a)+    , NC.AllocHint (Which a) ~ ()+    , NC.Parse (Which a) p+    ) => NC.EstimateAlloc (Which a) p++-- | @'Variant' k a b@ is a first-class representation of a variant of @a@'s+-- anonymous union, whose argument is of type @b@.+data Variant (k :: FieldKind) a b = Variant+    { field    :: !(Field k a b)+    , tagValue :: !Word16+    }++-- | 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.+class R.IsStruct a => HasField (name :: Symbol) k a b | a name -> k b where+    fieldByLabel :: Field k a b++instance HasField name k a b => IsLabel name (Field k a b) where+    fromLabel = fieldByLabel @name @k @a @b++-- | 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@.+class HasUnion a => HasVariant (name :: Symbol) k a b | a name -> k b where+    variantByLabel :: Variant k a b++instance HasVariant name k a b => IsLabel name (Variant k a b) where+    fromLabel = variantByLabel @name @k @a @b
+ lib/Capnp/GenHelpers/New.hs view
@@ -0,0 +1,108 @@+{-# LANGUAGE ConstraintKinds       #-}+{-# LANGUAGE DataKinds             #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE FlexibleContexts      #-}+{-# LANGUAGE NamedFieldPuns        #-}+{-# LANGUAGE ScopedTypeVariables   #-}+{-# LANGUAGE TypeApplications      #-}+{-# LANGUAGE TypeFamilies          #-}+module Capnp.GenHelpers.New+    ( dataField+    , ptrField+    , groupField+    , voidField+    , readVariant+    , Mutability(..)+    , TypeParam+    , newStruct+    , parseField+    , encodeField+    , encodeVariant+    , initVariant+    , unionWhich+    , readField+    , structUnion+    , unionStruct+    , parseEnum+    , encodeEnum+    , parseCap+    , encodeCap+    , getPtrConst+    , module F+    , module Capnp.Repr.Methods+    ) where++import           Capnp.Bits+import qualified Capnp.Classes      as C+import           Capnp.Fields       as F+import           Capnp.GenHelpers   (getPtrConst)+import           Capnp.Message      (Mutability(..))+import qualified Capnp.Message      as M+import           Capnp.New+    ( TypeParam+    , encodeField+    , encodeVariant+    , initVariant+    , parseField+    , readField+    , structUnion+    , unionStruct+    , unionWhich+    )+import qualified Capnp.New.Basics   as NB+import qualified Capnp.New.Classes  as NC+import qualified Capnp.Repr         as R+import           Capnp.Repr.Methods+import qualified Capnp.Untyped      as U+import           Data.Bits+import           Data.Word++dataField+    :: forall b a sz.+    ( R.ReprFor b ~ 'R.Data sz+    , C.IsWord (R.UntypedData sz)+    )+    => BitCount -> Word16 -> BitCount -> Word64 -> F.Field 'F.Slot a b+dataField shift index nbits defaultValue = F.Field $ F.DataField @sz F.DataFieldLoc+    { shift+    , index+    , mask = ((1 `shiftL` fromIntegral nbits) - 1) `shiftL` fromIntegral shift+    , defaultValue+    }++ptrField :: forall a b. R.IsPtr b => Word16 -> F.Field 'F.Slot a b+ptrField = F.Field . F.PtrField @(R.PtrReprFor (R.ReprFor b))++groupField :: (R.ReprFor b ~ 'R.Ptr ('Just 'R.Struct)) => F.Field 'F.Group a b+groupField = F.Field F.GroupField++voidField :: (R.ReprFor b ~ 'R.Data 'R.Sz0) => F.Field 'F.Slot a b+voidField = F.Field F.VoidField++-- | Like 'readField', but accepts a variant. Warning: *DOES NOT CHECK* that the+-- variant is the one that is set. This should only be used by generated code.+readVariant+    ::  forall k a b mut m.+        ( R.IsStruct a+        , U.ReadCtx m mut+        )+    => F.Variant k a b -> R.Raw mut a -> m (R.Raw mut b)+readVariant F.Variant{field} = readField field++newStruct :: forall a m s. (U.RWCtx m s, NC.TypedStruct a) => () -> M.Message ('Mut s) -> m (R.Raw ('Mut s) a)+newStruct () msg = R.Raw . R.fromRaw <$> NC.new @NB.AnyStruct (NC.numStructWords @a, NC.numStructPtrs @a) msg+++parseEnum :: (R.ReprFor a ~ 'R.Data 'R.Sz16, Enum a, Applicative m)+    => R.Raw 'Const a -> m a+parseEnum (R.Raw n) = pure $ toEnum $ fromIntegral n++encodeEnum :: forall a m s. (R.ReprFor a ~ 'R.Data 'R.Sz16, Enum a, U.RWCtx m s)+    => M.Message ('Mut s) -> a -> m (R.Raw ('Mut s) a)+encodeEnum _msg value = pure $ R.Raw $ fromIntegral $ fromEnum @a value++parseCap :: (R.IsCap a, U.ReadCtx m 'Const) => R.Raw 'Const a -> m (Client a)+parseCap (R.Raw cap) = Client <$> U.getClient cap++encodeCap :: (R.IsCap a, U.RWCtx m s) => M.Message ('Mut s) -> Client a -> m (R.Raw ('Mut s) a)+encodeCap msg (Client c) = R.Raw <$> U.appendCap msg c
lib/Capnp/GenHelpers/Pure.hs view
@@ -27,7 +27,7 @@ import Data.Maybe (fromJust)  import Capnp.Classes        (cerializeBasicVec, cerializeCompositeVec)-import Capnp.Message        (Mutability (..))+import Capnp.Message        (Mutability(..)) import Capnp.TraversalLimit (evalLimitT) import Codec.Capnp          (getRoot) 
lib/Capnp/GenHelpers/Rpc.hs view
@@ -12,11 +12,11 @@ module Capnp.GenHelpers.Rpc where  import Control.Exception.Safe (fromException, tryAny)-import Control.Monad.Catch    (MonadThrow (..))+import Control.Monad.Catch    (MonadThrow(..)) import Data.Default           (def) -import Capnp.Classes        (Decerialize (..), FromPtr (..))-import Capnp.Message        (Mutability (..))+import Capnp.Classes        (Decerialize(..), FromPtr(..))+import Capnp.Message        (Mutability(..)) import Capnp.TraversalLimit (evalLimitT)  import qualified Capnp.Errors          as E
lib/Capnp/IO.hs view
@@ -5,9 +5,12 @@ This module provides utilities for reading and writing values to and from file 'Handle's. -}-{-# LANGUAGE BangPatterns     #-}-{-# LANGUAGE DataKinds        #-}-{-# LANGUAGE FlexibleContexts #-}+{-# LANGUAGE BangPatterns        #-}+{-# LANGUAGE DataKinds           #-}+{-# LANGUAGE FlexibleContexts    #-}+{-# LANGUAGE ScopedTypeVariables #-}+{-# LANGUAGE TypeApplications    #-}+{-# LANGUAGE TypeFamilies        #-} module Capnp.IO     ( hGetValue     , getValue@@ -21,6 +24,16 @@     , M.getMsg     , M.hPutMsg     , M.putMsg++    , hGetParsed+    , sGetParsed+    , getParsed+    , hPutParsed+    , sPutParsed+    , putParsed+    , hGetRaw+    , getRaw+    , sGetRaw     ) where  import Data.Bits@@ -32,18 +45,22 @@ import System.IO                 (Handle, stdin, stdout) import System.IO.Error           (eofErrorType, mkIOError) -import qualified Data.ByteString as BS+import qualified Data.ByteString         as BS+import qualified Data.ByteString.Builder as BB  import Capnp.Bits           (WordCount, wordsToBytes) import Capnp.Classes-    (Cerialize (..), Decerialize (..), FromStruct (..), ToStruct (..))-import Capnp.Convert        (msgToLBS, valueToLBS)-import Capnp.Message        (Mutability (..))+    (Cerialize(..), Decerialize(..), FromStruct(..), ToStruct(..))+import Capnp.Convert+    (msgToLBS, msgToParsed, msgToRaw, parsedToBuilder, parsedToLBS, valueToLBS)+import Capnp.Message        (Mutability(..))+import Capnp.New.Classes    (Parse) import Capnp.TraversalLimit (evalLimitT) import Codec.Capnp          (getRoot, setRoot)-import Data.Mutable         (Thaw (..))+import Data.Mutable         (Thaw(..))  import qualified Capnp.Message as M+import qualified Capnp.Repr    as R  -- | @'hGetValue' limit handle@ reads a message from @handle@, returning its root object. -- @limit@ is used as both a cap on the size of a message which may be read and, for types@@ -123,3 +140,57 @@ sPutValue socket value = do     lbs <- evalLimitT maxBound $ valueToLBS value     sendLazy socket lbs++-- | Read a struct from the handle in its parsed form, using the supplied+-- read limit.+hGetParsed :: forall a pa. (R.IsStruct a, Parse a pa) => Handle -> WordCount -> IO pa+hGetParsed handle limit = do+    msg <- M.hGetMsg handle limit+    evalLimitT limit $ msgToParsed @a msg++-- | Read a struct from the socket in its parsed form, using the supplied+-- read limit.+sGetParsed :: forall a pa. (R.IsStruct a, Parse a pa) => Socket -> WordCount -> IO pa+sGetParsed socket limit = do+    msg <- sGetMsg socket limit+    evalLimitT limit $ msgToParsed @a msg++-- | Read a struct from stdin in its parsed form, using the supplied+-- read limit.+getParsed :: (R.IsStruct a, Parse a pa) => WordCount -> IO pa+getParsed = hGetParsed stdin++-- | Write the parsed form of a struct to the handle+hPutParsed :: (R.IsStruct a, Parse a pa) => Handle -> pa -> IO ()+hPutParsed h value = do+    bb <- evalLimitT maxBound $ parsedToBuilder value+    BB.hPutBuilder h bb++-- | Write the parsed form of a struct to stdout+putParsed :: (R.IsStruct a, Parse a pa) => pa -> IO ()+putParsed = hPutParsed stdout++-- | Write the parsed form of a struct to the socket.+sPutParsed :: (R.IsStruct a, Parse a pa) => Socket -> pa -> IO ()+sPutParsed socket value  = do+    lbs <- evalLimitT maxBound $ parsedToLBS value+    sendLazy socket lbs++-- | Read a struct from the handle using the supplied read limit,+-- and return its root pointer.+hGetRaw :: R.IsStruct a => Handle -> WordCount -> IO (R.Raw 'Const a)+hGetRaw h limit = do+    msg <- M.hGetMsg h limit+    evalLimitT limit $ msgToRaw msg++-- | Read a struct from stdin using the supplied read limit,+-- and return its root pointer.+getRaw :: R.IsStruct a => WordCount -> IO (R.Raw 'Const a)+getRaw = hGetRaw stdin++-- | Read a struct from the socket using the supplied read limit,+-- and return its root pointer.+sGetRaw :: R.IsStruct a => Socket -> WordCount -> IO (R.Raw 'Const a)+sGetRaw socket limit = do+    msg <- sGetMsg socket limit+    evalLimitT limit $ msgToRaw msg
lib/Capnp/Message.hs view
@@ -78,18 +78,18 @@ import Data.Bits (shiftL)  import Control.Monad             (void, when, (>=>))-import Control.Monad.Catch       (MonadThrow (..))+import Control.Monad.Catch       (MonadThrow(..)) import Control.Monad.Primitive   (PrimMonad, PrimState, stToPrim) import Control.Monad.State       (evalStateT, get, put) import Control.Monad.Trans.Class (lift) import Control.Monad.Writer      (execWriterT, tell)-import Data.ByteString.Internal  (ByteString (..))+import Data.ByteString.Internal  (ByteString(..)) import Data.Bytes.Get            (getWord32le, runGetS) import Data.Kind                 (Type) import Data.Maybe                (fromJust) import Data.Primitive            (MutVar, newMutVar, readMutVar, writeMutVar)-import Data.Word                 (Word32, Word64)-import System.Endian             (fromLE64, toLE64)+import Data.Word                 (Word32, Word64, byteSwap64)+import GHC.ByteOrder             (ByteOrder(..), targetByteOrder) import System.IO                 (Handle, stdin, stdout)  import qualified Data.ByteString              as BS@@ -100,19 +100,26 @@ import qualified Data.Vector.Storable         as SV import qualified Data.Vector.Storable.Mutable as SMV -import Capnp.Address        (WordAddr (..))-import Capnp.Bits           (WordCount (..), hi, lo)+import Capnp.Address        (WordAddr(..))+import Capnp.Bits           (WordCount(..), hi, lo) import Capnp.TraversalLimit (LimitT, MonadLimit(invoice), evalLimitT)-import Data.Mutable         (Mutable (..))+import Data.Mutable         (Mutable(..)) import Internal.AppendVec   (AppendVec)  import qualified Capnp.Errors       as E import qualified Internal.AppendVec as AppendVec +swapIfBE64, fromLE64, toLE64 :: Word64 -> Word64+swapIfBE64 = case targetByteOrder of+    LittleEndian -> id+    BigEndian    -> byteSwap64+fromLE64 = swapIfBE64+toLE64 = swapIfBE64 + -- | The maximum size of a segment supported by this libarary, in words.-maxSegmentSize :: Int-maxSegmentSize = 1 `shiftL` 28 -- 2 GiB.+maxSegmentSize :: WordCount+maxSegmentSize = WordCount $ 1 `shiftL` 28 -- 2 GiB.  -- | The maximum number of segments allowed in a message by this library. maxSegments :: Int@@ -120,9 +127,13 @@  -- | The maximum number of capabilities allowed in a message by this library. maxCaps :: Int-maxCaps = 512+maxCaps = 16 * 1024  +-- | '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@. data Mutability = Const | Mut Type  -- | A pointer to a location in a message. This encodes the same@@ -139,6 +150,7 @@     , pAddr    :: !WordAddr     } +-- | A Cap'n Proto message, parametrized over its mutability. data Message (mut :: Mutability) where     MsgConst :: !ConstMsg -> Message 'Const     MsgMut :: !(MutMsg s) -> Message ('Mut s)@@ -147,6 +159,7 @@     (MsgConst x) == (MsgConst y) = x == y     (MsgMut x) == (MsgMut y)     = x == y +-- | A segment in a Cap'n Proto message. data Segment (mut :: Mutability) where     SegConst :: !ConstSegment -> Segment 'Const     SegMut :: !(MutSegment s) -> Segment ('Mut s)@@ -455,9 +468,9 @@     SMV.write vec i (toLE64 val)  -- | @'newSegment' msg sizeHint@ allocates a new, initially empty segment in--- @msg@ with a capacity of @sizeHint@. It returns the a pair of the segment--- number and the segment itself. Amortized O(1).-newSegment :: WriteCtx m s => Message ('Mut s) -> Int -> m (Int, Segment ('Mut s))+-- @msg@ with a capacity of @sizeHint@ words. It returns the a pair of the+-- segment number and the segment itself. Amortized O(1).+newSegment :: WriteCtx m s => Message ('Mut s) -> WordCount -> m (Int, Segment ('Mut s)) newSegment msg@(MsgMut MutMsg{mutSegs}) sizeHint = do     when (sizeHint > maxSegmentSize) $ throwM E.SizeError     -- the next segment number will be equal to the *current* number of@@ -469,7 +482,7 @@     segs <- AppendVec.grow segs 1 maxSegments     writeMutVar mutSegs segs -    vec <- SMV.new sizeHint+    vec <- SMV.new (fromIntegral sizeHint)     used <- newMutVar 0     let newSeg = SegMut MutSegment{vec, used}     setSegment msg segIndex newSeg@@ -505,8 +518,8 @@ -- to the segment. The latter is redundant information, but this is used -- in low-level code where this can improve performance. alloc :: WriteCtx m s => Message ('Mut s) -> WordCount -> m (WordPtr ('Mut s))-alloc msg size@(WordCount sizeInt) = do-    when (sizeInt > maxSegmentSize) $+alloc msg size = do+    when (size > maxSegmentSize) $         throwM E.SizeError     segIndex <- pred <$> numSegs msg     existing <- allocInSeg msg segIndex size@@ -516,9 +529,9 @@             -- Not enough space in the current segment; allocate a new one.             -- the new segment's size should match the total size of existing segments             -- but `maxSegmentSize` bounds how large it can get.-            WordCount totalAllocation <- sum <$>+            totalAllocation <- sum <$>                 traverse (getSegment msg >=> numWords) [0..segIndex]-            ( newSegIndex, _ ) <- newSegment msg (min (max totalAllocation sizeInt) maxSegmentSize)+            ( newSegIndex, _ ) <- newSegment msg (min (max totalAllocation size) maxSegmentSize)             -- This is guaranteed to succeed, since we just made a segment with             -- at least size available space:             fromJust <$> allocInSeg msg newSegIndex size@@ -538,7 +551,7 @@ newMessage Nothing = newMessage (Just 32)     -- The default value above is somewhat arbitrary, and just a guess -- we     -- should do some profiling to figure out what a good value is here.-newMessage (Just (WordCount sizeHint)) = do+newMessage (Just sizeHint) = do     mutSegs <- MV.new 1 >>= newMutVar . AppendVec.makeEmpty     mutCaps <- MV.new 0 >>= newMutVar . AppendVec.makeEmpty     let msg = MsgMut MutMsg{mutSegs,mutCaps}
+ lib/Capnp/New.hs view
@@ -0,0 +1,55 @@+-- | Module: Capnp.New+-- Description: Re-export commonly used things from elsewhere in the library.+module Capnp.New+    ( module X+    , Parsed++    -- * Working with raw values+    , R.Raw++    -- ** Working with raw lists+    , R.List+    , R.index+    , R.setIndex+    , R.length++    -- * Working with fields+    , F.Field+    , F.FieldKind+    , F.HasField(..)+    , F.HasUnion(..)+    , F.HasVariant(..)++    -- * Working with messages+    , Message.Message+    , Message.Segment+    , Message.Mutability(..)+    , Message.MonadReadMessage(..)+    , Message.newMessage+    , Message.fromByteString+    , Message.toByteString++    -- * Building messages in pure code+    , PureBuilder+    , createPure++    -- * Re-exported from "Data.Default", for convienence.+    , def+    ) where++-- TODO: be more intentional about the ordering of the stuff we're+-- currently exposing as X, so the haddocks are clearer.++import           Capnp.Convert         as X+import qualified Capnp.Fields          as F+import           Capnp.IO              as X+import qualified Capnp.Message         as Message+import           Capnp.New.Accessors   as X+import           Capnp.New.Classes     as X hiding (Parsed)+import           Capnp.New.Constraints as X+import qualified Capnp.Repr            as R+import           Capnp.Repr.Methods    as X+import           Capnp.Repr.Parsed     (Parsed)+import           Capnp.TraversalLimit  as X+import           Data.Default          (def)+import           Internal.BuildPure    (PureBuilder, createPure)
+ lib/Capnp/New/Accessors.hs view
@@ -0,0 +1,223 @@+{-# LANGUAGE ConstraintKinds       #-}+{-# LANGUAGE DataKinds             #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE FlexibleContexts      #-}+{-# LANGUAGE NamedFieldPuns        #-}+{-# LANGUAGE RankNTypes            #-}+{-# LANGUAGE ScopedTypeVariables   #-}+{-# LANGUAGE TypeApplications      #-}+{-# LANGUAGE TypeFamilies          #-}+-- | Module: Capnp.New.Accessors+-- Description: Functions for accessing parts of messaages.+module Capnp.New.Accessors+    ( readField+    , getField+    , setField+    , newField+    , hasField+    , encodeField+    , parseField+    , setVariant+    , initVariant+    , encodeVariant+    , structWhich+    , unionWhich+    , structUnion+    , unionStruct+    ) where+++import qualified Capnp.Fields         as F+import           Capnp.Message        (Mutability(..))+import qualified Capnp.New.Classes    as C+import qualified Capnp.Repr           as R+import           Capnp.TraversalLimit (evalLimitT)+import qualified Capnp.Untyped        as U+import           Data.Bits+import           Data.Maybe           (fromJust, isJust)+import           Data.Word+import           GHC.Prim             (coerce)++{-# INLINE readField #-}+-- | Read the value of a field of a struct.+readField+    ::  forall k a b mut m.+        ( R.IsStruct a+        , U.ReadCtx m mut+        )+    => F.Field k a b+    -> R.Raw mut a+    -> m (R.Raw mut b)+readField (F.Field field) (R.Raw struct) =+    case field of+        F.DataField F.DataFieldLoc{ shift, index, mask, defaultValue } -> do+            word <- U.getData (fromIntegral index) struct+            pure $ R.Raw $ C.fromWord $ ((word .&. mask) `shiftR` fromIntegral shift) `xor` defaultValue+        F.PtrField index ->+            U.getPtr (fromIntegral index) struct >>= readPtrField+        F.GroupField ->+            pure $ R.Raw struct+        F.VoidField ->+            pure $ R.Raw ()+  where+    -- This is broken out because the type checker needs some extra help:+    readPtrField+        :: forall pr.+        ( R.ReprFor b ~ 'R.Ptr pr+        , R.IsPtrRepr pr+        ) => Maybe (U.Ptr mut) -> m (R.Raw mut b)+    readPtrField ptr =+        R.Raw <$> R.fromPtr @pr (U.message struct) ptr++-- | Return whether the specified field is present. Only applicable for pointer+-- fields.+hasField ::+    ( U.ReadCtx m mut+    , R.IsStruct a+    , R.IsPtr b+    ) => F.Field 'F.Slot a b -> R.Raw mut a -> m Bool+hasField (F.Field (F.PtrField index)) (R.Raw struct) =+    isJust <$> U.getPtr (fromIntegral index) struct++{-# INLINE getField #-}+-- | 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.+getField+    ::  ( R.IsStruct a+        , R.ReprFor b ~ 'R.Data sz+        , C.Parse b bp+        )+    => F.Field 'F.Slot a b+    -> R.Raw 'Const a+    -> bp+getField field struct =+    fromJust $ evalLimitT maxBound $+        readField field struct >>= C.parse++{-# INLINE setField #-}+-- | Set a struct field to a value. Not usable for group fields.+setField ::+    forall a b m s.+    ( R.IsStruct a+    , U.RWCtx m s+    ) => F.Field 'F.Slot a b -> R.Raw ('Mut s) b -> R.Raw ('Mut s) a -> m ()+setField (F.Field field) (R.Raw value) (R.Raw struct) =+    case field of+        F.DataField fieldLoc ->+            setDataField fieldLoc+        F.PtrField index ->+            setPtrField index value struct+        F.VoidField ->+            pure ()+  where+    -- This was originally broken out because the type checker needs some extra+    -- help, but it's probably more readable this way anyway.+    setPtrField+        :: forall pr.+        ( R.ReprFor b ~ 'R.Ptr pr+        , R.IsPtrRepr pr+        ) => Word16 -> R.UntypedPtr ('Mut s) pr -> U.Struct ('Mut s) -> m ()+    setPtrField index value struct =+        U.setPtr (R.toPtr @pr value) (fromIntegral index) struct++    setDataField+        :: forall sz.+        ( R.ReprFor b ~ 'R.Data sz+        , C.IsWord (R.UntypedData sz)+        ) => F.DataFieldLoc sz -> m ()+    setDataField F.DataFieldLoc{ shift, index, mask, defaultValue } = do+        oldWord <- U.getData (fromIntegral index) struct+        let valueWord = C.toWord value `xor` defaultValue+            newWord = (oldWord .&. complement mask)+                  .|. (valueWord `shiftL` fromIntegral shift)+        U.setData newWord (fromIntegral index) struct++-- | Allocate space for the value of a field, and return it.+newField ::+    forall a b m s.+    ( R.IsStruct a+    , C.Allocate b+    , U.RWCtx m s+    ) => F.Field 'F.Slot a b -> C.AllocHint b -> R.Raw ('Mut s) a -> m (R.Raw ('Mut s) b)+newField field hint parent = do+    value <- C.new @b hint (U.message parent)+    setField field value parent+    pure value++-- | Marshal a parsed value into a struct's field.+encodeField ::+    forall a b m s bp.+    ( R.IsStruct a+    , C.Parse b bp+    , U.RWCtx m s+    ) => F.Field 'F.Slot a b -> bp -> R.Raw ('Mut s) a -> m ()+encodeField field parsed struct = do+    encoded <- C.encode (U.message struct) parsed+    setField field encoded struct++-- | parse a struct's field and return its parsed form.+parseField ::+    ( R.IsStruct a+    , C.Parse b bp+    , U.ReadCtx m 'Const+    ) => F.Field k a b -> R.Raw 'Const a -> m bp+parseField field raw =+    readField field raw >>= C.parse++-- | 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.+setVariant+    :: forall a b m s.+    ( F.HasUnion a+    , U.RWCtx m s+    ) => F.Variant 'F.Slot a b -> R.Raw ('Mut s) a -> R.Raw ('Mut s) b -> m ()+setVariant F.Variant{field, tagValue} struct value = do+    setField (F.unionField @a) (R.Raw tagValue) struct+    setField field value struct++-- | 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.+encodeVariant+    :: forall a b m s bp.+    ( F.HasUnion a+    , C.Parse b bp+    , U.RWCtx m s+    ) => F.Variant 'F.Slot a b -> bp -> R.Raw ('Mut s) a -> m ()+encodeVariant F.Variant{field, tagValue} value struct = do+    setField (F.unionField @a) (R.Raw tagValue) struct+    encodeField field value struct++-- | 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'.+initVariant+    :: forall a b m s. (F.HasUnion a, U.RWCtx m s)+    => F.Variant 'F.Group a b -> R.Raw ('Mut s) a -> m (R.Raw ('Mut s) b)+initVariant F.Variant{field, tagValue} struct = do+    setField (F.unionField @a) (R.Raw tagValue) struct+    readField field struct++-- | Get the anonymous union for a struct.+structUnion :: F.HasUnion a => R.Raw mut a -> R.Raw mut (F.Which a)+structUnion = coerce++-- | Get the struct enclosing an anonymous union.+unionStruct :: F.HasUnion a => R.Raw mut (F.Which a) -> R.Raw mut a+unionStruct = coerce++-- | Get a non-opaque view on the struct's anonymous union, which+-- can be used to pattern match on.+structWhich :: forall a mut m. (U.ReadCtx m mut, F.HasUnion a) => R.Raw mut a -> m (F.RawWhich mut a)+structWhich struct = do+    R.Raw tagValue <- readField (F.unionField @a) struct+    F.internalWhich tagValue struct++-- | Get a non-opaque view on the anonymous union, which can be+-- used to pattern match on.+unionWhich :: forall a mut m. (U.ReadCtx m mut, F.HasUnion a) => R.Raw mut (F.Which a) -> m (F.RawWhich mut a)+unionWhich = structWhich . unionStruct
+ lib/Capnp/New/Basics.hs view
@@ -0,0 +1,224 @@+{-# LANGUAGE DataKinds             #-}+{-# LANGUAGE EmptyDataDeriving     #-}+{-# LANGUAGE FlexibleInstances     #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE OverloadedStrings     #-}+{-# LANGUAGE TypeApplications      #-}+{-# LANGUAGE TypeFamilies          #-}+{-# LANGUAGE UndecidableInstances  #-}+-- |+-- Module: Capnp.New.Basics+-- Description: Handling of "basic" capnp datatypes.+--+-- This module contains phantom types for built-in Cap'n Proto+-- types, analogous to the phantom types generated for structs+-- by the code generator. It also defines applicable type class+-- instances.+module Capnp.New.Basics where++-- XXX: I(zenhack) don't know how to supply an explicit+-- export list here, since we have instances of data families+-- and I don't know what to call the instances to get all of the+-- constructors.++import qualified Capnp.Errors        as E+import qualified Capnp.Message       as M+import qualified Capnp.New.Classes   as C+import qualified Capnp.Repr          as R+import qualified Capnp.Untyped       as U+import           Control.Monad       (when)+import           Control.Monad.Catch (throwM)+import qualified Data.ByteString     as BS+import           Data.Foldable       (for_)+import qualified Data.Text           as T+import qualified Data.Text.Encoding  as TE+import qualified Data.Vector         as V+import           Data.Word++-- | The Cap'n Proto @Text@ type.+data Text++-- | The Cap'n Proto @Data@ type.+data Data++-- | A Cap'n Proto @AnyPointer@, i.e. an arbitrary pointer with unknown schema.+data AnyPointer++-- | A Cap'n Proto @List@ with unknown element type.+data AnyList++-- | A Cap'n Proto struct of unknown type.+data AnyStruct++-- | A Cap'n Proto capability with unknown interfaces.+data Capability++type instance R.ReprFor Data = R.ReprFor (R.List Word8)+type instance R.ReprFor Text = R.ReprFor (R.List Word8)+type instance R.ReprFor AnyPointer = 'R.Ptr 'Nothing+type instance R.ReprFor AnyList = 'R.Ptr ('Just ('R.List 'Nothing))+type instance R.ReprFor AnyStruct = 'R.Ptr ('Just 'R.Struct)+type instance R.ReprFor Capability = 'R.Ptr ('Just 'R.Cap)++data instance C.Parsed AnyPointer+    = PtrNull+    | PtrStruct (C.Parsed AnyStruct)+    | PtrList (C.Parsed AnyList)+    | PtrCap M.Client+    deriving(Show, Eq)++instance C.Parse AnyPointer (C.Parsed AnyPointer) where+    parse (R.Raw ptr) = case ptr of+        Nothing                   -> pure PtrNull+        Just (U.PtrCap cap)       -> PtrCap <$> C.parse (R.Raw cap)+        Just (U.PtrList list)     -> PtrList <$> C.parse (R.Raw list)+        Just (U.PtrStruct struct) -> PtrStruct <$> C.parse (R.Raw struct)++    encode msg value = R.Raw <$> case value of+        PtrNull       -> pure Nothing+        PtrCap cap    -> Just . U.PtrCap . R.fromRaw <$> C.encode msg cap+        PtrList list -> Just . U.PtrList . R.fromRaw <$> C.encode msg list+        PtrStruct struct -> Just . U.PtrStruct . R.fromRaw <$> C.encode msg struct++instance C.AllocateList AnyPointer where+    type ListAllocHint AnyPointer = Int++instance C.EstimateListAlloc AnyPointer (C.Parsed AnyPointer)++data instance C.Parsed AnyStruct = Struct+    { structData :: V.Vector Word64+    , structPtrs :: V.Vector (C.Parsed AnyPointer)+    }+    deriving(Show, Eq)++instance C.Parse AnyStruct (C.Parsed AnyStruct) where+    parse (R.Raw s) = Struct+        <$> V.generateM+                (fromIntegral $ U.structWordCount s)+                (`U.getData` s)+        <*> V.generateM+                (fromIntegral $ U.structPtrCount s)+                (\i -> U.getPtr i s >>= C.parse . R.Raw)++instance C.AllocateList AnyStruct where+    type ListAllocHint AnyStruct = (Int, R.AllocHint 'R.Struct)++instance C.EstimateListAlloc AnyStruct (C.Parsed AnyStruct) where+    estimateListAlloc structs =+        let len = V.length structs+            nWords = maximum $ map (V.length . structData) $ V.toList structs+            nPtrs = maximum $ map (V.length . structPtrs) $ V.toList structs+        in+        (len, (fromIntegral nWords, fromIntegral nPtrs))++instance C.EstimateAlloc AnyStruct (C.Parsed AnyStruct) where+    estimateAlloc s =+        ( fromIntegral $ V.length $ structData s+        , fromIntegral $ V.length $ structPtrs s+        )++instance C.Marshal AnyStruct (C.Parsed AnyStruct) where+    marshalInto (R.Raw raw) s = do+        V.iforM_ (structData s) $ \i value -> do+            U.setData value i raw+        V.iforM_ (structPtrs s) $ \i value -> do+            R.Raw ptr <- C.encode (U.message raw) value+            U.setPtr ptr i raw++-- TODO(cleanup): It would be nice if we could reuse Capnp.Repr.Parsed.Parsed+-- here, but that would cause a circular import dependency.+type ParsedList a = V.Vector a++data instance C.Parsed AnyList+    = ListPtr (ParsedList (C.Parsed AnyPointer))+    | ListStruct (ParsedList (C.Parsed AnyStruct))+    | List0 (ParsedList ())+    | List1 (ParsedList Bool)+    | List8 (ParsedList Word8)+    | List16 (ParsedList Word16)+    | List32 (ParsedList Word32)+    | List64 (ParsedList Word64)+    deriving(Show, Eq)++instance C.Parse AnyList (C.Parsed AnyList) where+    parse (R.Raw list) = case list of+        U.List0 l      -> List0 <$> C.parse (R.Raw l)+        U.List1 l      -> List1 <$> C.parse (R.Raw l)+        U.List8 l      -> List8 <$> C.parse (R.Raw l)+        U.List16 l     -> List16 <$> C.parse (R.Raw l)+        U.List32 l     -> List32 <$> C.parse (R.Raw l)+        U.List64 l     -> List64 <$> C.parse (R.Raw l)+        U.ListPtr l    -> ListPtr <$> C.parse (R.Raw l)+        U.ListStruct l -> ListStruct <$> C.parse (R.Raw l)++    encode msg list = R.Raw <$> case list of+        List0 l      -> U.List0 . R.fromRaw <$> C.encode msg l+        List1 l      -> U.List1 . R.fromRaw <$> C.encode msg l+        List8 l      -> U.List8 . R.fromRaw <$> C.encode msg l+        List16 l     -> U.List16 . R.fromRaw <$> C.encode msg l+        List32 l     -> U.List32 . R.fromRaw <$> C.encode msg l+        List64 l     -> U.List64 . R.fromRaw <$> C.encode msg l+        ListPtr l    -> U.ListPtr . R.fromRaw <$> C.encode msg l+        ListStruct l -> U.ListStruct . R.fromRaw <$> C.encode msg l++instance C.Parse Capability M.Client where+    parse (R.Raw cap) = U.getClient cap+    encode msg client = R.Raw <$> U.appendCap msg client++instance C.Allocate Text where+    type AllocHint Text = Int+    new len msg = R.Raw <$> U.allocList8 msg (len + 1)++instance C.AllocateList Text where+    type ListAllocHint Text = Int+instance C.EstimateListAlloc Text T.Text++instance C.Parse Text T.Text where+    parse (R.Raw list) =+        let len = U.length list in+        if len == 0 then+            -- We are somewhat lenient here; technically this is invalid, as there is+            -- no null terminator (see logic below, which is dead code because of+            -- this check. But to avoid this we really need to expose nullability+            -- in the API, so for now we just fudge it.+            pure ""+        else (do+            when (len == 0) $ throwM $ E.SchemaViolationError+                "Text is not NUL-terminated (list of bytes has length 0)"+            lastByte <- U.index (len - 1) list+            when (lastByte /= 0) $ throwM $ E.SchemaViolationError $+                "Text is not NUL-terminated (last byte is " ++ show lastByte ++ ")"+            bytes <- BS.take (len - 1) <$> U.rawBytes list+            case TE.decodeUtf8' bytes of+                Left e  -> throwM $ E.InvalidUtf8Error e+                Right v -> pure v)+    encode msg value = do+        let bytes = TE.encodeUtf8 value+        raw@(R.Raw untyped)  <- C.new @Text (BS.length bytes) msg+        C.marshalInto @Data (R.Raw untyped) bytes+        pure raw++-- Instances for Data+instance C.Parse Data BS.ByteString where+    parse = U.rawBytes . R.fromRaw++instance C.Allocate Data where+    type AllocHint Data = Int+    new len msg = R.Raw <$> U.allocList8 msg len++instance C.EstimateAlloc Data BS.ByteString where+    estimateAlloc = BS.length++instance C.AllocateList Data where+    type ListAllocHint Data = Int+instance C.EstimateListAlloc Data BS.ByteString++instance C.Marshal Data BS.ByteString where+    marshalInto (R.Raw list) bytes =+        for_ [0..BS.length bytes - 1] $ \i ->+            U.setIndex (BS.index bytes i) i list++-- Instances for AnyStruct+instance C.Allocate AnyStruct where+    type AllocHint AnyStruct = (Word16, Word16)+    new (nWords, nPtrs) msg = R.Raw <$> U.allocStruct msg nWords nPtrs
+ lib/Capnp/New/Classes.hs view
@@ -0,0 +1,313 @@+{-# LANGUAGE AllowAmbiguousTypes    #-}+{-# LANGUAGE ConstraintKinds        #-}+{-# LANGUAGE DataKinds              #-}+{-# LANGUAGE DefaultSignatures      #-}+{-# LANGUAGE FlexibleContexts       #-}+{-# LANGUAGE FlexibleInstances      #-}+{-# LANGUAGE FunctionalDependencies #-}+{-# LANGUAGE ScopedTypeVariables    #-}+{-# LANGUAGE TemplateHaskell        #-}+{-# LANGUAGE TypeApplications       #-}+{-# LANGUAGE TypeFamilies           #-}+{-# LANGUAGE UndecidableInstances   #-}+-- | Module: Capnp.New.Classes+-- Description: Misc. type classes+--+-- This module contains several type classes (and related utilities)+-- useful for operating over Cap'n Proto values.+module Capnp.New.Classes+    ( -- * Encoding and decoding parsed forms of values+      Parse(..)+    , Parsed+    , Marshal(..)+    , MarshalElement++    -- * Allocating values in messages+    , Allocate(..)+    , newRoot+    , AllocateList(..)+    , EstimateAlloc(..)+    , EstimateListAlloc(..)+    , newFromRepr++    -- * Typed Structs+    , TypedStruct(..)+    , newTypedStruct+    , newTypedStructList+    , structSizes++    -- * Values that go in a struct's data section+    , IsWord(..)+    ) where++import           Capnp.Classes        (IsWord(..))+import           Capnp.Message        (Mutability(..))+import qualified Capnp.Message        as M+import qualified Capnp.Repr           as R+import           Capnp.TraversalLimit (evalLimitT)+import qualified Capnp.Untyped        as U+import           Data.Default         (Default(..))+import           Data.Foldable        (for_)+import           Data.Int+import qualified Data.Vector          as V+import           Data.Word+import qualified GHC.Float            as F+import qualified Language.Haskell.TH  as TH++-- | 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.+class Parse t p | t -> p, p -> t where+    parse :: U.ReadCtx m 'Const => R.Raw 'Const t -> m p+    -- ^ Parse a value from a constant message+    encode :: U.RWCtx m s => M.Message ('Mut s) -> p -> m (R.Raw ('Mut s) t)+    -- ^ Encode a value into 'R.Raw' form, using the message as storage.++    default encode+        :: (U.RWCtx m s, EstimateAlloc t p, Marshal t p)+        => M.Message ('Mut s) -> p -> m (R.Raw ('Mut s) t)+    encode msg value = do+        raw <- new (estimateAlloc value) msg+        marshalInto raw value+        pure raw++-- | Types where the necessary allocation is inferrable from the parsed form.+--+-- ...this is most types.+class (Parse t p, Allocate t) => EstimateAlloc t p where+    -- | Determine the appropriate hint needed to allocate space+    -- for the serialied form of the value.+    estimateAlloc :: p -> AllocHint t++    default estimateAlloc :: AllocHint t ~ () => p -> AllocHint t+    estimateAlloc _ = ()++-- | Implementation of 'new' valid for types whose 'AllocHint' is+-- the same as that of their underlying representation.+newFromRepr+    :: forall a r m s.+    ( R.Allocate r+    , 'R.Ptr ('Just r) ~ R.ReprFor a+    , U.RWCtx m s+    )+    => R.AllocHint r -> M.Message ('Mut s) -> m (R.Raw ('Mut s) a)+newFromRepr hint msg = R.Raw <$> R.alloc @r msg hint+    -- TODO(cleanup): new and alloc really ought to have the same argument order...+++-- | Types which may be allocated directly inside a message.+class Allocate a where+    type AllocHint a+    -- ^ 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.++    new :: U.RWCtx m s => AllocHint a -> M.Message ('Mut s) -> m (R.Raw ('Mut s) a)+    -- ^ @'new' hint msg@ allocates a new value of type @a@ inside @msg@.++    default new ::+        ( R.ReprFor a ~ 'R.Ptr ('Just pr)+        , R.Allocate pr+        , AllocHint a ~ R.AllocHint pr+        , U.RWCtx m s+        ) => AllocHint a -> M.Message ('Mut s) -> m (R.Raw ('Mut s) a)+    -- If the AllocHint is the same as that of the underlying Repr, then+    -- we can just use that implementation.+    new = newFromRepr @a++-- | Like 'Allocate', but for allocating *lists* of @a@.+class AllocateList a where+    type ListAllocHint a+    -- ^ Extra information needed to allocate a list of @a@s.++    newList :: U.RWCtx m s => ListAllocHint a -> M.Message ('Mut s) -> m (R.Raw ('Mut s) (R.List a))+    default newList ::+        forall m s lr r.+        ( U.RWCtx m s+        , lr ~ R.ListReprFor (R.ReprFor a)+        , r ~ 'R.List ('Just lr)+        , R.Allocate r+        , R.AllocHint r ~ ListAllocHint a+        ) => ListAllocHint a -> M.Message ('Mut s) -> m (R.Raw ('Mut s) (R.List a))+    newList hint msg = R.Raw <$> R.alloc @r msg hint++instance AllocateList a => Allocate (R.List a) where+    type AllocHint (R.List a) = ListAllocHint a+    new = newList @a++instance AllocateList (R.List a) where+    type ListAllocHint (R.List a) = Int++instance+    ( Parse (R.List a) (V.Vector ap)+    , Allocate (R.List a)+    ) => EstimateListAlloc (R.List a) (V.Vector ap)++-- | Allocate a new typed struct. Mainly used as the value for 'new' for in generated+-- instances of 'Allocate'.+newTypedStruct :: forall a m s. (TypedStruct a, U.RWCtx m s) => M.Message ('Mut s) -> m (R.Raw ('Mut s) a)+newTypedStruct = newFromRepr (structSizes @a)++-- | Like 'newTypedStruct', but for lists.+newTypedStructList+    :: forall a m s. (TypedStruct a, U.RWCtx m s)+    => Int -> M.Message ('Mut s) -> m (R.Raw ('Mut s) (R.List a))+newTypedStructList i msg = R.Raw <$> R.alloc+    @('R.List ('Just 'R.ListComposite))+    msg+    (i, structSizes @a)++-- | An instance of marshal allows a parsed value to be inserted into+-- pre-allocated space in a message.+class Parse t p => Marshal t p where+    marshalInto :: U.RWCtx m s => R.Raw ('Mut s) t -> p -> m ()+    -- ^ 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.++-- | Get the maximum word and pointer counts needed for a struct type's fields.+structSizes :: forall a. TypedStruct a => (Word16, Word16)+structSizes = (numStructWords @a, numStructPtrs @a)++-- | Operations on typed structs.+class (R.IsStruct a, Allocate a, AllocHint a ~ ()) => TypedStruct a where+    -- Get the size of  the struct's word and pointer sections, respectively.+    numStructWords :: Word16+    numStructPtrs  :: Word16+++-- | Like 'new', but also sets the value as the root of the message.+newRoot+    :: forall a m s. (U.RWCtx m s, R.IsStruct a, Allocate a)+    => AllocHint a -> M.Message ('Mut s) -> m (R.Raw ('Mut s) a)+newRoot hint msg = do+    raw@(R.Raw struct) <- new @a hint msg+    U.setRoot struct+    pure raw+++------ Instances for basic types -------++parseId :: (R.Untyped mut (R.ReprFor a) ~ a, U.ReadCtx m mut) => R.Raw mut a -> m a+parseId = pure . R.fromRaw++parseInt ::+    ( Integral a+    , Integral (R.Untyped mut (R.ReprFor a))+    , U.ReadCtx m mut+    ) => R.Raw mut a -> m a+parseInt = pure . fromIntegral . R.fromRaw++instance Parse Float Float where+    parse = pure . F.castWord32ToFloat . R.fromRaw+    encode _ = pure . R.Raw . F.castFloatToWord32++instance Parse Double Double where+    parse = pure . F.castWord64ToDouble . R.fromRaw+    encode _ = pure . R.Raw . F.castDoubleToWord64++instance MarshalElement a ap => Marshal (R.List a) (V.Vector ap) where+    marshalInto raw value =+        for_ [0..V.length value - 1] $ \i ->+            marshalElement raw i (value V.! i)++instance MarshalElement a ap => Parse (R.List a) (V.Vector ap) where+    parse rawV =+        V.generateM (R.length rawV) $ \i ->+            R.index i rawV >>= parse++-- | Type alias capturing the constraints on a type needed by+-- 'marshalElement'+type MarshalElement a ap =+    ( Parse a ap+    , EstimateListAlloc a ap+    , R.Element (R.ReprFor a)+    , MarshalElementByRepr (R.ListReprFor (R.ReprFor a))+    , MarshalElementReprConstraints (R.ListReprFor (R.ReprFor a)) a ap+    )++-- | Constraints needed by marshalElement that are specific to a list repr.+type family MarshalElementReprConstraints (lr :: R.ListRepr) a ap where+    MarshalElementReprConstraints 'R.ListComposite  a ap = Marshal a ap+    MarshalElementReprConstraints ('R.ListNormal r) a ap = Parse a ap++class MarshalElementByRepr (lr :: R.ListRepr) where+    marshalElementByRepr ::+        ( U.RWCtx m s+        , R.ListReprFor (R.ReprFor a) ~ lr+        , MarshalElement a ap+        ) => R.Raw ('Mut s) (R.List a) -> Int -> ap -> m ()++instance MarshalElementByRepr 'R.ListComposite where+    marshalElementByRepr rawList i parsed = do+        rawElt <- R.index i rawList+        marshalInto rawElt parsed++instance MarshalElementByRepr ('R.ListNormal l) where+    marshalElementByRepr rawList i parsed = do+        rawElt <- encode (U.message rawList) parsed+        R.setIndex rawElt i rawList++marshalElement ::+  forall a ap m s.+  ( U.RWCtx m s+  , MarshalElement a ap+  ) => R.Raw ('Mut s) (R.List a) -> Int -> ap -> m ()+marshalElement = marshalElementByRepr @(R.ListReprFor (R.ReprFor a))++class (Parse a ap, Allocate (R.List a)) => EstimateListAlloc a ap where+    estimateListAlloc :: V.Vector ap -> AllocHint (R.List a)++    default estimateListAlloc :: (AllocHint (R.List a) ~ Int) => V.Vector ap -> AllocHint (R.List a)+    estimateListAlloc = V.length++instance MarshalElement a ap => EstimateAlloc (R.List a) (V.Vector ap) where+    estimateAlloc = estimateListAlloc @a++-- | If @a@ is a capnproto type, then @Parsed a@ is an ADT representation of that+-- type. If this is defined for a type @a@ then there should also be an instance+-- @'Parse' a ('Parsed' a)@, but note that the converse is not true: if there is+-- an instance @'Parse' a b@, then @'Parsed' a@ needn't be defined, and @b@ can+-- be something else.+data family Parsed a++instance (Default (R.Raw 'Const a), Parse a (Parsed a)) => Default (Parsed a) where+    def = case evalLimitT maxBound (parse @a def) of+        Just v  -> v+        Nothing -> error "Parsing default value failed."++do+    let mkId ty =+            [d| instance Parse $ty $ty where+                    parse = parseId+                    encode _ = pure . R.Raw+            |]+        mkInt ty =+            [d| instance Parse $ty $ty where+                    parse = parseInt+                    encode _ = pure . R.Raw . fromIntegral+            |]+        mkAll ty =+            [d| instance AllocateList $ty where+                    type ListAllocHint $ty = Int++                instance EstimateListAlloc $ty $ty where+                    estimateListAlloc = V.length+            |]++        nameTy name = pure (TH.ConT name)++        ids      = [t| () |] : map nameTy [''Bool, ''Word8, ''Word16, ''Word32, ''Word64]+        ints     = map nameTy [''Int8, ''Int16, ''Int32, ''Int64]+        floats   = map nameTy [''Float, ''Double]+        allTys   = ids ++ ints ++ floats++        merge :: [TH.Q [a]] -> TH.Q [a]+        merge xs = concat <$> sequenceA xs+    merge+        [ merge $ map mkId ids+        , merge $ map mkInt ints+        , merge $ map mkAll allTys+        ]
+ lib/Capnp/New/Constraints.hs view
@@ -0,0 +1,17 @@+-- | Module: Capnp.New.Constraints+-- Description: convenience shorthands for various constraints.+{-# LANGUAGE ConstraintKinds  #-}+{-# LANGUAGE FlexibleContexts #-}+{-# LANGUAGE TypeFamilies     #-}+module Capnp.New.Constraints where++import qualified Capnp.New.Classes as C+import qualified Capnp.Repr        as R+import qualified Capnp.Repr.Parsed as RP++-- | Constraints needed for @a@ to be a capnproto type parameter.+type TypeParam a =+    ( R.IsPtr a+    , C.Parse a (RP.Parsed a)+    )+
+ lib/Capnp/Repr.hs view
@@ -0,0 +1,430 @@+{-# LANGUAGE AllowAmbiguousTypes        #-}+{-# LANGUAGE ConstraintKinds            #-}+{-# LANGUAGE DataKinds                  #-}+{-# LANGUAGE DeriveGeneric              #-}+{-# LANGUAGE FlexibleContexts           #-}+{-# LANGUAGE FlexibleInstances          #-}+{-# LANGUAGE FunctionalDependencies     #-}+{-# LANGUAGE GADTs                      #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE ScopedTypeVariables        #-}+{-# LANGUAGE StandaloneDeriving         #-}+{-# LANGUAGE TemplateHaskell            #-}+{-# LANGUAGE TypeApplications           #-}+{-# LANGUAGE TypeFamilies               #-}+{-# LANGUAGE UndecidableInstances       #-}+-- | Module: Capnp.Repr+-- Description: Type-level plumbing for wire-representations.+--+-- This module provides facilities for working with the wire+-- representations of capnproto objects at the type level. The most+-- central part of this module is the 'Repr' type.+--+-- Recommended reading: https://capnproto.org/encoding.html+module Capnp.Repr+    (+    -- * Type-level descriptions of wire representations.+      Repr(..)+    , PtrRepr(..)+    , ListRepr(..)+    , NormalListRepr(..)+    , DataSz(..)++    -- * Mapping representations to value types from "Capnp.Untyped"+    , Untyped+    , UntypedData+    , UntypedPtr+    , UntypedSomePtr+    , UntypedList+    , UntypedSomeList++    -- * Mapping types to their wire representations.+    , ReprFor+    , PtrReprFor++    -- * Relating the representations of lists & their elements.+    , ElemRepr+    , ListReprFor+    , Element(..)++    -- * Working with wire-encoded values+    , Raw(..)++    -- * Working with lists+    , List+    , length+    , index+    , setIndex++    -- * Working with pointers+    , IsPtrRepr(..)+    , IsListPtrRepr(..)++    -- * Allocating values+    , Allocate(..)++    -- * Shorthands for types+    , IsStruct+    , IsCap+    , IsPtr+    ) where++import Prelude hiding (length)++import qualified Capnp.Classes        as C+import qualified Capnp.Errors         as E+import           Capnp.Message        (Mutability(..))+import qualified Capnp.Message        as M+import           Capnp.TraversalLimit (evalLimitT)+import qualified Capnp.Untyped        as U+import           Control.Monad.Catch  (MonadThrow(..))+import           Data.Default         (Default(..))+import           Data.Int+import           Data.Kind            (Type)+import           Data.Maybe           (fromJust)+import           Data.Word+import           GHC.Generics         (Generic)+import qualified Language.Haskell.TH  as TH++-- | A 'Repr' describes a wire representation for a value. This is+-- mostly used at the type level (using DataKinds); types are+-- parametrized over representations.+data Repr+    = Ptr (Maybe PtrRepr)+    -- ^ Pointer type. 'Nothing' indicates an AnyPointer, 'Just' describes+    -- a more specific pointer type.+    | Data DataSz+    -- ^ Non-pointer type.+    deriving(Show)++-- | Information about the representation of a pointer type+data PtrRepr+    = Cap+    -- ^ Capability pointer.+    | List (Maybe ListRepr)+    -- ^ List pointer. 'Nothing' describes an AnyList, 'Just' describes+    -- more specific list types.+    | Struct+    -- ^ A struct (or group).+    deriving(Show)++-- | Information about the representation of a list type.+data ListRepr where+    -- | A "normal" list+    ListNormal :: NormalListRepr -> ListRepr+    ListComposite :: ListRepr+    deriving(Show)++-- | Information about the representation of a normal (non-composite) list.+data NormalListRepr where+    ListData :: DataSz -> NormalListRepr+    ListPtr :: NormalListRepr+    deriving(Show)++-- | The size of a non-pointer type. @SzN@ represents an @N@-bit value.+data DataSz = Sz0 | Sz1 | Sz8 | Sz16 | Sz32 | Sz64+    deriving(Show)++-- | @Untyped mut r@ is an untyped value with representation @r@ stored in+-- a message with mutability @mut@.+type family Untyped (mut :: Mutability) (r :: Repr) :: Type where+    Untyped mut ('Data sz) = UntypedData sz+    Untyped mut ('Ptr ptr) = UntypedPtr mut ptr++-- | @UntypedData sz@ is an untyped value with size @sz@.+type family UntypedData (sz :: DataSz) :: Type where+    UntypedData 'Sz0 = ()+    UntypedData 'Sz1 = Bool+    UntypedData 'Sz8 = Word8+    UntypedData 'Sz16 = Word16+    UntypedData 'Sz32 = Word32+    UntypedData 'Sz64 = Word64++-- | Like 'Untyped', but for pointers only.+type family UntypedPtr (mut :: Mutability) (r :: Maybe PtrRepr) :: Type where+    UntypedPtr mut 'Nothing = Maybe (U.Ptr mut)+    UntypedPtr mut ('Just r) = UntypedSomePtr mut r++-- | Like 'UntypedPtr', but doesn't allow AnyPointers.+type family UntypedSomePtr (mut :: Mutability) (r :: PtrRepr) :: Type where+    UntypedSomePtr mut 'Struct = U.Struct mut+    UntypedSomePtr mut 'Cap = U.Cap mut+    UntypedSomePtr mut ('List r) = UntypedList mut r++-- | Like 'Untyped', but for lists only.+type family UntypedList (mut :: Mutability) (r :: Maybe ListRepr) :: Type where+    UntypedList mut 'Nothing = U.List mut+    UntypedList mut ('Just r) = UntypedSomeList mut r++-- | Like 'UntypedList', but doesn't allow AnyLists.+type family UntypedSomeList (mut :: Mutability) (r :: ListRepr) :: Type where+    UntypedSomeList mut r = U.ListOf mut (Untyped mut (ElemRepr r))+++-- | An instace of @'Allocate'@ specifies how to allocate a value with a given representation.+-- This only makes sense for pointers of course, so it is defined on PtrRepr. Of the well-kinded+-- types, only @'List 'Nothing@ is missing an instance.+class Allocate (r :: PtrRepr) where+    -- | Extra information needed to allocate a value:+    --+    -- * For structs, the sizes of the sections.+    -- * For capabilities, the client to attach to the messages.+    -- * For lists, the length, and for composite lists, the struct sizes as well.+    type AllocHint r++    -- | Allocate a value of the given type.+    alloc :: U.RWCtx m s => M.Message ('Mut s) -> AllocHint r -> m (UntypedSomePtr ('Mut s) r)++-- | @'ReprFor' a@ denotes the Cap'n Proto wire represent of the type @a@.+type family ReprFor (a :: Type) :: Repr++type instance ReprFor () = 'Data 'Sz0+type instance ReprFor Bool = 'Data 'Sz1+type instance ReprFor Word8 = 'Data 'Sz8+type instance ReprFor Word16 = 'Data 'Sz16+type instance ReprFor Word32 = 'Data 'Sz32+type instance ReprFor Word64 = 'Data 'Sz64+type instance ReprFor Int8 = 'Data 'Sz8+type instance ReprFor Int16 = 'Data 'Sz16+type instance ReprFor Int32 = 'Data 'Sz32+type instance ReprFor Int64 = 'Data 'Sz64+type instance ReprFor Float = 'Data 'Sz32+type instance ReprFor Double = 'Data 'Sz64++type instance ReprFor (U.ListOf mut a) = ReprFor (List a)+type instance ReprFor (U.Struct mut) = 'Ptr ('Just 'Struct)+type instance ReprFor (U.Cap mut) = 'Ptr ('Just 'Cap)+type instance ReprFor (U.Ptr mut) = 'Ptr 'Nothing+type instance ReprFor (U.List mut) = 'Ptr ('Just ('List 'Nothing))++type instance ReprFor (List a) = 'Ptr ('Just ('List ('Just (ListReprFor (ReprFor a)))))++-- | @PtrReprFor r@ extracts the pointer represnetation in r; undefined if+-- r is not a pointer representation.+type family PtrReprFor (r :: Repr) :: Maybe PtrRepr where+    PtrReprFor ('Ptr pr) = pr++-- | @ElemRepr r@ is the representation of elements of lists with+-- representation @r@.+type family ElemRepr (rl :: ListRepr) :: Repr where+    ElemRepr 'ListComposite = 'Ptr ('Just 'Struct)+    ElemRepr ('ListNormal 'ListPtr) = 'Ptr 'Nothing+    ElemRepr ('ListNormal ('ListData sz)) = 'Data sz++-- | @ListReprFor e@ is the representation of lists with elements+-- whose representation is @e@.+type family ListReprFor (e :: Repr) :: ListRepr where+    ListReprFor ('Data sz) = 'ListNormal ('ListData sz)+    ListReprFor ('Ptr ('Just 'Struct)) = 'ListComposite+    ListReprFor ('Ptr a) = 'ListNormal 'ListPtr++-- | 'Element' supports converting between values of representation+-- @'ElemRepr' ('ListReprFor' r)@ and values of representation @r@.+--+-- At a glance, you might expect this to just be a no-op, but it is actually+-- *not* always the case that @'ElemRepr' ('ListReprFor' r) ~ r@; in the+-- case of pointer types, @'ListReprFor' r@ can contain arbitrary pointers,+-- so information is lost, and it is possible for the list to contain pointers+-- of the incorrect type. In this case, 'fromElement' will throw an error.+--+-- 'toElement' is more trivial.+class Element (r :: Repr) where+    fromElement+        :: forall m mut. U.ReadCtx m mut+        => M.Message mut+        -> Untyped mut (ElemRepr (ListReprFor r))+        -> m (Untyped mut r)+    toElement :: Untyped mut r -> Untyped mut (ElemRepr (ListReprFor r))++instance Element ('Data sz) where+    fromElement _ = pure+    toElement = id+instance Element ('Ptr ('Just 'Struct)) where+    fromElement _ = pure+    toElement = id+instance Element ('Ptr 'Nothing) where+    fromElement _ = pure+    toElement = id+instance Element ('Ptr ('Just 'Cap)) where+    fromElement = fromPtr @('Just 'Cap)+    toElement = Just . U.PtrCap+instance IsPtrRepr ('Just ('List a)) => Element ('Ptr ('Just ('List a))) where+    fromElement = fromPtr @('Just ('List a))+    toElement = toPtr @('Just ('List a))++-- | A @'Raw' mut a@ is an @a@ embedded in a capnproto message with mutability+-- @mut@.+newtype Raw (mut :: Mutability) (a :: Type)+    = Raw { fromRaw :: Untyped mut (ReprFor a) }++deriving instance Show (Untyped mut (ReprFor a)) => Show (Raw mut a)+deriving instance Read (Untyped mut (ReprFor a)) => Read (Raw mut a)+deriving instance Eq (Untyped mut (ReprFor a)) => Eq (Raw mut a)+deriving instance Generic (Untyped mut (ReprFor a)) => Generic (Raw mut a)++-- | A phantom type denoting capnproto lists of type @a@.+data List a++-- | Get the length of a capnproto list.+length :: Raw mut (List a) -> Int+length (Raw l) = U.length l++-- | @'index' i list@ gets the @i@th element of the list.+index :: forall a m mut.+    ( U.ReadCtx m mut+    , Element (ReprFor a)+    ) => Int -> Raw mut (List a) -> m (Raw mut a)+index i (Raw l) =+    Raw <$> (U.index i l >>= fromElement @(ReprFor a) @m @mut (U.message l))++-- | @'setIndex' value i list@ sets the @i@th element of @list@ to @value@.+setIndex :: forall a m s.+    ( U.RWCtx m s+    , Element (ReprFor a)+    ) => Raw ('Mut s) a -> Int -> Raw ('Mut s) (List a) -> m ()+setIndex (Raw v) i (Raw l) = U.setIndex (toElement @(ReprFor a) @('Mut s) v) i l++instance (ReprFor a ~ 'Ptr ('Just 'Struct)) => C.ToStruct mut (Raw mut a) where+    toStruct = fromRaw+instance (ReprFor a ~ 'Ptr ('Just 'Struct)) => C.FromStruct mut (Raw mut a) where+    fromStruct = pure . Raw++instance U.HasMessage (Untyped mut (ReprFor a)) mut => U.HasMessage (Raw mut a) mut where+    message (Raw r) = U.message r+instance U.MessageDefault (Untyped mut (ReprFor a)) mut => U.MessageDefault (Raw mut a) mut where+    messageDefault msg = Raw <$> U.messageDefault msg++instance U.MessageDefault (Raw 'Const a) 'Const => Default (Raw 'Const a) where+    def = fromJust $ evalLimitT maxBound $ U.messageDefault M.empty++-- | Operations on types with pointer representations.+class IsPtrRepr (r :: Maybe PtrRepr) where+    toPtr :: Untyped mut ('Ptr r) -> Maybe (U.Ptr mut)+    -- ^ Convert an untyped value of this representation to an AnyPointer.+    fromPtr :: U.ReadCtx m mut => M.Message mut -> Maybe (U.Ptr mut) -> m (Untyped mut ('Ptr r))+    -- ^ Extract a value with this representation from an AnyPointer, failing+    -- if the pointer is the wrong type for this representation.++instance IsPtrRepr 'Nothing where+    toPtr p = p+    fromPtr _ p = pure p++instance IsPtrRepr ('Just 'Struct) where+    toPtr s = Just (U.PtrStruct s)+    fromPtr msg Nothing              = U.messageDefault msg+    fromPtr _ (Just (U.PtrStruct s)) = pure s+    fromPtr _ _                      = expected "pointer to struct"+instance IsPtrRepr ('Just 'Cap) where+    toPtr c = Just (U.PtrCap c)+    fromPtr _ Nothing             = expected "pointer to capability"+    fromPtr _ (Just (U.PtrCap c)) = pure c+    fromPtr _ _                   = expected "pointer to capability"+instance IsPtrRepr ('Just ('List 'Nothing)) where+    toPtr l = Just (U.PtrList l)+    fromPtr _ Nothing              = expected "pointer to list"+    fromPtr _ (Just (U.PtrList l)) = pure l+    fromPtr _ (Just _)             = expected "pointer to list"+instance IsListPtrRepr r => IsPtrRepr ('Just ('List ('Just r))) where+    toPtr l = Just (U.PtrList (rToList @r l))+    fromPtr msg Nothing            = rFromListMsg @r msg+    fromPtr _ (Just (U.PtrList l)) = rFromList @r l+    fromPtr _ (Just _)             = expected "pointer to list"++-- | Operations on types with list representations.+class IsListPtrRepr (r :: ListRepr) where+    rToList :: UntypedSomeList mut r -> U.List mut+    -- ^ Convert an untyped value of this representation to an AnyList.+    rFromList :: U.ReadCtx m mut => U.List mut -> m (UntypedSomeList mut r)+    -- ^ Extract a value with this representation from an AnyList, failing+    -- if the list is the wrong type for this representation.+    rFromListMsg :: U.ReadCtx m mut => M.Message mut -> m (UntypedSomeList mut r)+    -- ^ Create a zero-length value with this representation, living in the+    -- provided message.++-- helper function for throwing SchemaViolationError "expected ..."+expected :: MonadThrow m => String -> m a+expected msg = throwM $ E.SchemaViolationError $ "expected " ++ msg++do+    let mkIsListPtrRepr (r, listC, str) =+            [d| instance IsListPtrRepr $r where+                    rToList = $(pure $ TH.ConE listC)+                    rFromList $(pure $ TH.ConP listC [TH.VarP (TH.mkName "l")]) = pure l+                    rFromList _ = expected $(pure $ TH.LitE $ TH.StringL $ "pointer to " ++ str)+                    rFromListMsg = U.messageDefault+            |]+    concat <$> traverse mkIsListPtrRepr+        [ ( [t| 'ListNormal ('ListData 'Sz0) |]+          , 'U.List0+          , "List(Void)"+          )+        , ( [t| 'ListNormal ('ListData 'Sz1) |]+          , 'U.List1+          , "List(Bool)"+          )+        , ( [t| 'ListNormal ('ListData 'Sz8) |]+          , 'U.List8+          , "List(UInt8)"+          )+        , ( [t| 'ListNormal ('ListData 'Sz16) |]+          , 'U.List16+          , "List(UInt16)"+          )+        , ( [t| 'ListNormal ('ListData 'Sz32) |]+          , 'U.List32+          , "List(UInt32)"+          )+        , ( [t| 'ListNormal ('ListData 'Sz64) |]+          , 'U.List64+          , "List(UInt64)"+          )+        , ( [t| 'ListNormal 'ListPtr |]+          , 'U.ListPtr+          , "List(AnyPointer)"+          )+        , ( [t| 'ListComposite |]+          , 'U.ListStruct+          , "composite list"+          )+        ]++instance (IsPtrRepr r, ReprFor a ~ 'Ptr r) => C.ToPtr s (Raw ('Mut s) a) where+    toPtr _msg (Raw p) = pure $ toPtr @r p+instance (IsPtrRepr r, ReprFor a ~ 'Ptr r) => C.FromPtr mut (Raw mut a) where+    fromPtr msg p = Raw <$> fromPtr @r msg p++instance Allocate 'Struct where+    type AllocHint 'Struct = (Word16, Word16)+    alloc msg = uncurry (U.allocStruct msg)+instance Allocate 'Cap where+    type AllocHint 'Cap = M.Client+    alloc = U.appendCap+instance Allocate ('List ('Just 'ListComposite)) where+    type AllocHint ('List ('Just 'ListComposite)) = (Int, AllocHint 'Struct)+    alloc msg (len, (nWords, nPtrs)) = U.allocCompositeList msg nWords nPtrs len+instance AllocateNormalList r => Allocate ('List ('Just ('ListNormal r))) where+    type AllocHint ('List ('Just ('ListNormal r))) = Int+    alloc = allocNormalList @r++class AllocateNormalList (r :: NormalListRepr) where+    allocNormalList :: U.RWCtx m s => M.Message ('Mut s) -> Int -> m (UntypedSomeList ('Mut s) ('ListNormal r))+instance AllocateNormalList ('ListData 'Sz0) where allocNormalList = U.allocList0+instance AllocateNormalList ('ListData 'Sz1) where allocNormalList = U.allocList1+instance AllocateNormalList ('ListData 'Sz8) where allocNormalList = U.allocList8+instance AllocateNormalList ('ListData 'Sz16) where allocNormalList = U.allocList16+instance AllocateNormalList ('ListData 'Sz32) where allocNormalList = U.allocList32+instance AllocateNormalList ('ListData 'Sz64) where allocNormalList = U.allocList64+instance AllocateNormalList 'ListPtr where allocNormalList = U.allocListPtr+++-- | Constraint that @a@ is a struct type.+type IsStruct a = ReprFor a ~ 'Ptr ('Just 'Struct)++-- | Constraint that @a@ is a capability type.+type IsCap a = ReprFor a ~ 'Ptr ('Just 'Cap)++-- | Constraint that @a@ is a pointer type.+type IsPtr a =+    ( ReprFor a ~ 'Ptr (PtrReprFor (ReprFor a))+    , IsPtrRepr (PtrReprFor (ReprFor a))+    )
+ lib/Capnp/Repr/Methods.hs view
@@ -0,0 +1,160 @@+{-# LANGUAGE AllowAmbiguousTypes    #-}+{-# LANGUAGE DataKinds              #-}+{-# LANGUAGE DuplicateRecordFields  #-}+{-# LANGUAGE FlexibleContexts       #-}+{-# LANGUAGE FlexibleInstances      #-}+{-# LANGUAGE FunctionalDependencies #-}+{-# LANGUAGE NamedFieldPuns         #-}+{-# LANGUAGE RankNTypes             #-}+{-# LANGUAGE ScopedTypeVariables    #-}+{-# LANGUAGE TypeApplications       #-}+{-# LANGUAGE TypeFamilies           #-}+-- | Module: Capnp.Repr.Methods+-- Description: Support for working with methods+module Capnp.Repr.Methods+    ( Method(..)+    , HasMethod(..)++    , Pipeline(..)+    , Client(..)+    , pipe+    , pipelineClient+    , waitPipeline++    , AsClient(..)++    -- * Calling methods.+    , callB+    , callR+    , callP+    ) where++import qualified Capnp.Fields            as F+import           Capnp.Message           (Mutability(..), newMessage)+import qualified Capnp.Message           as M+import qualified Capnp.New.Classes       as NC+import qualified Capnp.Repr              as R+import           Capnp.Rpc.Promise       (newPromise)+import qualified Capnp.Rpc.Server        as Server+import qualified Capnp.Rpc.Untyped       as Rpc+import           Capnp.TraversalLimit    (evalLimitT)+import qualified Capnp.Untyped           as U+import           Control.Monad.Catch     (MonadThrow)+import           Control.Monad.STM.Class (MonadSTM(..))+import           Data.Word+import           GHC.OverloadedLabels    (IsLabel(..))+import           GHC.TypeLits            (Symbol)+import           Internal.BuildPure      (PureBuilder, createPure)++-- | Represents a method on the interface type @c@ with parameter+-- type @p@ and return type @r@.+data Method c p r = Method+    { interfaceId :: !Word64+    , methodId    :: !Word16+    }++-- | 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.+class (R.IsCap c, R.IsStruct p, R.IsStruct r) => HasMethod (name :: Symbol) c p r | name c -> p r where+    methodByLabel :: Method c p r++instance HasMethod name c p r => IsLabel name (Method c p r) where+    fromLabel = methodByLabel @name @c @p @r++-- | A @'Pipeline' a@ is a reference to possibly-not-resolved result from+-- a method call.+newtype Pipeline a = Pipeline Rpc.Pipeline++newtype Client a = Client Rpc.Client+    deriving(Show, Eq)++-- | The 'AsClient' class allows callers of rpc methods to abstract over 'Client's+-- and 'Pipeline's. @'asClient'@ converts either of those to a client so that+-- methods can be invoked on it.+class AsClient f where+    asClient :: MonadSTM m => R.IsCap c => f c -> m (Client c)++instance AsClient Pipeline where+    asClient = pipelineClient++instance AsClient Client where+    asClient = liftSTM . pure++-- | Call a method. Use the provided 'PureBuilder' to construct the parameters.+callB+    :: (AsClient f, R.IsCap c, R.IsStruct p, MonadSTM m)+    => Method c p r+    -> (forall s. PureBuilder s (R.Raw ('Mut s) p))+    -> f c+    -> m (Pipeline r)+callB method buildRaw c = liftSTM $ do+    (params :: R.Raw 'Const a) <- R.Raw <$> createPure maxBound (R.fromRaw <$> buildRaw)+    callR method params c++-- | Call a method, supplying the parameters as a 'Raw' struct.+callR+    :: (AsClient f, R.IsCap c, R.IsStruct p, MonadSTM m)+    => Method c p r -> R.Raw 'Const p -> f c -> m (Pipeline r)+callR Method{interfaceId, methodId} (R.Raw arg) c = liftSTM $ do+    Client client <- asClient c+    (_, f) <- newPromise+    Pipeline <$> Rpc.call+        Server.CallInfo+            { interfaceId+            , methodId+            , arguments = Just (U.PtrStruct arg)+            , response = f+            }+            client++-- | Call a method, supplying the parmaeters in parsed form.+callP+    :: forall c p r f m pp.+        ( AsClient f+        , R.IsCap c+        , R.IsStruct p+        , NC.Parse p pp+        , MonadSTM m+        , MonadThrow m+        )+    => Method c p r -> pp -> f c -> m (Pipeline r)+callP method parsed client = do+    struct <- createPure maxBound $ do+        msg <- newMessage Nothing+        R.fromRaw <$> NC.encode msg parsed+    callR method (R.Raw struct) client++-- | Project a pipeline to a struct onto one of its pointer fields.+pipe :: ( R.IsStruct a+        , R.ReprFor b ~ 'R.Ptr pr+        ) => F.Field k a b -> Pipeline a -> Pipeline b+pipe (F.Field field) (Pipeline p) =+    case field of+        F.GroupField   -> Pipeline p+        F.PtrField idx -> Pipeline (Rpc.walkPipelinePtr p idx)++-- | Convert a 'Pipeline' for a capability into a 'Client'.+pipelineClient :: (R.IsCap a, MonadSTM m) => Pipeline a -> m (Client a)+pipelineClient (Pipeline p) =+    liftSTM $ Client <$> Rpc.pipelineClient p++-- | Wait for the result of a pipeline, and return its value.+waitPipeline ::+    forall a m pr.+    ( 'R.Ptr pr ~ R.ReprFor a+    , R.IsPtrRepr pr+    , MonadSTM m+    ) => Pipeline a -> m (R.Raw 'Const a)+waitPipeline (Pipeline p) =+    -- We need an instance of MonadLimit for IsPtrRepr's ReadCtx requirement,+    -- but none of the relevant instances do a lot of reading, so we just+    -- supply a low-ish arbitrary bound.+    liftSTM $ evalLimitT 100 $ do+        ptr <- Rpc.waitPipeline p+        R.Raw <$> R.fromPtr @pr M.empty ptr++instance R.ReprFor a ~ 'R.Ptr ('Just 'R.Cap) => Rpc.IsClient (Client a) where+    toClient (Client c) = c+    fromClient = Client
+ lib/Capnp/Repr/Parsed.hs view
@@ -0,0 +1,30 @@+{-# LANGUAGE DataKinds            #-}+{-# LANGUAGE TypeFamilies         #-}+{-# LANGUAGE UndecidableInstances #-}+module Capnp.Repr.Parsed (Parsed) where++import qualified Data.ByteString as BS+import           Data.Kind       (Type)+import qualified Data.Text       as T+import qualified Data.Vector     as V++import qualified Capnp.New.Basics  as B+import qualified Capnp.New.Classes as C++import Capnp.Repr         (List, PtrRepr(..), Repr(..), ReprFor)+import Capnp.Repr.Methods (Client)++-- | @'Parsed' a@ is the high-level/ADT representation of the capnproto+-- type @a@. For struct types this is equivalent to @'C.Parsed' a@, but+-- we special case other types, such that e.g.+-- @'Parsed' 'B.Data'@ = 'BS.ByteString'.+type Parsed a = ParsedByRepr (ReprFor a) a++-- Helper for 'Parsed'+type family ParsedByRepr (r :: Repr) (a :: Type) where+    ParsedByRepr ('Data _) a = a+    ParsedByRepr ('Ptr ('Just 'Cap)) a = Client a+    ParsedByRepr _ B.Data = BS.ByteString+    ParsedByRepr _ B.Text = T.Text+    ParsedByRepr _ (List a) = V.Vector (Parsed a)+    ParsedByRepr _ a = C.Parsed a
lib/Capnp/Rpc.hs view
@@ -50,12 +50,12 @@  import Supervisors -import Capnp.Rpc.Errors  (throwFailed)-import Capnp.Rpc.Invoke  ((?))+import Capnp.Rpc.Errors    (throwFailed)+import Capnp.Rpc.Invoke    ((?)) import Capnp.Rpc.Promise import Capnp.Rpc.Server     ( MethodHandler-    , Server (..)+    , Server(..)     , methodThrow     , methodUnimplemented     , pureHandler@@ -63,11 +63,11 @@     , rawHandler     ) import Capnp.Rpc.Transport-    (Transport (..), handleTransport, socketTransport, tracingTransport)+    (Transport(..), handleTransport, socketTransport, tracingTransport) import Capnp.Rpc.Untyped     ( Client-    , ConnConfig (..)-    , IsClient (..)+    , ConnConfig(..)+    , IsClient(..)     , handleConn     , newPromiseClient     , waitClient
lib/Capnp/Rpc/Errors.hs view
@@ -26,7 +26,7 @@  import qualified Control.Exception.Safe as E -import Capnp.Gen.Capnp.Rpc.Pure (Exception (..), Exception'Type (..))+import Capnp.Gen.Capnp.Rpc.Pure (Exception(..), Exception'Type(..))  -- | Construct an exception with a type field of failed and the -- given text as its reason.
lib/Capnp/Rpc/Invoke.hs view
@@ -31,7 +31,7 @@     , FromPtr(fromPtr)     , ToStruct(toStruct)     )-import Capnp.Message        (Mutability (..))+import Capnp.Message        (Mutability(..)) import Capnp.TraversalLimit (defaultLimit, evalLimitT) import Data.Mutable         (freeze) @@ -89,7 +89,7 @@ invokePure method params pureFulfiller = do     struct <- evalLimitT defaultLimit $ do         msg <- M.newMessage Nothing-        (toStruct <$> cerialize msg params) >>= freeze+        cerialize msg params >>= freeze . toStruct     (_, untypedFulfiller) <- liftSTM $ Promise.newPromiseWithCallback $ \case         Left e -> Promise.breakPromise pureFulfiller e         Right v ->
lib/Capnp/Rpc/Promise.hs view
@@ -12,6 +12,7 @@      -- * Creating promises     , newPromise+    , newReadyPromise     , newPromiseWithCallback     , newCallback @@ -72,6 +73,10 @@             pure result         Just (Left exn) ->             throwSTM exn++-- | Create a promise that is already fulfilled, with the given value.+newReadyPromise :: MonadSTM m => a -> m (Promise a)+newReadyPromise value = liftSTM $ Promise <$> newTVar (Just (Right value))  -- | Create a new promise and an associated fulfiller. newPromise :: MonadSTM m => m (Promise a, Fulfiller a)
lib/Capnp/Rpc/Server.hs view
@@ -44,7 +44,7 @@ import Control.Monad.STM.Class import Data.Word -import Control.Exception.Safe  (MonadCatch, finally, try)+import Control.Exception.Safe  (MonadCatch, try) import Control.Monad.IO.Class  (MonadIO, liftIO) import Control.Monad.Primitive (PrimMonad, PrimState) import Data.Typeable           (Typeable)@@ -56,7 +56,7 @@     , ToStruct(toStruct)     ) import Capnp.Convert        (valueToMsg)-import Capnp.Message        (Mutability (..))+import Capnp.Message        (Mutability(..)) import Capnp.Rpc.Errors     (eMethodUnimplemented, wrapException) import Capnp.Rpc.Promise    (Fulfiller, breakPromise, fulfill, newCallback) import Capnp.TraversalLimit (defaultLimit, evalLimitT)@@ -262,7 +262,7 @@ -- Accepts a queue of messages to handle, and 'ServerOps' used to handle them. -- returns when it receives a 'Stop' message. runServer :: TCloseQ.Q CallInfo -> ServerOps IO -> IO ()-runServer q ops = go `finally` handleStop ops+runServer q ops = go   where     go = atomically (TCloseQ.read q) >>= \case         Nothing ->
lib/Capnp/Rpc/Untyped.hs view
@@ -36,6 +36,7 @@     , Pipeline     , walkPipelinePtr     , pipelineClient+    , waitPipeline      -- * Exporting local objects     , export@@ -68,6 +69,7 @@     , MonadThrow     , SomeException     , bracket+    , finally     , fromException     , throwIO     , throwM@@ -93,7 +95,7 @@  import Capnp.Classes        (cerialize, decerialize, fromStruct, new, toStruct) import Capnp.Convert        (valueToMsg)-import Capnp.Message        (Message, Mutability (..))+import Capnp.Message        (Message, Mutability(..)) import Capnp.Rpc.Errors     ( eDisconnected     , eFailed@@ -116,10 +118,10 @@ import qualified Capnp.Rpc.Server         as Server import qualified Capnp.Untyped            as UntypedRaw import qualified Capnp.Untyped.Pure       as Untyped-import qualified Internal.Finalizer       as Fin import qualified Internal.Rc              as Rc import qualified Internal.SnocList        as SnocList import qualified Internal.TCloseQ         as TCloseQ+import qualified Lifetimes.Gc             as Fin  -- Note [Organization] -- ===================@@ -681,6 +683,19 @@                         breakPromise f (wrapException False e)                         pure p) +-- | Wait for the pipeline's target to resolve, and return the corresponding+-- pointer.+waitPipeline :: MonadSTM m => Pipeline -> m RawMPtr+waitPipeline Pipeline{state, steps} = liftSTM $ do+    s <- readTVar state+    case s of+        ReadyPipeline (Left e) ->+            throwM e+        ReadyPipeline (Right v) ->+            evalLimitT defaultLimit $ followPtrs (toList steps) v+        _ ->+            retry+ promisedAnswerClient :: Conn -> PromisedAnswer -> STM Client promisedAnswerClient conn answer@PromisedAnswer{answerId, transform} = do     let tmpDest = RemoteDest AnswerDest { conn, answer }@@ -868,7 +883,7 @@                     callRemote conn info $ AnswerTgt answer                  RemoteDest (ImportDest cell) -> do-                    ImportRef { conn, importId } <- Fin.get cell+                    ImportRef { conn, importId } <- Fin.readCell cell                     callRemote conn info $ ImportTgt importId              Error exn -> do@@ -876,7 +891,7 @@                 pure localPipeline          ImportClient cell -> do-            ImportRef { conn, importId } <- Fin.get cell+            ImportRef { conn, importId } <- Fin.readCell cell             callRemote conn info (ImportTgt importId)  makeLocalPipeline :: Fulfiller RawMPtr -> STM (Pipeline, Fulfiller RawMPtr)@@ -981,7 +996,7 @@             abortConn conn' $ eUnimplemented                 "This vat does not support level 3."     -- Defer this until after any other callbacks run, in case disembargos-    -- need to be send due to promise resolutions that we triggered:+    -- need to be sent due to promise resolutions that we triggered:     queueSTM conn' $ finishQuestion conn' def         { R.questionId = qaWord answerId         , R.releaseResultCaps = False@@ -1101,9 +1116,10 @@             , finalizerKey             , unwrapper = Server.handleCast ops             }-    superviseSTM sup $ do-        Fin.addFinalizer finalizerKey $ Rc.release qCall-        Server.runServer q ops+    superviseSTM sup ((do+        Fin.addFinalizer finalizerKey $ atomically $ Rc.release qCall+        Server.runServer q ops)+      `finally` Server.handleStop ops)     pure $ Client (Just client')  clientMethodHandler :: Word64 -> Word16 -> Client -> Server.MethodHandler IO p r@@ -1597,7 +1613,7 @@             abortDisembargo "targets something that is not a promise."          disembargoClient (ImportClient cell) = do-            client <- Fin.get cell+            client <- Fin.readCell cell             case client of                 ImportRef {conn=targetConn, importId}                     | conn == targetConn ->@@ -1709,7 +1725,6 @@ updateQAReturn conn table tableName ret@Return{answerId} =     lookupAbort tableName conn table answerId $ \case         NewQA{onFinish, onReturn} -> do-            mapQueueSTM conn onReturn ret             M.insert                 HaveReturn                     { returnMsg = ret@@ -1717,9 +1732,10 @@                     }                 answerId                 table+            traverse_ ($ ret) onReturn         HaveFinish{onReturn} -> do-            mapQueueSTM conn onReturn ret             M.delete answerId table+            traverse_ ($ ret) onReturn         HaveReturn{} ->             abortConn conn $ eFailed $                 "Duplicate return message for " <> tableName <> " #"@@ -1729,7 +1745,7 @@ updateQAFinish conn table tableName finish@R.Finish{questionId} =     lookupAbort tableName conn table (QAId questionId) $ \case         NewQA{onFinish, onReturn} -> do-            mapQueueSTM conn onFinish finish+            traverse_ ($ finish) onFinish             M.insert                 HaveFinish                     { finishMsg = finish@@ -1738,7 +1754,7 @@                 (QAId questionId)                 table         HaveReturn{onFinish} -> do-            mapQueueSTM conn onFinish finish+            traverse_ ($ finish) onFinish             M.delete (QAId questionId) table         HaveFinish{} ->             abortConn conn $ eFailed $@@ -1813,8 +1829,13 @@             R.Message'bootstrap def { R.questionId = qaWord qid }         M.insert             NewQA-                { onReturn = SnocList.singleton $-                    resolveClientReturn tmpDest (writeTVar pState) conn' []+                { onReturn = SnocList.fromList+                    [ resolveClientReturn tmpDest (writeTVar pState) conn' []+                    , \_ -> finishQuestion conn' R.Finish+                        { questionId = qaWord qid+                        , releaseResultCaps = False+                        }+                    ]                 , onFinish = SnocList.empty                 }             qid@@ -1913,26 +1934,25 @@             newConn <- destConn newDest             oldConn <- destConn oldDest             if newConn == oldConn-                then releaseAndResolve+                then resolveNow                 else disembargoAndResolve oldDest         ( Just (ImportClient cell), RemoteDest oldDest ) -> do-            ImportRef { conn=newConn } <- Fin.get cell+            ImportRef { conn=newConn } <- Fin.readCell cell             oldConn <- destConn oldDest             if newConn == oldConn-                then releaseAndResolve+                then resolveNow                 else disembargoAndResolve oldDest   where     destConn AnswerDest { conn } = pure conn     destConn (ImportDest cell) = do-        ImportRef { conn } <- Fin.get cell+        ImportRef { conn } <- Fin.readCell cell         pure conn     destTarget AnswerDest { answer } = pure $ AnswerTgt answer     destTarget (ImportDest cell) = do-        ImportRef { importId } <- Fin.get cell+        ImportRef { importId } <- Fin.readCell cell         pure $ ImportTgt importId -    releaseAndResolve = do-        releaseTmpDest tmpDest+    resolveNow = do         resolve $ Ready (Client client)      -- Flush the call buffer into the client's queue, and then pass the client@@ -1974,18 +1994,6 @@         , context = R.Disembargo'context'senderLoopback (embargoWord eid)         } --- Do any cleanup of a TmpDest; this should be called after resolving a--- pending promise.-releaseTmpDest :: TmpDest -> STM ()-releaseTmpDest (LocalDest LocalBuffer{}) = pure ()-releaseTmpDest (RemoteDest AnswerDest { conn, answer=PromisedAnswer{ answerId } }) =-    whenLive conn $ \conn' ->-        finishQuestion conn' def-            { R.questionId = qaWord answerId-            , R.releaseResultCaps = False-            }-releaseTmpDest (RemoteDest (ImportDest _)) = pure ()- -- | Resolve a promised client to the result of a return. See Note [resolveClient] -- -- The [Word16] is a list of pointer indexes to follow from the result.@@ -2061,7 +2069,7 @@ clientExportMap LocalClient{exportMap}   = pure exportMap clientExportMap PromiseClient{exportMap} = pure exportMap clientExportMap (ImportClient cell) = do-    ImportRef{proxies} <- Fin.get cell+    ImportRef{proxies} <- Fin.readCell cell     pure proxies  -- | insert the client into the exports table, bumping the refcount if it is@@ -2080,7 +2088,7 @@         | otherwise =             Just EntryE { client, refCount = refCount + 1 } --- | Generate a CapDescriptor', which we can sent to the connection's remote+-- | Generate a CapDescriptor', which we can send to the connection's remote -- vat to identify client. In the process, this may allocate export ids, update -- reference counts, and so forth. emitCap :: Conn -> Client -> STM R.CapDescriptor'@@ -2094,14 +2102,14 @@             | conn == targetConn ->                 pure $ R.CapDescriptor'receiverAnswer (marshalPromisedAnswer answer)         Pending { tmpDest = RemoteDest (ImportDest cell) } -> do-            ImportRef { conn, importId = IEId iid } <- Fin.get cell+            ImportRef { conn, importId = IEId iid } <- Fin.readCell cell             if conn == targetConn                 then pure (R.CapDescriptor'receiverHosted iid)                 else newSenderPromise         _ ->             newSenderPromise     ImportClient cell -> do-        ImportRef { conn=hostConn, importId } <- Fin.get cell+        ImportRef { conn=hostConn, importId } <- Fin.readCell cell         if hostConn == targetConn             then pure (R.CapDescriptor'receiverHosted (ieWord importId))             else R.CapDescriptor'senderHosted . ieWord <$> getConnExport targetConn client'@@ -2138,7 +2146,7 @@                     , importId                     , proxies                     }-                queueIO conn' $ Fin.addFinalizer cell $ Rc.decr localRc+                queueIO conn' $ Fin.addFinalizer cell $ atomically $ Rc.decr localRc                 pure $ Client $ Just $ ImportClient cell              Nothing ->@@ -2160,7 +2168,7 @@                     }             Nothing -> do                 rec imp <- newImport importId conn (Just (pState, tmpDest))-                    ImportRef{proxies} <- Fin.get imp+                    ImportRef{proxies} <- Fin.readCell imp                     let tmpDest = RemoteDest (ImportDest imp)                     pState <- newTVar Pending { tmpDest }                 pure $ Client $ Just PromiseClient@@ -2204,7 +2212,7 @@         importId         imports     cell <- Fin.newCell importRef-    queueIO conn' $ Fin.addFinalizer cell $ Rc.decr localRc+    queueIO conn' $ Fin.addFinalizer cell $ atomically $ Rc.decr localRc     pure cell  -- | Release the identified import. Removes it from the table and sends a release
lib/Capnp/TraversalLimit.hs view
@@ -35,13 +35,13 @@ import Prelude hiding (fail)  import Control.Monad              (when)-import Control.Monad.Catch        (MonadThrow(throwM))+import Control.Monad.Catch        (MonadCatch(catch), MonadThrow(throwM)) import Control.Monad.Fail         (MonadFail (..)) import Control.Monad.IO.Class     (MonadIO (..)) import Control.Monad.Primitive    (PrimMonad(primitive), PrimState) import Control.Monad.State.Strict     (MonadState, StateT, evalStateT, execStateT, get, put, runStateT)-import Control.Monad.Trans.Class (MonadTrans(lift))+import Control.Monad.Trans.Class  (MonadTrans(lift))  -- Just to define 'MonadLimit' instances: import Control.Monad.RWS    (RWST)@@ -87,6 +87,12 @@  instance MonadThrow m => MonadThrow (LimitT m) where     throwM = lift . throwM++instance MonadCatch m => MonadCatch (LimitT m) where+    catch (LimitT m) f = LimitT $ do+        catch m $ \e ->+            let LimitT m' = f e in+            m'  instance MonadThrow m => MonadLimit (LimitT m) where     invoice deduct = LimitT $ do
lib/Capnp/Tutorial.hs view
@@ -16,6 +16,9 @@     -- * Setup     -- $setup +    -- * API Transition+    -- $api-transition+     -- * Serialization     -- $serialization @@ -63,11 +66,30 @@ -- <https://capnproto.org/install.html>. The latter is included with this -- library; to install it you can run the command: ----- > cabal v2-install capnp --installdir=$DIR+-- > cabal install capnp --installdir=$DIR -- -- which will compile the package and create the @capnpc-haskell@ executable -- at @$DIR/capnpc-haskell@. +-- $api-transition+--+-- This package is in them midst of transitioning many existing APIs over+-- to a new design. As such, in this tuotrial we refer to the new api and the+-- old API.+--+-- The old API will eventually be removed, but not before there is at least+-- one release where both APIs are present and the new API has reached feature+-- pairty. Right now, the primary missing functionality is in implementing+-- RPC servers (clients work fine, better even).+--+-- This tutorial only covers the new API, but the tutorial for the old APIs+-- is still available (and still correct) in the documentation for version+-- 0.10 of this package: https://hackage.haskell.org/package/capnp-0.10.0.1+--+-- For more information about the reasons behind the new API, see:+-- <http://zenhack.net/TODO>. TODO: link to blog post.++ -- $serialization -- -- The serialization API is roughly divided into two parts: a low level API@@ -93,8 +115,8 @@ -- The downside is that you can't take advantage of some of the novel -- properties of the wire format. In particular: ----- * It is theoretically slower, as there is a marshalling step involved---   (actual performance has not been measured).+-- * It is slower, as there is a marshalling step involved, and it uses more+--   memory. -- * You can't mmap a file and read in only part of it. -- * You can't modify a message in-place. @@ -146,72 +168,132 @@ -- -- * Capnp\/Gen\/Addressbook.hs -- * Capnp\/Gen\/Addressbook\/Pure.hs+-- * Capnp\/Gen\/Addressbook\/New.hs -- * Capnp\/Gen\/ById\/Xcd6db6afb4a0cf5c/Pure.hs+-- * Capnp\/Gen\/ById\/Xcd6db6afb4a0cf5c/New.hs -- * Capnp\/Gen\/ById\/Xcd6db6afb4a0cf5c.hs -- -- The modules under @ById@ are an implementation detail.--- @Capnp\/Gen\/Addressbook.hs@ is generated code for use with the low level API.--- @Capnp\/Gen\/Addressbook\/Pure.hs@ is generated code for use with the high--- level API. The latter will export the following data declarations (cleaned up--- for readability).+-- @Capnp\/Gen\/Addressbook\.New.hs@ is generated code for use with the new API.+-- Other files are for use with the old API, and not covered here. ----- > module Capnp.Gen.Addressbook.Pure where+-- The generated moule will export declarations like the following (cleaned up+-- and abbreviated for readability):+--+-- > import qualified Capnp.Repr as R+-- > import qualified Capnp.Classes.New as C+-- > import qualified Capnp.Repr.Parsed as RP+-- > import GHC.Generics (Generic) -- >--- > import Data.Int--- > import Data.Text   (Text)--- > import Data.Vector (Vector)--- > import Data.Word+-- > data Person -- >--- > data AddressBook = AddressBook--- >     { people :: Vector Person--- >     }+-- > type instance (R.ReprFor Person) = R.Ptr (Just R.Struct) -- >--- > data Person = Person--- >     { id         :: Word32--- >     , name       :: Text--- >     , email      :: Text--- >     , phones     :: Vector Person'PhoneNumber--- >     , employment :: Person'employment--- >     }+-- > instance (C.TypedStruct Person) where { ... }+-- > instance (C.Allocate Person) where { ... } -- >--- > data Person'PhoneNumber = Person'PhoneNumber--- >     { number :: Text--- >     , type_  :: Person'PhoneNumber'Type--- >     }+-- > data instance C.Parsed Person+-- >     = Person+-- >         { id :: Word32+-- >         , name :: RP.Parsed Basics.Text+-- >         , email :: RP.Parsed Basics.Text+-- >         , phones :: RP.Parsed (R.List Person'PhoneNumber)+-- >         , employment :: RP.Parsed Person'employment+-- >         }+-- >     deriving(Generic, Show, EQ) -- >+-- > instance HasField "id" Slot Person Std_.Word32 where { ... }+-- > instance HasField "name" Slot Person Basics.Text where { ... }+-- > instance HasField "email" Slot Person Basics.Text where { ... }+-- > instance HasField "phones" Slot Person (R.List Person'PhoneNumber) where { ... }+-- > instance HasField "employment" Group Person Person'employment where { ... }+-- -- > data Person'employment+-- >+-- > type instance R.ReprFor Person'employment = R.Ptr (Std_.Just R.Struct)+-- > instance C.TypedStruct Person'employment where { ... }+-- > instance C.Allocate Person'employment where { ... }+--+-- > data instance C.Parsed Person'employment+-- >     = Person'employment'+-- >         { union' :: C.Parsed (GH.Which Person'employment)+-- >         }+-- >     deriving(Generic, Show, Eq)+-- >+-- > instance (GH.HasUnion Person'employment) where+-- >     unionField = ...+-- >     data RawWhich mut_ Person'employment+-- >         = RW_Person'employment'unemployed (R.Raw mut_ ())+-- >         | RW_Person'employment'employer (R.Raw mut_ Basics.Text)+-- >         | RW_Person'employment'school (R.Raw mut_ Basics.Text)+-- >         | RW_Person'employment'selfEmployed (R.Raw mut_ ())+-- >         | RW_Person'employment'unknown' Word16+-- >     data Which Person'employment+-- >+-- > instance GH.HasVariant "unemployed" GH.Slot Person'employment () where { ... }+-- > instance GH.HasVariant "employer" GH.Slot Person'employment Basics.Text where { ... }+-- > instance GH.HasVariant "school" GH.Slot Person'employment Basics.Text where { ... }+-- > instance GH.HasVariant "selfEmployed" GH.Slot Person'employment () where { ... }+-- >+-- > data instance C.Parsed (Which Person'employment) -- >     = Person'employment'unemployed--- >     | Person'employment'employer Text--- >     | Person'employment'school Text+-- >     | Person'employment'employer (RP.Parsed Basics.Text)+-- >     | Person'employment'school (RP.Parsed Basics.Text) -- >     | Person'employment'selfEmployed--- >     | Person'employment'unknown' Word16+-- >     | Person'employment'unknown' Std_.Word16+-- >     deriving(Generic, Show, Eq) -- >+-- > instance C.Parse (GH.Which Person'employment) (C.Parsed (GH.Which Person'employment)) where+-- >     ...+-- >+-- > data Person'PhoneNumber+-- >+-- > type instance R.ReprFor Person'PhoneNumber = R.Ptr (Std_.Just R.Struct)+-- >+-- > ...+-- > -- > data Person'PhoneNumber'Type -- >     = Person'PhoneNumber'Type'mobile -- >     | Person'PhoneNumber'Type'home -- >     | Person'PhoneNumber'Type'work--- >     | Person'PhoneNumber'Type'unknown' Word16+-- >     | Person'PhoneNumber'Type'unknown' Std_.Word16+-- >     deriving(Generic, Eq, Show)+-- >+-- > type instance R.ReprFor Person'PhoneNumber'Type = R.Data R.Sz16+-- >+-- > instance Enum Person'PhoneNumber'Type where { ... }+-- >+-- > ... -- -- Note that we use the single quote character as a namespace separator for -- namespaces within a single capnproto schema. ----- The module also exports instances of several type classes:+-- So, we see that capnpc-haskell generates: ----- * 'Show'--- * 'Read'--- * 'Eq'--- * 'Generic' from "GHC.Generics"--- * 'Default' from the @data-default@ package.--- * A number of type classes defined by the @capnp@ package.--- * Capnproto enums additionally implement the 'Enum' type class.+-- * For each struct type or group:+--   * An uninhabited type corresponding to that type+--   * An instance of the 'R.ReprFor' type family, marking the type as having+--     a struct as its representation.+--   * An instance of 'HasField' for each field in the struct.+--   * An instance of the 'C.Parsed' data family, which is an idiomatic Haskell+--     ADT corresponding to the structure of the capnproto type.+--     * If the struct has an anonymous union, some instances related to this,+--       including a data family instance for @'Parsed' ('Which' a)@, which+--       is an ADT representation of the union. Note that there is an @unknown'@+--       variant, which is used for variants found on the wire that are not known+--       to the schema (usually because the value was constructed using a newer+--       version of the schema).+-- * For each enum:+--   * An ADT corresponding to that enum. There is no uninhabited type, and no+--     'C.Parsed' data family instance; the type itself serves as both. As with+--     unions, there is an @unknown'@ variant for unrecognized variants.+--   * An instance of 'R.ReprFor', recording the wire representation of the enum+--     (always 16-bit). ----- Using the @Default@ instance to construct values means that your--- existing code will continue to work if new fields are added in the--- schema, but it also makes it easier to forget to set a field if you had--- intended to. The instance maps @'def'@ to the default value as defined by--- capnproto, so leaving out newly-added fields will do The Right Thing.+-- Some additional things are generated for interfaces, but we cover those+-- in the RPC section below. ----- The module "Capnp" exposes the most frequently used+-- The module "Capnp.New" exposes the most frequently used -- functionality from the capnp package. We can write an address book -- message to standard output using the high-level API like so: --@@ -220,14 +302,14 @@ -- > -- code relys on it to resolve collisions in capnproto struct field -- > -- names: -- > {-# LANGUAGE DuplicateRecordFields #-}--- > import Capnp.Gen.Addressbook.Pure+-- > import Capnp.Gen.Addressbook.New -- >--- > -- Note that Capnp re-exports `def`, as a convienence--- > import Capnp (putValue, def)+-- > -- Note that Capnp.New re-exports `def`, as a convienence+-- > import Capnp.New (putParsed, def) -- > -- > import qualified Data.Vector as V -- >--- > main = putValue AddressBook+-- > main = putParsed AddressBook -- >     { people = V.fromList -- >         [ Person -- >             { id = 123@@ -239,7 +321,7 @@ -- >                     , type_ =  Person'PhoneNumber'Type'mobile -- >                     } -- >                 ]--- >             , employment = Person'employment'school "MIT"+-- >             , employment = Person'employment $ Person'employment'school "MIT" -- >             } -- >         , Person -- >             { id = 456@@ -255,7 +337,7 @@ -- >                     , type_ = Person'PhoneNumber'Type'work -- >                     } -- >                 ]--- >             , employment = Person'employment'selfEmployed+-- >             , employment = Person'employment $ Person'employment'selfEmployed -- >             } -- >         ] -- >     }@@ -263,25 +345,27 @@ -- 'putValue' is equivalent to @'hPutValue' 'stdout'@; 'hPutValue' may be used -- to write to an arbitrary handle. ----- We can use 'getValue' (or alternately 'hGetValue') to read in a message:+-- We can use 'getParsed' (or alternately 'hGetParsed') to read in a message: -- -- > -- ... -- >--- > import Capnp (getValue, defaultLimit)+-- > {-# LANGUAGE TypeApplications #-}+-- > import Capnp.New (getParsed, defaultLimit) -- > -- > -- ... -- > -- > main = do--- >     value <- getValue defaultLimit--- >     print (value :: AddressBook)+-- >     value <- getParsed @AddressBook defaultLimit+-- >     print value ----- Note the type annotation; there are a number of interfaces in the+-- Note the use of @TypeApplications@; there are a number of interfaces in the -- library which dispatch on return types, and depending on how they are -- used you may have to give GHC a hint for type inference to succeed.--- The type of 'getValue' is: ----- @'getValue' :: 'FromStruct' 'ConstMsg' a => 'Int' -> 'IO' a@+-- The type of 'getParsed' is: --+-- @'getParsed' :: (R.IsStruct a, Parse a pa) => WordCount -> IO pa+-- -- ...and so it may be used to read in any struct type. -- -- 'defaultLimit' is a default value for the traversal limit, which acts to@@ -294,67 +378,23 @@ -- If an error occurs, an exception will be thrown of type 'Error' from the -- "Capnp.Errors" module. --- $highlevel-codegen-rules------ The complete rules for how capnproto types map to Haskell are as follows:------ * Integer types and booleans map to the obvious corresponding Haskell---   types.--- * @Float32@ and @Float64@ map to 'Float' and 'Double', respectively.--- * @Void@ maps to the unit type, @()@.--- * Lists map to 'Vector's from the Haskell vector package. Note that---   right now we use boxed vectors for everything; at some point this will---   likely change for performance reasons. Using the functions from---   "Data.Vector.Generic" will probably decrease the amount of code you---   will need to modify when upgrading.--- * @Text@ maps to (strict) 'T.Text' from the Haskell `text` package.--- * @Data@ maps to (strict) 'BS.ByteString's--- * Type constructor names are the fully qualified (within the schema file)---   capnproto name, using the single quote character as a namespace---   separator.--- * Structs map to record types. The name of the data constructor is the---   same as the name of the type constructor.--- * Groups are treated mostly like structs, except that the data constructor---   (but not the type constructor) has an extra trailing single-quote. This---   is to avoid name collisions that would otherwise be possible.--- * Field names map to record fields with the same names. Names that are---   Haskell keywords have an underscore appended to them, e.g. @type_@ in---   the above example. These names are not qualified; we use the---   @DuplicateRecordFields@ extension to disambiguate them.--- * Union fields result in an auxiliary type definition named---   @\<containing type's name>'\<union field name>@. For an example, see the---   mapping of the `employment` field above.--- * Unions and enums map to sum types, each of which has a special---   `unknown'` variant (note the trailing single quote). This variant will---   be returned when parsing a message which contains a union tag greater---   than what was defined in the schema. This is most likely to happen---   when dealing with data generated by software using a newer version---   of the same schema. The argument to the data constructor is the value---   of the tag.--- * Union variants with arguments of type `Void` map to data constructors---   with no arguments.--- * The type for an anonymous union has the same name as its containing---   struct with an extra single quote on the end. You can think of this as---   being like a field with the empty string as its name. The Haskell---   record accessor for this field is named `union'` (note the trailing---   single quote).--- * As a special case, if a struct consists entirely of one anonymous---   union, the type for the struct itself is omitted, and the name of the---   type for the union does not have the trailing single quote (so its---   name is what the name of the struct type would be).--- * Fields of type `AnyPointer` map to the types defined in---   @Capnp.Untyped.Pure@.--- * Interfaces generate associated type classes and client types; see---   the section on RPC.- -- $lowlevel -- -- The low level API exposes a much more imperative interface than the--- high-level API. Instead of algebraic data types, types are exposed as--- opaque wrappers around references into a message, and accessors are--- generated for the fields. This API is much closer in spirit to that of--- the C++ reference implementation.+-- high-level API. Instead of algebraic data types, There is an opaque+-- wrapper type 'R.Raw': --+-- @+-- newtype Raw (mut :: Mutability) a = ...+-- @+--+-- which accepts as type parameters the mutability of the underlying message,+-- and a phantom type indicating the capnproto type. This second type parameter+-- will be instantiated with the (for structs, uninhabited) type generated by+-- the schema compiler plugin. The accessors in "Capnp.New.Accessors"+-- (re-exported by "Capnp.New") are used to read and write the fields.+-- This API is much closer in spirit to that of the C++ reference implementation.+-- -- Because the low level interfaces do not parse and validate the message -- up front, accesses to the message can result in errors. Furthermore, the -- traversal limit needs to be tracked to avoid denial of service attacks.@@ -366,152 +406,116 @@  -- $lowlevel-example ----- We'll use the same schema as above for our example. Instead of standard--- algebraic data types, the module `Capnp.Addressbook` primarily defines--- newtype wrappers, which should be treated as opaque, and accessor--- functions for the various fields.------ @--- newtype AddressBook msg = ...------ get_Addressbook'people :: ReadCtx m msg => AddressBook msg -> m (List msg (Person msg))------ newtype Person msg = ...------ get_Person'id   :: ReadCtx m msg => Person msg -> m Word32--- get_Person'name :: ReadCtx m msg => Person msg -> m (Text msg)--- @------ `ReadCtx` is a type synonym:------ @--- type ReadCtx m msg = (Message m msg, MonadThrow m, MonadLimit m)--- @------ Note the following:------ * The generated data types are parametrized over a `msg` type. This is---   the type of the message in which the value is contained. This can be---   either 'ConstMsg' in the case of an immutable message, or @'MutMsg' s@---   for a mutable message (where `s` is the state token for the monad in---   which the message may be mutated).--- * The `Text` and `List` types mentioned in the type signatures are types---   defined within the capnp library, and are similarly views into the---   underlying message.--- * Access to the message happens in a monad which affords throwing---   exceptions, tracking the traversal limit, and of course reading the---   message.------ The snippet below prints the names of each person in the address book:+-- We'll use the same schema as above for our example. The snippet below prints+-- the names of each person in the address book: ----- > {-# LANGUAGE ScopedTypeVariables #-}--- > import Prelude hiding (length)--- >--- > import Capnp.Gen.Addressbook--- > import Capnp--- >     (ConstMsg, defaultLimit, evalLimitT, getValue, index, length, textBytes)+-- > {-# LANGUAGE OverloadedLabels #-}+-- > {-# LANGUAGE TypeApplications #-} -- >--- > import           Control.Monad         (forM_)--- > import           Control.Monad.Trans   (lift)--- > import qualified Data.ByteString.Char8 as BS8+-- > import           Capnp.Gen.Addressbook.New+-- > import qualified Capnp.New                 as C+-- > import           Control.Monad             (forM_)+-- > import           Control.Monad.Trans       (lift)+-- > import           Data.Function             ((&))+-- > import qualified Data.Text                 as T -- >+-- > main :: IO () -- > main = do--- >     addressbook :: AddressBook ConstMsg <- getValue defaultLimit--- >     evalLimitT defaultLimit $ do--- >         people <- get_AddressBook'people addressbook--- >         forM_ [0..length people - 1] $ \i -> do--- >             name <- index i people >>= get_Person'name >>= textBytes--- >             lift $ BS8.putStrLn name------ Note that we use the same `getValue` function as in the high-level--- example above.+-- >     addressbook <- C.getRaw @AddressBook C.defaultLimit+-- >     C.evalLimitT C.defaultLimit $ do+-- >         people <- C.readField #people addressbook+-- >         forM_ [0..C.length people - 1] $ \i -> do+-- >             people+-- >                 & C.index i+-- >                 >>= C.parseField #name+-- >                 >>= lift . putStrLn . T.unpack  -- $lowlevel-write -- -- Writing messages using the low-level API has a similarly imperative feel. -- The below constructs the same message as in our high-level example above: ----- > import Capnp.Gen.Addressbook+-- > {-# LANGUAGE DataKinds        #-}+-- > {-# LANGUAGE OverloadedLabels #-}+-- > {-# LANGUAGE TypeApplications #-} -- >--- > import Capnp--- >     ( MutMsg--- >     , PureBuilder--- >     , cerialize--- >     , createPure--- >     , defaultLimit--- >     , index--- >     , newMessage--- >     , newRoot--- >     , putMsg--- >     )+-- > import Data.Function ((&)) -- >+-- > import Capnp.Gen.Addressbook.New+-- >+-- > import qualified Capnp.New as C -- > import qualified Data.Text as T -- >+-- > main :: IO () -- > main =--- >     let Right msg = createPure defaultLimit buildMsg--- >     in putMsg msg+-- >     let Right msg = C.createPure C.defaultLimit buildMsg+-- >     in C.putMsg msg -- >--- > buildMsg :: PureBuilder s (MutMsg s)+-- > buildMsg :: C.PureBuilder s (C.Message ('C.Mut s)) -- > buildMsg = do--- >     -- newMessage allocates a new, initially empty, mutable message:--- >     msg <- newMessage+-- >     -- newMessage allocates a new, initially empty, mutable message. It+-- >     -- takes an optional size hint:+-- >     msg <- C.newMessage Nothing -- > -- >     -- newRoot allocates a new struct as the root object of the message.--- >     -- In this case the type of the struct can be inferred from our later--- >     -- use of AddressBook's accessors:--- >     addressbook <- newRoot msg+-- >     -- The unit argument is a hint to the allocator to determine the size+-- >     -- of the object; for types whose size is not fixed (e.g. untyped structs,+-- >     -- lists), this may be something more meaningful.+-- >     addressbook <- C.newRoot @AddressBook () msg -- >--- >     -- new_* accessors allocate a new value of the correct type for a--- >     -- given field. These functions accordingly only exist for types--- >     -- which are encoded as pointers (structs, lists, bytes...). In--- >     -- the case of lists, these take an extra argument specifying a--- >     -- the length of the list:--- >     people <- new_AddressBook'people 2 addressbook+-- >     -- newField can be used to allocate the value of a field, for pointer+-- >     -- types like lists. The number is the allocation hint, as used by newRoot.+-- >     -- We can use the OverloadedLabels extension to pass in fields by name.+-- >     people <- C.newField #people 2 addressbook -- > -- >     -- Index gets an object at a specified location in a list. Cap'N Proto -- >     -- lists are flat arrays, and in the case of structs the structs are -- >     -- unboxed, so there is no need to allocate each element:--- >     alice <- index 0 people+-- >     alice <- C.index 0 people -- >--- >     -- set_* functions set the value of a field. For fields of non-pointer--- >     -- types (integers, bools...), We can just pass the value we want to set_*,--- >     -- rather than allocating via new_* first:--- >     set_Person'id alice 123+-- >     -- encodeField takes the parsed form of a value and marshals it into+-- >     -- the specified field. For basic types like integers & booleans, this+-- >     -- is almost always what you want. For larger values, you may want to+-- >     -- use newField as above, or separately create the value and use setField,+-- >     -- as shown below.+-- >     C.encodeField #id 123 alice+-- >     C.encodeField #name (T.pack "Alice") alice+-- >     C.encodeField #email (T.pack "alice@example.com") alice -- >--- >     -- 'cerialize' is used to marshal a value into a message. Below, we copy--- >     -- the text for Alice's name and email address into the message, and then--- >     -- use Person's set_* functions to attach the resulting objects to our--- >     -- Person:--- >     set_Person'name alice =<< cerialize msg (T.pack "Alice")--- >     set_Person'email alice =<< cerialize msg (T.pack "alice@example.com")+-- >     -- We would probably use newField here, but to demonstrate, we can allocate+-- >     -- the value separately with new, and then set it with setField.+-- >     phones <- C.new @(C.List Person'PhoneNumber) 1 msg+-- >     C.setField #phones phones alice -- >--- >     phones <- new_Person'phones 1 alice--- >     mobilePhone <- index 0 phones--- >     set_Person'PhoneNumber'number mobilePhone =<< cerialize msg (T.pack "555-1212")--- >     set_Person'PhoneNumber'type_ mobilePhone Person'PhoneNumber'Type'mobile+-- >     mobilePhone <- C.index 0 phones+-- >     -- It is sometimes more ergonomic to use (&) from Data.Function. You might+-- >     -- ask why not just make the container the first argument, but it works+-- >     -- out better this way for the read examples.+-- >     mobilePhone & C.encodeField #number (T.pack "555-1212")+-- >     mobilePhone & C.encodeField #type_ Person'PhoneNumber'Type'mobile -- >--- >     -- Setting union fields is slightly awkward; we have an auxiliary type--- >     -- for the union field, which we must get_* first:--- >     employment <- get_Person'employment alice+-- >     -- Since named unions act like unnamed unions inside a group, we first have+-- >     -- to get the group field:+-- >     employment <- C.readField #employment alice -- >--- >     -- Then, we can use set_* to set both the tag of the union and the+-- >     -- Then, we can use encodeVariant to set both the tag of the union and the -- >     -- value:--- >     set_Person'employment'school employment =<< cerialize msg (T.pack "MIT")+-- >     employment & C.encodeVariant #school (T.pack "MIT") -- >--- >     bob <- index 1 people--- >     set_Person'id bob 456--- >     set_Person'name bob =<< cerialize msg (T.pack "Bob")--- >     set_Person'email bob =<< cerialize msg (T.pack "bob@example.com")+-- >     bob <- C.index 1 people+-- >     bob & C.encodeField #id 456+-- >     bob & C.encodeField #name (T.pack "Bob")+-- >     bob & C.encodeField #email (T.pack "bob@example.com") -- >--- >     phones <- new_Person'phones 2 bob--- >     homePhone <- index 0 phones--- >     set_Person'PhoneNumber'number homePhone =<< cerialize msg (T.pack "555-4567")--- >     set_Person'PhoneNumber'type_ homePhone Person'PhoneNumber'Type'home--- >     workPhone <- index 1 phones--- >     set_Person'PhoneNumber'number workPhone =<< cerialize msg (T.pack "555-7654")--- >     set_Person'PhoneNumber'type_ workPhone Person'PhoneNumber'Type'work--- >     employment <- get_Person'employment bob--- >     set_Person'employment'selfEmployed employment+-- >     phones <- bob & C.newField #phones 2+-- >     homePhone <- phones & C.index 0+-- >     homePhone & C.encodeField #number (T.pack "555-4567")+-- >     homePhone & C.encodeField #type_ Person'PhoneNumber'Type'home+-- >     workPhone <- phones & C.index 1+-- >     workPhone & C.encodeField #number (T.pack "555-7654")+-- >     workPhone & C.encodeField #type_ Person'PhoneNumber'Type'work+-- >     employment <- bob & C.readField #employment+-- >     employment & C.encodeVariant #selfEmployed () -- Note the (), since selfEmploy is Void. -- > -- >     pure msg @@ -522,6 +526,16 @@ -- example which demos more of the protocol's capabilities, see the calculator example -- in the source repository's @examples/@ directory. --+-- Note: for now, we only show the client here, as the new API does not yet support+-- implementing rpc servers -- for that you can use the old API, see old docs for+-- more info.+--+-- Note that capnproto does not have a notion of "clients" and "servers" in the+-- traditional networking sense; the two sides of a connection are symmetric. In+-- capnproto terminology, a "client" is a handle for calling methods, and a "server"+-- is an object that handles methods -- but there may be many of either or both of+-- these on each side of a connection.+-- -- Given the schema: -- -- > @0xd0a87f36fa0182f5;@@ -530,112 +544,48 @@ -- >   echo @0 (query :Text) -> (reply :Text); -- > } ----- In the low level module, the code generator generates a newtype wrapper called @Echo@--- around a capability.------ Most of the interesting stuff is in the high-level module (but note that you can still--- do RPC using low-level serialization APIs). The code generator will create an API like--- (after a bit of cleanup):------ > newtype Echo = Echo Client--- >--- > class MonadIO m => Echo'server_ m cap where--- >     echo'echo :: cap -> Server.MethodHandler m Echo'echo'params Echo'echo'results--- >--- > instance Echo'server_ IO Echo--- >--- > export_Echo :: Echo'server_ IO a => Supervisors -> a -> STM Echo------ The type @Echo@ is a handle to an object (possibly remote), which can be used to--- make method calls. It is a newtype wrapper around a 'Client', which provides--- similar facilities, but doesn't know about the schema.------ To provide an implementation of the @Echo@ interface, you need an instance of the--- @Echo'server_@ type class. The @export_Echo@ function is used to convert such an--- instance into a handle to the object that can be passed around.------ Each time you call @export_Function@, it creates a thread that handles incoming--- messages in sequence.+-- In the low level module, the code generator generates an unihabited type @Echo@,+-- with its @'R.ReprFor'@ instance indicating that it is a capability. ----- Note that capnproto does not have a notion of "clients" and "servers" in the--- traditional networking sense; the two sides of a connection are symmetric. In--- capnproto terminology, a "client" is a handle for calling methods, and a "server"--- is an object that handles methods -- but there may be many of either or both of--- these on each side of a connection.+-- There is a 'Client' type exported by "Capnp.New", which is parametrized over+-- a phantom type indicating the type of the remote capability. So a @'Client'+-- Echo@ allows you to call methods on an @Echo@ interface. ----- Here is an an echo (networking) server using this interface:+-- Actually invoking methods uses the functions in "Capnp.Repr.Methods",+-- re-exported by "Capnp.New". 'callP', 'callB', and 'callR' provide different+-- ways of supplying arguments to a call, but all are intended to be used with+-- the OverloadedLabels extension for specifying the method name. ----- > {-# LANGUAGE MultiParamTypeClasses #-}--- > {-# LANGUAGE OverloadedStrings     #-}--- > import Network.Simple.TCP (serve)--- >--- > import Capnp     (def, defaultLimit)--- > -- 'Capnp.Rpc' exposes the most commonly used parts of the RPC system:--- > import Capnp.Rpc--- >     (ConnConfig(..), handleConn, pureHandler, socketTransport, toClient)--- >--- > import Capnp.Gen.Echo.Pure--- >--- > -- | A type to declare an instance on:--- > data MyEchoServer = MyEchoServer--- >--- > -- The main logic of an echo server:--- > instance Echo'server_ IO MyEchoServer where--- >     -- Each method of an interface generates a corresponding--- >     -- method in its type class. The name of the method is prefixed--- >     -- with the name of the interface, so method bar on interface--- >     -- Foo will be called foo'bar.--- >     ----- >     -- The type of a method is left abstract, and functions like--- >     -- 'pureHandler' are used to construct method handlers; see the--- >     -- "Handling method calls" section in the docs for 'Capnp.Rpc'.--- >     echo'echo = pureHandler $ \MyEchoServer params ->--- >         pure def { reply = query params }--- >--- > main :: IO ()--- > main = serve "localhost" "4000" $ \(sock, _addr) ->--- >     -- once we get a network connection, we use 'handleConn' to start--- >     -- the rpc subsystem on that connection. It takes a transport with--- >     -- which to send messages, and a config.--- >     handleConn (socketTransport sock defaultLimit) def--- >         { getBootstrap = \sup ->--- >            -- The only setting we override in this example is our--- >            -- bootstrap interface. The bootstrap interface is a "default"--- >            -- object that clients can request on startup. By default--- >            -- there is none, here we provide a client for our echo server.--- >            Just . toClient <$> export_Echo sup MyEchoServer--- >         }+-- Pipelining onto a field can be done with the 'pipe' function.+-- 'waitPipeline' blocks until the result is available. ----- The echo client looks like:+-- Here is an an echo (networking) client using this interface: --+-- > {-# LANGUAGE OverloadedLabels  #-} -- > {-# LANGUAGE OverloadedStrings #-}--- > module Examples.Rpc.EchoClient (main) where -- >+-- > import Data.Function      ((&))+-- > import Data.Functor       ((<&>)) -- > import Network.Simple.TCP (connect) -- >--- > import Capnp     (def, defaultLimit)--- > import Capnp.Rpc (ConnConfig(..), handleConn, socketTransport, wait, (?))+-- > import qualified Capnp.New as C+-- > import           Capnp.Rpc+-- >     (ConnConfig(..), fromClient, handleConn, socketTransport) -- >--- > import Capnp.Gen.Echo.Pure+-- > import Capnp.Gen.Echo.New -- > -- > main :: IO () -- > main = connect "localhost" "4000" $ \(sock, _addr) ->--- >     handleConn (socketTransport sock defaultLimit) def--- >         -- In this case, we leave 'getBootstrap' empty and set--- >         -- 'withBootstrap', which will request the other side's--- >         -- bootstrap interface. If a non-Nothing value is supplied for--- >         -- 'withBootstrap', 'handleConn' will exit (and disconnect)--- >         -- when it completes.--- >         { withBootstrap = Just $ \_sup client ->--- >             -- Clients also have instances of their server_ classes, so--- >             -- can use these instances to call methods on the remote--- >             -- object. The '?' is the message send operator.--- >             ----- >             -- The method call _immediately_ returns, yielding a promise--- >             -- that will be fulfilled when the results of the call actually--- >             -- arive. We use 'wait' to wait for the promise to resolve,--- >             -- display the result to the user, and then exit.--- >             echo'echo (Echo client) ? def { query = "Hello, World!" }--- >                 >>= wait+-- >     handleConn (socketTransport sock C.defaultLimit) C.def+-- >         { debugMode = True+-- >         , withBootstrap = Just $ \_sup client ->+-- >             let echoClient :: C.Client Echo+-- >                 echoClient = fromClient client+-- >             in+-- >             echoClient+-- >                 & C.callP #echo C.def { query = "Hello, World!" }+-- >                 <&> C.pipe #reply+-- >                 >>= C.waitPipeline+-- >                 >>= C.evalLimitT C.defaultLimit . C.parse -- >                 >>= print -- >         }
lib/Capnp/Untyped.hs view
@@ -19,8 +19,8 @@ The types and functions in this module know about things like structs and lists, but are not schema aware. -Each of the data types exported by this module is parametrized over a Message-type (see "Capnp.Message"), used as the underlying storage.+Each of the data types exported by this module is parametrized over the+mutability of the message it contains (see "Capnp.Message"). -} module Capnp.Untyped     ( Ptr(..), List(..), Struct, ListOf, Cap@@ -33,6 +33,10 @@     , getData, getPtr     , setData, setPtr     , copyStruct+    , copyPtr+    , copyList+    , copyCap+    , copyListOf     , getClient     , get, index, length     , setIndex@@ -64,30 +68,31 @@ import Data.Word  import Control.Exception.Safe    (impureThrow)-import Control.Monad             (forM_)+import Control.Monad             (forM_, unless) import Control.Monad.Catch       (MonadCatch, MonadThrow(throwM)) import Control.Monad.Catch.Pure  (CatchT(runCatchT))-import Control.Monad.Primitive   (PrimMonad (..))+import Control.Monad.Primitive   (PrimMonad(..))+import Control.Monad.ST          (RealWorld) import Control.Monad.Trans.Class (MonadTrans(lift))  import qualified Data.ByteString     as BS import qualified Language.Haskell.TH as TH -import Capnp.Address        (OffsetError (..), WordAddr (..), pointerFrom)+import Capnp.Address        (OffsetError(..), WordAddr(..), pointerFrom) import Capnp.Bits-    ( BitCount (..)-    , ByteCount (..)-    , Word1 (..)-    , WordCount (..)+    ( BitCount(..)+    , ByteCount(..)+    , Word1(..)+    , WordCount(..)     , bitsToBytesCeil     , bytesToWordsCeil     , replaceBits     , wordsToBytes     )-import Capnp.Message        (Mutability (..))-import Capnp.Pointer        (ElementSize (..))-import Capnp.TraversalLimit (MonadLimit(invoice))-import Data.Mutable         (Thaw (..))+import Capnp.Message        (Mutability(..))+import Capnp.Pointer        (ElementSize(..))+import Capnp.TraversalLimit (LimitT, MonadLimit(invoice))+import Data.Mutable         (Thaw(..))  import qualified Capnp.Errors  as E import qualified Capnp.Message as M@@ -454,6 +459,7 @@             , nLen = 0             } +-- | Extract a client (indepedent of the messsage) from the capability. getClient :: ReadCtx m mut => Cap mut -> m M.Client getClient (Cap msg idx) = M.getCap msg (fromIntegral idx) @@ -461,6 +467,7 @@ -- Deducts 1 from the quota for each word read (which may be multiple in the -- case of far pointers). get :: ReadCtx m mut => M.WordPtr mut -> m (Maybe (Ptr mut))+{-# SPECIALIZE get :: M.WordPtr ('Mut RealWorld) -> LimitT IO (Maybe (Ptr ('Mut RealWorld))) #-} get ptr@M.WordPtr{pMessage, pAddr} = do     word <- getWord ptr     case P.parsePtr word of@@ -482,7 +489,15 @@                         , pAddr = addr'                         }                 if not twoWords-                    then get landingPtr+                    then do+                        -- XXX: invoice so we don't open ourselves up to DoS+                        -- in the case of a chain of far pointers -- but a+                        -- better solution would be to just reject after the+                        -- first chain since this isn't actually legal. TODO+                        -- refactor (and then get rid of the MonadLimit+                        -- constraint).+                        invoice 1+                        get landingPtr                     else do                         landingPad <- getWord landingPtr                         case P.parsePtr landingPad of@@ -528,7 +543,7 @@    where     getWord M.WordPtr{pSegment, pAddr=WordAt{wordIndex}} =-        invoice 1 *> M.read pSegment wordIndex+        M.read pSegment wordIndex     resolveOffset addr@WordAt{..} off =         addr { wordIndex = wordIndex + fromIntegral off + 1 }     getList ptr@M.WordPtr{pAddr=addr@WordAt{wordIndex}} eltSpec = PtrList <$>@@ -591,7 +606,8 @@  -- | @'setIndex value i list@ Set the @i@th element of @list@ to @value@. setIndex :: RWCtx m s => a -> Int -> ListOf ('Mut s) a -> m ()-setIndex _ i list | length list <= i =+{-# SPECIALIZE setIndex :: a -> Int -> ListOf ('Mut RealWorld) a -> LimitT IO () #-}+setIndex _ i list | i < 0 || length list <= i =     throwM E.BoundsError { E.index = i, E.maxIndex = length list } setIndex value i list = case list of     ListOfVoid _       -> pure ()@@ -614,13 +630,13 @@         dest <- index i list         copyStruct dest value   where-    setNIndex :: (ReadCtx m ('Mut s), M.WriteCtx m s, Bounded a, Integral a) => NormalList ('Mut s) -> Int -> a -> m ()+    setNIndex :: (RWCtx m s, Bounded a, Integral a) => NormalList ('Mut s) -> Int -> a -> m ()     setNIndex NormalList{nPtr=M.WordPtr{pSegment, pAddr=WordAt{wordIndex}}} eltsPerWord value = do         let eltWordIndex = wordIndex + WordCount (i `div` eltsPerWord)         word <- M.read pSegment eltWordIndex         let shift = (i `mod` eltsPerWord) * (64 `div` eltsPerWord)         M.write pSegment eltWordIndex $ replaceBits value word shift-    setPtrIndex :: (ReadCtx m ('Mut s), M.WriteCtx m s) => NormalList ('Mut s) -> Ptr ('Mut s) -> P.Ptr -> m ()+    setPtrIndex :: RWCtx m s => NormalList ('Mut s) -> Ptr ('Mut s) -> P.Ptr -> m ()     setPtrIndex NormalList{nPtr=nPtr@M.WordPtr{pAddr=addr@WordAt{wordIndex}}} absPtr relPtr =         let srcPtr = nPtr { M.pAddr = addr { wordIndex = wordIndex + WordCount i } }         in setPointerTo srcPtr (ptrAddr absPtr) relPtr@@ -630,6 +646,7 @@ -- If the two addresses are in different segments, a landing pad will be allocated and -- @srcLoc@ will contain a far pointer. setPointerTo :: M.WriteCtx m s => M.WordPtr ('Mut s) -> WordAddr -> P.Ptr -> m ()+{-# SPECIALIZE setPointerTo :: M.WordPtr ('Mut RealWorld) -> WordAddr -> P.Ptr -> LimitT IO () #-} setPointerTo         M.WordPtr             { pMessage = msg@@ -701,10 +718,13 @@                             P.ListPtr _ eltSpec -> P.ListPtr 0 eltSpec                             _ -> relPtr +-- | Make a copy of a capability inside the target message. copyCap :: RWCtx m s => M.Message ('Mut s) -> Cap ('Mut s) -> m (Cap ('Mut s)) copyCap dest cap = getClient cap >>= appendCap dest +-- | Make a copy of the value at the pointer, in the target message. copyPtr :: RWCtx m s => M.Message ('Mut s) -> Maybe (Ptr ('Mut s)) -> m (Maybe (Ptr ('Mut s)))+{-# SPECIALIZE copyPtr :: M.Message ('Mut RealWorld) -> Maybe (Ptr ('Mut RealWorld)) -> LimitT IO (Maybe (Ptr ('Mut RealWorld))) #-} copyPtr _ Nothing                = pure Nothing copyPtr dest (Just (PtrCap cap))    = Just . PtrCap <$> copyCap dest cap copyPtr dest (Just (PtrList src))   = Just . PtrList <$> copyList dest src@@ -716,7 +736,9 @@     copyStruct destStruct src     pure destStruct +-- | Make a copy of the list, in the target message. copyList :: RWCtx m s => M.Message ('Mut s) -> List ('Mut s) -> m (List ('Mut s))+{-# SPECIALIZE copyList :: M.Message ('Mut RealWorld) -> List ('Mut RealWorld) -> LimitT IO (List ('Mut RealWorld)) #-} copyList dest src = case src of     List0 src      -> List0 <$> allocList0 dest (length src)     List1 src      -> List1 <$> copyNewListOf dest src allocList1@@ -740,13 +762,16 @@     -> ListOf ('Mut s) a     -> (M.Message ('Mut s) -> Int -> m (ListOf ('Mut s) a))     -> m (ListOf ('Mut s) a)+{-# INLINE copyNewListOf #-} copyNewListOf destMsg src new = do     dest <- new destMsg (length src)     copyListOf dest src     pure dest  +-- | Make a copy of the list, in the target message. copyListOf :: RWCtx m s => ListOf ('Mut s) a -> ListOf ('Mut s) a -> m ()+{-# SPECIALIZE copyListOf :: ListOf ('Mut RealWorld) a -> ListOf ('Mut RealWorld) a -> LimitT IO () #-} copyListOf dest src =     forM_ [0..length src - 1] $ \i -> do         value <- index i src@@ -754,6 +779,7 @@  -- | @'copyStruct' dest src@ copies the source struct to the destination struct. copyStruct :: RWCtx m s => Struct ('Mut s) -> Struct ('Mut s) -> m ()+{-# SPECIALIZE copyStruct :: Struct ('Mut RealWorld) -> Struct ('Mut RealWorld) -> LimitT IO () #-} copyStruct dest src = do     -- We copy both the data and pointer sections from src to dest,     -- padding the tail of the destination section with zeros/null@@ -776,38 +802,35 @@  -- | @index i list@ returns the ith element in @list@. Deducts 1 from the quota index :: ReadCtx m mut => Int -> ListOf mut a -> m a-index i list = invoice 1 >> index' list+{-# SPECIALIZE index :: Int -> ListOf 'Const a -> LimitT IO a #-}+{-# SPECIALIZE index :: Int -> ListOf ('Mut RealWorld) a -> LimitT IO a #-}+index i list+    | i < 0 || i >= length list =+        throwM E.BoundsError { E.index = i, E.maxIndex = length list - 1 }+    | otherwise = index' list   where     index' :: ReadCtx m mut => ListOf mut a -> m a-    index' (ListOfVoid nlist)-        | i < nLen nlist = pure ()-        | otherwise = throwM E.BoundsError { E.index = i, E.maxIndex = nLen nlist - 1 }-    index' (ListOfStruct (Struct ptr@M.WordPtr{pAddr=addr@WordAt{..}} dataSz ptrSz) len)-        | i < len = do-            let offset = WordCount $ i * (fromIntegral dataSz + fromIntegral ptrSz)-            let addr' = addr { wordIndex = wordIndex + offset }-            return $ Struct ptr { M.pAddr = addr' } dataSz ptrSz-        | otherwise = throwM E.BoundsError { E.index = i, E.maxIndex = len - 1}+    index' (ListOfVoid _) = pure ()+    index' (ListOfStruct (Struct ptr@M.WordPtr{pAddr=addr@WordAt{..}} dataSz ptrSz) _) = do+        let offset = WordCount $ i * (fromIntegral dataSz + fromIntegral ptrSz)+        let addr' = addr { wordIndex = wordIndex + offset }+        return $ Struct ptr { M.pAddr = addr' } dataSz ptrSz     index' (ListOfBool   nlist) = do         Word1 val <- indexNList nlist 64         pure val     index' (ListOfWord8  nlist) = indexNList nlist 8     index' (ListOfWord16 nlist) = indexNList nlist 4     index' (ListOfWord32 nlist) = indexNList nlist 2-    index' (ListOfWord64 (NormalList M.WordPtr{pSegment, pAddr=WordAt{wordIndex}} len))-        | i < len = M.read pSegment $ wordIndex + WordCount i-        | otherwise = throwM E.BoundsError { E.index = i, E.maxIndex = len - 1}-    index' (ListOfPtr (NormalList ptr@M.WordPtr{pAddr=addr@WordAt{..}} len))-        | i < len = get ptr { M.pAddr = addr { wordIndex = wordIndex + WordCount i } }-        | otherwise = throwM E.BoundsError { E.index = i, E.maxIndex = len - 1}+    index' (ListOfWord64 (NormalList M.WordPtr{pSegment, pAddr=WordAt{wordIndex}} _)) =+        M.read pSegment $ wordIndex + WordCount i+    index' (ListOfPtr (NormalList ptr@M.WordPtr{pAddr=addr@WordAt{..}} _)) =+        get ptr { M.pAddr = addr { wordIndex = wordIndex + WordCount i } }     indexNList :: (ReadCtx m mut, Integral a) => NormalList mut -> Int -> m a-    indexNList (NormalList M.WordPtr{pSegment, pAddr=WordAt{..}} len) eltsPerWord-        | i < len = do-            let wordIndex' = wordIndex + WordCount (i `div` eltsPerWord)-            word <- M.read pSegment wordIndex'-            let shift = (i `mod` eltsPerWord) * (64 `div` eltsPerWord)-            pure $ fromIntegral $ word `shiftR` shift-        | otherwise = throwM E.BoundsError { E.index = i, E.maxIndex = len - 1 }+    indexNList (NormalList M.WordPtr{pSegment, pAddr=WordAt{..}} _) eltsPerWord = do+        let wordIndex' = wordIndex + WordCount (i `div` eltsPerWord)+        word <- M.read pSegment wordIndex'+        let shift = (i `mod` eltsPerWord) * (64 `div` eltsPerWord)+        pure $ fromIntegral $ word `shiftR` shift  -- | Returns the length of a list length :: ListOf msg a -> Int@@ -841,11 +864,13 @@  -- | The data section of a struct, as a list of Word64 dataSection :: Struct msg -> ListOf msg Word64+{-# INLINE dataSection #-} dataSection (Struct ptr dataSz _) =     ListOfWord64 $ NormalList ptr (fromIntegral dataSz)  -- | The pointer section of a struct, as a list of Ptr ptrSection :: Struct msg -> ListOf msg (Maybe (Ptr msg))+{-# INLINE ptrSection #-} ptrSection (Struct ptr@M.WordPtr{pAddr=addr@WordAt{wordIndex}} dataSz ptrSz) =     ListOfPtr $ NormalList         { nPtr = ptr { M.pAddr = addr { wordIndex = wordIndex + fromIntegral dataSz } }@@ -879,19 +904,116 @@ -- | @'getData' i struct@ gets the @i@th word from the struct's data section, -- returning 0 if it is absent. getData :: ReadCtx m msg => Int -> Struct msg -> m Word64+{-# INLINE getData #-} getData i struct-    | fromIntegral (structWordCount struct) <= i = 0 <$ invoice 1+    | fromIntegral (structWordCount struct) <= i = pure 0     | otherwise = index i (dataSection struct)  -- | @'getPtr' i struct@ gets the @i@th word from the struct's pointer section, -- returning Nothing if it is absent. getPtr :: ReadCtx m msg => Int -> Struct msg -> m (Maybe (Ptr msg))+{-# INLINE getPtr #-} getPtr i struct-    | fromIntegral (structPtrCount struct) <= i = Nothing <$ invoice 1-    | otherwise = index i (ptrSection struct)+    | fromIntegral (structPtrCount struct) <= i = do+        invoice 1+        pure Nothing+    | otherwise = do+        ptr <- index i (ptrSection struct)+        checkPtr ptr+        invoicePtr ptr+        pure ptr +checkPtr :: ReadCtx m mut => Maybe (Ptr mut) -> m ()+checkPtr Nothing              = pure ()+checkPtr (Just (PtrCap c))    = checkCap c+checkPtr (Just (PtrList l))   = checkList l+checkPtr (Just (PtrStruct s)) = checkStruct s++checkCap :: ReadCtx m mut => Cap mut -> m ()+checkCap (Cap _ _ ) = pure ()+    -- No need to do anything here; an out of bounds index is just treated+    -- as null.++checkList :: ReadCtx m mut => List mut -> m ()+checkList (List0 l)      = checkListOf l+checkList (List1 l)      = checkListOf l+checkList (List8 l)      = checkListOf l+checkList (List16 l)     = checkListOf l+checkList (List32 l)     = checkListOf l+checkList (List64 l)     = checkListOf l+checkList (ListPtr l)    = checkListOf l+checkList (ListStruct l) = checkListOf l++checkListOf :: ReadCtx m mut => ListOf mut a -> m ()+checkListOf (ListOfStruct s@(Struct ptr _ _) len) =+    checkPtrOffset ptr (fromIntegral len * structSize s)+checkListOf (ListOfVoid _) = pure ()+checkListOf (ListOfBool l) = checkNormalList l 1+checkListOf (ListOfWord8 l) = checkNormalList l 8+checkListOf (ListOfWord16 l) = checkNormalList l 16+checkListOf (ListOfWord32 l) = checkNormalList l 32+checkListOf (ListOfWord64 l) = checkNormalList l 64+checkListOf (ListOfPtr l) = checkNormalList l 64++checkNormalList :: ReadCtx m mut => NormalList mut -> BitCount -> m ()+checkNormalList NormalList{nPtr, nLen} eltSize =+    let nBits = fromIntegral nLen * eltSize+        nWords = bytesToWordsCeil $ bitsToBytesCeil nBits+    in+    checkPtrOffset nPtr nWords++checkStruct :: ReadCtx m mut => Struct mut -> m ()+checkStruct s@(Struct ptr _ _) =+    checkPtrOffset ptr (structSize s)++checkPtrOffset :: ReadCtx m mut => M.WordPtr mut -> WordCount -> m ()+checkPtrOffset M.WordPtr{pSegment, pAddr=WordAt{wordIndex}} size = do+    segWords <- M.numWords pSegment+    let maxIndex = fromIntegral segWords - 1+    unless (wordIndex >= 0) $+        throwM E.BoundsError { index = fromIntegral wordIndex, maxIndex }+    unless (wordIndex + size <= segWords) $+        throwM E.BoundsError+            { index = fromIntegral (wordIndex + size) - 1+            , maxIndex+            }++structSize :: Struct mut -> WordCount+structSize s = structWordCount s + fromIntegral (structPtrCount s)++-- | Invoice the traversal limit for all data reachable via the pointer+-- directly, i.e. without following further pointers.+--+-- The minimum possible cost is 1, and for lists will always be proportional+-- to the length of the list, even if the size of the elements is zero.+invoicePtr :: MonadLimit m => Maybe (Ptr mut) -> m ()+{-# SPECIALIZE invoicePtr :: Maybe (Ptr ('Mut RealWorld)) -> LimitT IO () #-}+invoicePtr p = invoice $! ptrInvoiceSize p++ptrInvoiceSize :: Maybe (Ptr mut) -> WordCount+ptrInvoiceSize = \case+    Nothing            -> 1+    Just (PtrCap _)    -> 1+    Just (PtrStruct s) -> structInvoiceSize s+    Just (PtrList l)   -> listInvoiceSize l+listInvoiceSize :: List mut -> WordCount+listInvoiceSize l = max 1 $! case l of+    List0 l   -> fromIntegral $! length l+    List1 l   -> fromIntegral $! length l `div` 64+    List8 l   -> fromIntegral $! length l `div`  8+    List16 l  -> fromIntegral $! length l `div`  4+    List32 l  -> fromIntegral $! length l `div`  2+    List64 l  -> fromIntegral $! length l+    ListPtr l -> fromIntegral $! length l+    ListStruct (ListOfStruct s len) ->+        structInvoiceSize s * fromIntegral len+structInvoiceSize :: Struct mut -> WordCount+structInvoiceSize (Struct _ dataSz ptrSz) =+    max 1 (fromIntegral dataSz + fromIntegral ptrSz)+ -- | @'setData' value i struct@ sets the @i@th word in the struct's data section -- to @value@.+{-# INLINE setData #-} setData :: (ReadCtx m ('Mut s), M.WriteCtx m s)     => Word64 -> Int -> Struct ('Mut s) -> m () setData value i = setIndex value i . dataSection@@ -899,6 +1021,7 @@ -- | @'setData' value i struct@ sets the @i@th pointer in the struct's pointer -- section to @value@. setPtr :: (ReadCtx m ('Mut s), M.WriteCtx m s) => Maybe (Ptr ('Mut s)) -> Int -> Struct ('Mut s) -> m ()+{-# INLINE setPtr #-} setPtr value i = setIndex value i . ptrSection  -- | 'rawBytes' returns the raw bytes corresponding to the list.@@ -906,7 +1029,6 @@ -- TODO: we can get away with a more lax context than ReadCtx, maybe even make -- this non-monadic. rawBytes (ListOfWord8 (NormalList M.WordPtr{pSegment, pAddr=WordAt{wordIndex}} len)) = do-    invoice $ fromIntegral $ bytesToWordsCeil (ByteCount len)     let bytes = M.toByteString pSegment     let ByteCount byteOffset = wordsToBytes wordIndex     pure $ BS.take len $ BS.drop byteOffset bytes@@ -921,6 +1043,8 @@         , pSegment = seg         , pAddr = WordAt 0 0         }+    checkPtr root+    invoicePtr root     case root of         Just (PtrStruct struct) -> pure struct         Nothing -> messageDefault msg
− lib/Internal/Finalizer.hs
@@ -1,78 +0,0 @@-{-|-Module: Internal.Finalizer-Description: Make resource-safe wrappers for values, with finalizers--This module wrappers for values to which finalizers can safely be-attached, without worrying that they may be collected early. It is-useful when the natural thing to attach a finalizer to is a simple-datatype.--From the docs for the 'Weak' type:--> WARNING: weak pointers to ordinary non-primitive Haskell types-> are particularly fragile, because the compiler is free to optimise-> away or duplicate the underlying data structure. Therefore-> attempting to place a finalizer on an ordinary Haskell type may-> well result in the finalizer running earlier than you expected.->-> [...]->-> Finalizers can be used reliably for types that are created-> explicitly and have identity, such as IORef and MVar. [...]--So instead, we provide a 'Cell' type, which:--* Wraps simple value-* Can be created and read inside STM, and-* May safely have finalizers, using the 'addFinalizer' function in-  this module.-* Ensures that the finalizers will not be run before any transaction that-  reads data is complete.--Note that it is *not* safe to use the primitives from "Sys.Mem.Weak" to-add finalizers.---}-{-# LANGUAGE NamedFieldPuns #-}-module Internal.Finalizer (Cell, get, newCell, addFinalizer) where--import Control.Concurrent.MVar (MVar, mkWeakMVar, newEmptyMVar)-import Control.Concurrent.STM-    (STM, TVar, atomically, modifyTVar', newTVar, readTVar)---- | A cell, containing a value and possibly finalizers.-newtype Cell a-    = Cell (TVar (CellData a))-    deriving(Eq)---- The actual contents of a cell. This is wrapped in a 'TVar' to force accesses--- to add the a reference the transaction log from which the finalizers are--- reachable, thus preventing them from running before the completion of any--- transaction that examines the value.-data CellData a = CellData-    { value      :: a-    -- ^ The value wrapped by the cell.--    , finalizers :: [MVar ()]-    -- ^ Experimentally, TVars appear not to be safe for finalizers, so-    -- instead we create MVars for the finalizers, and store them this-    -- list so that we maintain a reference to them.-    }-    deriving(Eq)---- | Get the value from a cell-get :: Cell a -> STM a-get (Cell state) = value <$> readTVar state---- Create  a new cell, initially with no finalizers.-newCell :: a -> STM (Cell a)-newCell value = Cell <$> newTVar CellData { value, finalizers = [] }---- Add a new finalizer to the cell. Cells may have many finalizers--- attached.-addFinalizer :: Cell a -> STM () -> IO ()-addFinalizer (Cell stateVar) fin = do-    mvar <- newEmptyMVar-    _ <- mkWeakMVar mvar $ atomically fin-    atomically $ modifyTVar' stateVar $ \state@CellData{finalizers} ->-        state { finalizers = mvar : finalizers }
tests/Main.hs view
@@ -17,6 +17,7 @@ import WalkSchemaCodeGenRequest           (walkSchemaCodeGenRequestTest)  import qualified CalculatorExample+import qualified PointerOOB  main :: IO () main = hspec $ parallel $ do@@ -36,4 +37,5 @@         describe "property tests for schema" schemaCGRQuickCheck     describe "Regression tests" regressionTests     CalculatorExample.tests+    PointerOOB.tests     describe "Tests for client unwrapping" unwrapTests
tests/Module/Capnp/Gen/Capnp/Schema.hs view
@@ -1,20 +1,26 @@-{-# LANGUAGE DataKinds       #-}-{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE DataKinds        #-}+{-# LANGUAGE OverloadedLabels #-}+{-# LANGUAGE RecordWildCards  #-}+{-# LANGUAGE TypeApplications #-} module Module.Capnp.Gen.Capnp.Schema (schemaTests) where  import Test.Hspec  import Control.Monad.Primitive (RealWorld) import Data.Foldable           (traverse_)+import Data.Function           ((&)) -import Capnp.Gen.Capnp.Schema+import           Capnp.Gen.Capnp.Schema+import qualified Capnp.Gen.Capnp.Schema.New as N  import Capnp                (newRoot)+import Capnp.New            (encodeField, encodeVariant, initVariant, readField) import Capnp.TraversalLimit (LimitT, evalLimitT)-import Data.Mutable         (Thaw (..))+import Data.Mutable         (Thaw(..)) import Util                 (decodeValue, schemaSchemaSrc) -import qualified Capnp.Message as M+import qualified Capnp.Message     as M+import qualified Capnp.New.Classes as NC  data BuildTest = BuildTest     { typeName :: String@@ -40,6 +46,25 @@             set_Field'group'typeId group 322             ordinal <- get_Field'ordinal field             set_Field'ordinal'explicit ordinal 22+        }+    , BuildTest -- same test, but with the repr API.+        { typeName = "Field"+        , expected = concat+            [ "( codeOrder = 4,\n"+            , "  discriminantValue = 6,\n"+            , "  group = (typeId = 322),\n"+            , "  ordinal = (explicit = 22) )\n"+            ]+        , builder = \msg -> do+            field <- NC.newRoot @N.Field () msg+            field & encodeField #codeOrder 4+            field & encodeField #discriminantValue 6+            field+                & initVariant #group+                >>= encodeField #typeId 322+            field+                & readField #ordinal+                >>= encodeVariant #explicit 22         }     ]   where
tests/Module/Capnp/Untyped.hs view
@@ -107,7 +107,7 @@             Just (PtrList (List16 homes)) <- getPtr 1 base             let 0 = length homes             return ()-        endQuota `shouldBe` 110+        endQuota `shouldBe` 117  data ModTest s = ModTest     { testIn   :: String
tests/Module/Capnp/Untyped/Pure.hs view
@@ -37,7 +37,7 @@                            capacity = 5173,                            maxSpeed = 12.0                         )))|]-            (actual, 110) <- runLimitT 128 $ U.rootPtr msg >>= readStruct+            (actual, 117) <- runLimitT 128 $ U.rootPtr msg >>= readStruct             actual `shouldBe` Struct                 [3]                 [ Just $ PtrStruct $ Struct
+ tests/PointerOOB.hs view
@@ -0,0 +1,68 @@+{-# LANGUAGE DataKinds #-}+module PointerOOB (tests) where++import Test.Hspec++import Control.Category       ((>>>))+import Control.Exception.Safe (try)+import Control.Monad.IO.Class (MonadIO(liftIO))+import Data.Foldable          (for_)+import Data.Function          ((&))++import qualified Capnp+import qualified Capnp.Errors  as E+import qualified Capnp.Message as M+import qualified Capnp.Pointer as P+import qualified Capnp.Untyped as U++import qualified Data.ByteString         as BS+import qualified Data.ByteString.Builder as BB+import qualified Data.ByteString.Lazy    as LBS++errPtrs :: [(P.Ptr, E.Error)]+errPtrs =+    [ ( P.ListPtr 0 (P.EltNormal P.Sz1 1)+      , E.BoundsError { E.index = 2, E.maxIndex = 1 }+      )+    , ( P.ListPtr 0 (P.EltNormal P.Sz32 4)+      , E.BoundsError { E.index = 3, E.maxIndex = 1 }+      )+    , ( P.ListPtr (-3) (P.EltNormal P.Sz1 1)+      , E.BoundsError { E.index = -1, E.maxIndex = 1 }+      )+    , ( P.ListPtr (-4) (P.EltNormal P.Sz1 1)+      , E.BoundsError { E.index = -2, E.maxIndex = 1 }+      )+    , ( P.StructPtr 0 1 0+      , E.BoundsError { E.index = 2, E.maxIndex = 1 }+      )+    , ( P.StructPtr 0 0 1+      , E.BoundsError { E.index = 2, E.maxIndex = 1 }+      )+    , ( P.StructPtr 0 1 1+      , E.BoundsError { E.index = 3, E.maxIndex = 1 }+      )+    ]++wrapPtr :: P.Ptr -> BS.ByteString+wrapPtr p =+    [ Just (P.StructPtr 0 0 1), Just p ]+        & map (P.serializePtr >>> BB.word64LE)+        & mconcat+        & BB.toLazyByteString+        & LBS.toStrict++tests :: Spec+tests = describe "Test correct handling of out of bound pointers" $ do+    describe "pointers that go off the end of the message" $ do+        for_ errPtrs $ \(p, err) -> do+            it ("Should catch the issue for " <> show p) $ do+                let testPtrBounds :: P.Ptr -> Capnp.LimitT IO ()+                    testPtrBounds p = do+                        let msg = M.singleSegment $ Capnp.fromByteString (wrapPtr p)+                        root <- U.rootPtr msg+                        v <- try $ U.getPtr 0 root+                        case v of+                            Right _ -> fail "should have signaled an error"+                            Left e  -> liftIO $ e `shouldBe` err+                Capnp.evalLimitT maxBound (testPtrBounds p)
tests/WalkSchemaCodeGenRequest.hs view
@@ -17,7 +17,7 @@ import Control.Monad.Trans.Class (lift)  import qualified Data.ByteString as BS-import qualified Prelude+import qualified Data.Vector     as V  import Capnp.Untyped hiding (index, length) @@ -28,13 +28,8 @@ import qualified Capnp.Gen.Capnp.Schema as Schema import qualified Capnp.Message          as M ---- | TODO: make this an array; we're doing random access to it below.--- I(@zenhack) am waiting on this, since at the time of writing @taktoa--- is working on some array utilities that will get merged soonish, so--- it probably makes sense to just wait for that.-nodeNames :: [BS.ByteString]-nodeNames =+nodeNames :: V.Vector BS.ByteString+nodeNames = V.fromList     [ "Import"     , "annotation"     , "Value"@@ -58,7 +53,7 @@             bytes <- BS.readFile "tests/data/schema-codegenreq"             msg <- M.decode bytes             endQuota <- execLimitT 4096 (rootPtr msg >>= reader)-            endQuota `shouldBe` 3452+            endQuota `shouldBe` 3372   where     reader :: Struct 'M.Const -> LimitT IO ()     reader root = do@@ -80,7 +75,7 @@         prefixLen <- Schema.get_Node'displayNamePrefixLength node         let baseName = BS.drop (fromIntegral prefixLen) name -        when (i < Prelude.length nodeNames && baseName /= (nodeNames !! i)) $+        when (i < V.length nodeNames && baseName /= (nodeNames V.! i)) $             error "Incorrect name."          has <- Schema.has_Node'annotations node