# Module Std_kernel.Heap_block

    module Heap_block: Heap_block

    type 'a t = private 'a

    val create : 'a -> 'a t option

`create v` returns `Some t` if `v` is a heap block, where `t` is physically equal to `v`

    val create_exn : 'a -> 'a t

    val value : 'a t -> 'a

`value t` returns the value that is physically equal to `t`

    val bytes : 'a t -> int

`bytes t` returns the number of bytes on the heap taken by heap block `t`, including the header. This is just the space for the single block, not anything it points to.

    val sexp_of_t : ('a -> Sexplib.Sexp.t) -> 'a t -> Sexplib.Sexp.t

`create v` returns `Some t` if `v` is a heap block, where `t` is physically equal to `v`
`value t` returns the value that is physically equal to `t`
`bytes t` returns the number of bytes on the heap taken by heap block `t`, including the header. This is just the space for the single block, not anything it points to.