package containers-data

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

Install

dune-project
 Dependency

Authors

Maintainers

Sources

containers-3.17.tbz
sha256=0f70824867269c02bf01ae12206aa47a6f669d69f1954c19e68ece9f444f1cba
sha512=11de2d7b7173659e6b83c487ac116a93d4b780b86da07386e7604f8fd45f6841e93cba59dba59ed7dbf6e1bc26561202ae1d2e7238a12f588dfd557d4f2da589

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 () : S

Create a new bitfield type