Module Hardcaml.CombSource

Combinational logic API.

This includes standard arithmetic, logical, equality and comparision operators, as well as more hardware specific functions such as bit selection, concatention, multiplexing etc.

In operators, a trailing colon : indicates that the operator treats the bits as unsigned or that sign doesn't matter, while a trailing plus + indicates that the operator treats the bits as signed twos-complement.

Sourcemodule type Gates = sig ... end
Sourcemodule type Primitives = sig ... end
Sourcemodule type S = sig ... end
Sourcetype nonrec 'a optional_branching_factor = ?branching_factor:Base.int -> 'a
Sourcetype nonrec ('a, 'b) with_valid2 = {
  1. valid : 'a;
  2. value : 'b;
}
Sourcetype nonrec 'a with_valid = ('a, 'a) with_valid2
Sourcemodule Make (Primitives : Primitives) : S with type t = Primitives.t

Generates the full combinational API