Containers_codegen.Bitfield
val make : ?emit_failure_if_too_wide:bool -> name:string -> unit -> t
Make a new bitfield with the given name.
val field_bit : t -> string -> unit
field_bit ty name
adds a field of size 1
to the bitfield ty
, with name name
. The generate code will provide get/set for a boolean.
val field_int : t -> width:int -> string -> unit
field_int ty name ~width
adds a field of size width
to the bitfield with name name
. The accessors will be for integers of width
bits, and the setter might assert that the provided integer fits.
val total_width : t -> int
Total width in bits of the given bitfield.