package containers-data

  1. Overview
  2. Docs
A set of advanced datatypes for containers

Install

Dune Dependency

Authors

Maintainers

Sources

v3.9.tar.gz
md5=c54431781906065ead3a089883f94726
sha512=8c954cb5ff01dc73a4e04ce2ef8fb5ad5162f16b2e4b2463501dd60c428d388c03c5b641c62b5876cd0d5ac5dc244d6a44d4d92a18525a03bdbf9cca82321272

doc/containers-data/CCBitField/index.html

Module CCBitFieldSource

Efficient Bit Field for up to 31 or 61 fiels

This module defines efficient bitfields up to 31 or 61 bits (depending on the architecture) in a relatively type-safe way.

  module B = CCBitField.Make(struct end);;

  let x = B.mk_field ()
  let y = B.mk_field ()
  let z = B.mk_field ()

  let f = B.empty |> B.set x true |> B.set y true;;

  assert (not (B.get z f)) ;;

  assert (f |> B.set z true |> B.get z);;
Sourceexception TooManyFields

Raised when too many fields are packed into one bitfield.

Sourceexception Frozen

Raised when a frozen bitfield is modified.

Sourceval max_width : int

System-dependent maximum width for a bitfield, typically 30 or 62.

Sourcemodule type S = sig ... end
Sourcemodule Make (_ : sig ... end) : S

Create a new bitfield type

OCaml

Innovation. Community. Security.