- type StaticSerAction size a = StaticMemAction SerTag size a
- ser :: forall t. (CanSerialize t, Nat (BufferReq t)) => t -> StaticSerAction (BufferReq t) ()
- apply_ser_to_fixed_buffer :: forall size out_type. Nat size => StaticSerAction size out_type -> SerBuffer -> IO (out_type, SerBuffer)
- apply_ser_to_fixed_buffer_unsafe :: forall size out_type. StaticSerAction size out_type -> SerBuffer -> IO (out_type, SerBuffer)
- apply_ser_to_fixed_buffer_unsafe_ :: forall size out_type. StaticSerAction size out_type -> SerBuffer -> IO out_type
Documentation
type StaticSerAction size a = StaticMemAction SerTag size aSource
ser :: forall t. (CanSerialize t, Nat (BufferReq t)) => t -> StaticSerAction (BufferReq t) ()Source
apply_ser_to_fixed_buffer :: forall size out_type. Nat size => StaticSerAction size out_type -> SerBuffer -> IO (out_type, SerBuffer)Source
To execute a serialization action: - determine the final data model of the serialization action monad by fixing the initial data model as DMNil. - evaluate the action via CPS
apply_ser_to_fixed_buffer_unsafe :: forall size out_type. StaticSerAction size out_type -> SerBuffer -> IO (out_type, SerBuffer)Source
apply_ser_to_fixed_buffer_unsafe_ :: forall size out_type. StaticSerAction size out_type -> SerBuffer -> IO out_typeSource