B00_std.BincodeBinary coding of values.
type 'a enc = Buffer.t -> 'a -> unitThe 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.
val err : int -> ('a, Format.formatter, unit, 'b) format4 -> 'aerr 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.
encode c v encodes v using c (and buf if provided, it is the client's duty to reset it before an encoding).
of_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 Os.File.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.tlistoptionenc_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.
Hash.tTime.spanTime.cpu_spanval enc_time_cpu_span : Time.cpu_span encenc_time_cpu_span encodes a Time.cpu_span.
val dec_time_cpu_span : Time.cpu_span decdec_time_cpu_span decodes a Time.cpu_span.
val time_cpu_span : Time.cpu_span ttime_span is a codec for Time.cpu_span.