package hardcaml_circuits

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
type comb = Hardcaml.Bits.t
type t = comb t
val sexp_of_t : comb t -> Sexplib0.Sexp.t
val assert_widths : comb t -> Base.unit

Raise if the widths of t do not match those specified in the interface.

val validate : comb t -> Base.unit

Checks the port widths of the signals in the interface. Raises if they mismatch.

val of_int : Base.int -> comb t

Each field is set to the constant integer value provided.

val pack : ?rev:Base.bool -> comb t -> comb

Pack interface into a vector.

val unpack : ?rev:Base.bool -> comb -> comb t

Unpack interface from a vector.

val mux : comb -> comb t Base.list -> comb t

Multiplex a list of interfaces.

val mux2 : comb -> comb t -> comb t -> comb t
val concat : comb t Base.list -> comb t

Concatenate a list of interfaces.

val priority_select_with_default : ((comb, comb t) Hardcaml.Comb.with_valid2 Base.list -> default:comb t -> comb t) Hardcaml.Comb.optional_branching_factor
val widths : t -> Base.int t

Actual bit widths of each field.

val of_ints : Base.int t -> t

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

OCaml

Innovation. Community. Security.