Module Make.Of_bits

type 'a interface
type comb = Bits.t
type t = comb interface
val sexp_of_t : t -> Ppx_sexp_conv_lib.Sexp.t
val widths : t -> Hardcaml__.Import.int interface

Actual bit widths of each field.

val const : Hardcaml__.Import.int -> t

Each field is set to the constant integer value provided.

val consts : Hardcaml__.Import.int interface -> t

consts c sets each field to the integer value in c using the declared field bit width.

val pack : ?⁠rev:Hardcaml__.Import.bool -> t -> comb

Pack interface into a vector.

val unpack : ?⁠rev:Hardcaml__.Import.bool -> comb -> t

Unpack interface from a vector.

val mux : comb -> t Hardcaml__.Import.list -> t

Multiplex a list of interfaces.

val mux2 : comb -> t -> t -> t
val concat : t Hardcaml__.Import.list -> t

Concatenate a list of interfaces.