Module Make.Make_comb
Parameters
Signature
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 assert_widths : t -> Hardcaml__.Import.unit
Raise if the widths of
t
do not match those specified in the interface.
val of_int : Hardcaml__.Import.int -> t
Each field is set to the constant integer value provided.
val of_ints : Hardcaml__.Import.int interface -> t
consts c
sets each field to the integer value inc
using the declared field bit width.
val const : Hardcaml__.Import.int -> t
val consts : Hardcaml__.Import.int interface -> t
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.
val priority_select : ((comb, t) Hardcaml.With_valid.t2 Hardcaml__.Import.list -> (comb, t) Hardcaml.With_valid.t2) Hardcaml.Comb.optional_branching_factor
val priority_select_with_default : ((comb, t) Hardcaml.With_valid.t2 Hardcaml__.Import.list -> default:t -> t) Hardcaml.Comb.optional_branching_factor
val onehot_select : ((comb, t) Hardcaml.With_valid.t2 Hardcaml__.Import.list -> t) Hardcaml.Comb.optional_branching_factor