B0_bincodeBinary coding of values.
The type for encoders of values of type 'a. The call enc b v must encode v in buffer b.
The type for decoders of values of type 'a. The call dec s i must decode a value in s starting at i (which may be String.length s) and return the index of the byte in s after the decoded value (this can be String.length s). The function must raise Failure in case of error, use err for this.
err i fmt reports a decoding error for position i formatted according to fmt.
err_byte ~kind i byte report an error for the unexpected byte byte at position i for decoding a value of type kind.
get_byte s i is the byte s.[i]. Does not check that i is in bounds.
dec_eoi s i asserts that i is exactly at the end of input, i.e. String.length s.
val to_string : ?buf:Stdlib.Buffer.t -> 'a t -> 'a -> stringencode c v encodes v using c (and buf if provided, it is the client's duty to reset it before an encoding).
val of_string :
?file:B0_std.Fpath.t ->
'a t ->
string ->
('a, string) Stdlib.resultof_string ~file c s decodes a value from s using c and dec_eoi. In case of error file is mentioned in the error message (defaults to B0_std.Fpath.dash).
val enc_magic : string -> unit encenc_magic m encodes string m as a magic number.
val dec_magic : string -> unit decdec_magic m decodes magic number m and returns the next index to read from.
val magic : string -> unit tmagic m is a codec for magic number m.
val enc_byte : int encenc_byte is a byte encoder. Values larger than 0xFF are truncated.
val dec_byte : kind:string -> int decdec_byte decodes a byte for a value of type kind (used with err_byte)
unitval enc_unit : unit encenc_unit encodes unit.
val dec_unit : unit decdec_unit decodes unit.
val unit : unit tunti is a codec for unit.
boolval enc_bool : bool encenc_bool encodes a boolean.
val dec_bool : bool decdec_bool decodes a boolean.
val bool : bool tbool is a codec for bool.
intval enc_int : int encenc_int encodes an integer. The encoding does not depend on Sys.word_size.
val dec_int : int decdec_int dedodes an integer. Warning. An int encoded on a 64-bit platform may end up being truncated if read back on 32-bit platform.
val int : int tint is a codec for integers.
int64val enc_int64 : int64 encenc_int64 encodes an int64.
val dec_int64 : int64 decdec_int64 decodes an int64.
val int64 : int64 tint64 is a coded for int64.
stringval enc_string : string encenc_string encodes a string.
val dec_string : string decdec_string decodes a string.
val string : string tstring is a codec for string.
Fpath.tval enc_fpath : B0_std.Fpath.t encenc_fpath encodes an B0_std.Fpath.t.
val dec_fpath : B0_std.Fpath.t decdec_fpath decodes an B0_std.Fpath.t.
val fpath : B0_std.Fpath.t tfpath is a coded for !B0_std.Fpath.t.
listoptionenc_option enc encodes an option using enc for the Some case value.
dec_option dec decodes an option using dec for the Some case value.
resultenc_result ~ok ~error encodes a result value with the corresponding case encoders.
dec_result ~ok ~error decodes a result value with the corresponding case decoders.
result is a codec for results with Ok elements coded with ok and Error elements coded with error.
Set.tenc_set (module S) enc encodes S.t sets using enc for its elements.
dec_set (module S) dec decodes S.t sets with dec for its elements.
set (module S) c is a codec for S.t sets using c for its elements.
B0_hash.tMtime.Span.tval enc_mtime_span : B0_std.Mtime.Span.t encenc_mtime_span encodes a B0_std.Mtime.Span.t.
val dec_mtime_span : B0_std.Mtime.Span.t decdec_mtime_span decodes a B0_std.Mtime.Span.t.
val mtime_span : B0_std.Mtime.Span.t tmtime_span is a codec for B0_std.Mtime.Span.t.
Os.Cpu.Time.Span.tval enc_cpu_time_span : B0_std.Os.Cpu.Time.Span.t encenc_cpu_time_span encodes a B0_std.Os.Cpu.Time.Span.t.
val dec_cpu_time_span : B0_std.Os.Cpu.Time.Span.t decdec_cpu_time_span decodes a B0_std.Os.Cpu.Time.Span.t.
val cpu_time_span : B0_std.Os.Cpu.Time.Span.t tcpu_time_span is a codec for B0_std.Os.Cpu.Time.Span.t.