diff --git a/docs/Examples/examples.html b/docs/Examples/examples.html index bb81a8b..7c2266e 100644 --- a/docs/Examples/examples.html +++ b/docs/Examples/examples.html @@ -81,7 +81,7 @@ diff --git a/docs/Introduction/how_to_install.html b/docs/Introduction/how_to_install.html index f257dd3..ae5a446 100644 --- a/docs/Introduction/how_to_install.html +++ b/docs/Introduction/how_to_install.html @@ -81,7 +81,7 @@ diff --git a/docs/Introduction/how_to_use_the_library.html b/docs/Introduction/how_to_use_the_library.html index 256aaad..f9f9844 100644 --- a/docs/Introduction/how_to_use_the_library.html +++ b/docs/Introduction/how_to_use_the_library.html @@ -81,7 +81,7 @@ diff --git a/docs/Introduction/introduction.html b/docs/Introduction/introduction.html index e0c4894..7f41630 100644 --- a/docs/Introduction/introduction.html +++ b/docs/Introduction/introduction.html @@ -81,7 +81,7 @@ diff --git a/docs/Introduction/library_structure.html b/docs/Introduction/library_structure.html index bc3f2d7..d1fe146 100644 --- a/docs/Introduction/library_structure.html +++ b/docs/Introduction/library_structure.html @@ -81,7 +81,7 @@ diff --git a/docs/Introduction/understanding_the_library.html b/docs/Introduction/understanding_the_library.html index 85dbf67..b1592da 100644 --- a/docs/Introduction/understanding_the_library.html +++ b/docs/Introduction/understanding_the_library.html @@ -81,7 +81,7 @@ diff --git a/docs/Introduction/why_this_library.html b/docs/Introduction/why_this_library.html index 1700823..7cecd0e 100644 --- a/docs/Introduction/why_this_library.html +++ b/docs/Introduction/why_this_library.html @@ -81,7 +81,7 @@ diff --git a/docs/Overview/collections_overview.html b/docs/Overview/collections_overview.html index 73b6e29..e1d5257 100644 --- a/docs/Overview/collections_overview.html +++ b/docs/Overview/collections_overview.html @@ -81,7 +81,7 @@ diff --git a/docs/Overview/features_overview.html b/docs/Overview/features_overview.html index 49a6fd4..ef97ab4 100644 --- a/docs/Overview/features_overview.html +++ b/docs/Overview/features_overview.html @@ -81,7 +81,7 @@ diff --git a/docs/Overview/files_overview.html b/docs/Overview/files_overview.html index eb385bb..5b27dfc 100644 --- a/docs/Overview/files_overview.html +++ b/docs/Overview/files_overview.html @@ -81,7 +81,7 @@ diff --git a/docs/Overview/index.html b/docs/Overview/index.html index 228cdbc..5223846 100644 --- a/docs/Overview/index.html +++ b/docs/Overview/index.html @@ -81,7 +81,7 @@ diff --git a/docs/cmc/bitset.h/index.html b/docs/cmc/bitset.h/index.html new file mode 100644 index 0000000..9ff8806 --- /dev/null +++ b/docs/cmc/bitset.h/index.html @@ -0,0 +1,286 @@ + + + + + + bitset.h - C Macro Collections + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + + + +
+
+

bitset.h

+

A Bit Set is an array where each bit can be individually modified and queried by using bitwise operators such as |, &, ^, ~, >> and << (or, and, xor, not, right shift, left shift respectively).

+

BitSet Implementation

+

This BitSet implementation uses an array of type cmc_bitset_word which can be typedefed to any unsigned type such as uint8_t, uint16_t, uint32_t, uint64_t, size_t, etc. The BitSet does not make use of K or V. Because of that, it also doesn't have Functions Tables.

+

The BitSet is initialized with a custom capacity but, if a bit index accessed is greater than the total capacity, the BitSet will resize. This means that the BitSet will try to guarantee that every bit index is accessible, as long as there is enough memory.

+

BitSet Generation Macros

+
    +
  • CMC_GENERATE_BITSET(PFX, SNAME) - Generate full definition.
  • +
  • CMC_GENERATE_BITSET_HEADER(PFX, SNAME) - Generate only the header portion
  • +
  • CMC_GENERATE_BITSET_SOURCE(PFX, SNAME) - Generate only the source portion
  • +
+ + + +
ParameterDescription
PFXFunctions namespace or prefix
SNAMEStructure name
+

BitSet Structures

+ + + +
Declared structsDescription
struct SNAMEA bit set data structure
struct SNAME##_iterA bit set iterator
+

struct SNAME

+ + + + + + +
struct SNAMEDescription
cmc_bitset_word *bufferDynamic array of bits.
size_t capacityCurrent array capacity .
int flagFlag indicating errors or success.
struct cmc_alloc_node *allocCustom allocation functions.
struct cmc_callbacks *callbacksCallback functions.
+

struct SNAME##_iter

+ + + + + +
struct SNAME##_iterDescription
struct SNAME *targetBitSet being iterated over.
size_t cursorCursor's current position (index).
bool startIf the iterator reached the start of the iteration.
bool endIf the iterator reached the end of iteration.
+

cmc_bitset_word

+

The typedefed data type o the underlying bit set buffer.

+
typedef uint32_t cmc_bitset_word;
+
+

This typedef can be changed to any unsigned integer data type and the bit set will still work properly.

+

Callbacks

+

This list associates which functions calls which callbacks.

+
    +
  • create +
      +
    • PFX##_set()
    • +
    • PFX##_set_range()
    • +
    +
  • +
  • read
  • +
  • update
  • +
  • delete +
      +
    • PFX##_clear()
    • +
    • PFX##_clear_range()
    • +
    +
  • +
  • resize +
      +
    • PFX##_resize()
    • +
    +
  • +
+

Functions Table

+ + +
CMPCPYSTRFREEHASHPRI
#2ef625#2ef625#2ef625#2ef625#2ef625#2ef625
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/cmc/deque.h/functions.html b/docs/cmc/deque.h/functions.html index 8115175..f377e03 100644 --- a/docs/cmc/deque.h/functions.html +++ b/docs/cmc/deque.h/functions.html @@ -81,7 +81,7 @@ diff --git a/docs/cmc/deque.h/index.html b/docs/cmc/deque.h/index.html index 10f5a9d..e9bd034 100644 --- a/docs/cmc/deque.h/index.html +++ b/docs/cmc/deque.h/index.html @@ -81,7 +81,7 @@ @@ -231,7 +231,7 @@