Module Ppx_deriving_biniou_runtime

type node_tag = int
val pp_node_tag : Ppx_deriving_runtime.Format.formatter -> node_tag -> Ppx_deriving_runtime.unit
val show_node_tag : node_tag -> Ppx_deriving_runtime.string
type hash = int
val pp_hash : Ppx_deriving_runtime.Format.formatter -> hash -> Ppx_deriving_runtime.unit
val show_hash : hash -> Ppx_deriving_runtime.string
type tree = [
  1. | `Tuple of tree array
  2. | `Num_variant of int * tree option
  3. | `Float32 of float
  4. | `Bool of bool
  5. | `Svint of int
  6. | `Int8 of char
  7. | `Int64 of Stdlib.Int64.t
  8. | `Array of (node_tag * tree array) option
  9. | `Variant of string option * hash * tree option
  10. | `Int16 of int
  11. | `Float64 of float
  12. | `Unit
  13. | `Table of ((string option * hash * node_tag) array * tree array array) option
  14. | `Record of (string option * hash * tree) array
  15. | `Uvint of int
  16. | `String of string
  17. | `Shared of tree
  18. | `Int32 of Stdlib.Int32.t
]
val pp_tree : Ppx_deriving_runtime.Format.formatter -> tree -> Ppx_deriving_runtime.unit
val show_tree : tree -> Ppx_deriving_runtime.string
exception Could_not_convert of string * tree
val could_not_convert : string -> tree -> 'a
val unit_to_biniou : unit -> tree
val unit_of_biniou_exn : tree -> unit
val bool_to_biniou : bool -> tree
val bool_of_biniou_exn : tree -> bool
val char_to_biniou : char -> tree
val char_of_biniou_exn : tree -> char
val string_to_biniou : string -> tree
val string_of_biniou_exn : tree -> string
val int_to_biniou : int -> tree
val int_of_biniou_exn : tree -> int
val int32_to_biniou : int32 -> tree
val int32_of_biniou_exn : tree -> int32
val int64_to_biniou : int64 -> tree
val int64_of_biniou_exn : tree -> int64
val float_to_biniou : float -> tree
val float_of_biniou_exn : tree -> float
val option_to_biniou : ('a -> tree) -> 'a option -> tree
val option_of_biniou_exn : (tree -> 'a) -> tree -> 'a option
val result_to_biniou : ('a -> tree) -> ('e -> tree) -> ('a, 'e) Stdlib.result -> tree
val result_of_biniou_exn : (tree -> 'a) -> (tree -> 'a) -> tree -> ('a, 'a) Stdlib.result
val array_to_biniou : ('a -> tree) -> 'a array -> tree
val array_of_biniou_exn : (tree -> 'a) -> tree -> 'a array
val list_to_biniou : ('a -> tree) -> 'a list -> tree
val list_of_biniou_exn : (tree -> 'a) -> tree -> 'a list
val of_biniou_of_of_biniou_exn : (tree -> 'a) -> tree -> ('a, string * tree) Stdlib.result

Helper to make a pure of_biniou function based on an exception-raising of_biniou_exn function.

val record_find : name:string -> string -> (string option * hash * tree) array -> tree

Given the content of a Biniou record, look for the tree corresponding to the given string by comparing it to the hashes. If it isn't found, the name argument is used to raise Could_not_convert.