Document not found (404)
+This URL is invalid, sorry. Please use the navigation bar or search to continue.
+ +diff --git a/CHANGELOG b/CHANGELOG
index 35b0c76..fad62b7 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,5 +1,8 @@
# RELEASE.MAJOR.MINOR
+0.26.0
+ Complete refactor of the library, using a different approach to code generation
+
0.25.0
New Project Architecture - Files are no longer separated in folders, but rather prefixed by their sub-library
Added sac_list.h
diff --git a/Makefile b/Makefile
index e186b52..0538ea0 100644
--- a/Makefile
+++ b/Makefile
@@ -3,7 +3,11 @@ help:
@echo Welcome to the C Macro Collections Library. Targets:
@echo
@echo - tests: run tests
+ @echo - tests_dev: run tests for dev
@echo - format: formats the entire project
+ @echo - bench: runs benchmarks
+ @echo - docbuild: builds documentation to ./docs
+ @echo - docserve: serves mdbook docs
tests:
make -C ./tests
@@ -16,3 +20,9 @@ format:
bench:
make -C ./benchmarks benchmark
+
+docbuild:
+ mdbook build -d ../docs documentation
+
+docserve:
+ mdbook serve documentation
diff --git a/README.md b/README.md
index b7d93d4..8d1456d 100644
--- a/README.md
+++ b/README.md
@@ -4,7 +4,7 @@
Easy to use, modular, header only, macro based, generic and type-safe Data Structures in C.
+Easy to use, modular, header only, macro based, generic and type-safe Data Structures in C
## Table of Contents @@ -130,27 +130,10 @@ The C Macro Collections library is organized into many other sub-libraries. The | CMC | Macro Collections | The main library with dynamically-sized collections | | COR | Core | Core functionalities used by more than one collection, usually from different sub-libraries | | EXT | Extensions | Extension to collections | -| INT | Integrations | Macros that facilitate the creation of code that involves more than one type of collection | | SAC | Statically Allocated Collections | Collections with a fixed sized array that don't use any heap allocation | | TSC | Thread-Safe Collections | Collections that allow multiple operations from multiple threads | | UTL | Utilities | General utilities | -Every macro that generates code for a certain collection can be found with the following template. Some exceptions exist as certain collections don't have or can't have some features. One big example is the `UTL` library, which does not follow this pattern. - -``` -macro_name := CMC_[ lib ]_[ collection ]_[ part ]_[ access ]_[ file ] - -lib := CMC | COR | DEV | EXT | INT | SAC | TSC -collection := BITSET | DEQUE | HASHBIDIMAP | ... | TREEMULTISET | TREESET -part := CORE | ITER | INIT | ... | SETF | NODE -access := PUBLIC | PRIVATE -file := HEADER | SOURCE -``` - -__Some `collection`s might not be present in a certain `lib`. Check the documentation.__ - -Every macro is suffixed by `CMC` and each section is separated by an underscore (`_`). The first section is the library (`lib`). The second is the collection name in all uppercase. Then the `part` (or which module) that you wish to generate. And last, if it is code that should belong to a header file or code that should belong to a source file. - ## Project Structure * __benchmarks__ - Where all benchmarks are hosted diff --git a/TODO b/TODO index 14aad19..834d726 100644 --- a/TODO +++ b/TODO @@ -13,14 +13,11 @@ Check out CHANGELOG #!! Next Patch ----------------------------------------------------------------- -[ ] Fix BitSet, using capacity vs. counter -[ ] #12 - Fix the collections that depend on ITER #!! Major ---------------------------------------------------------------------- [ ] Stabilize the library -[ ] Add INT library [ ] Add SAC library [ ] Add TSC library [ ] Separate inner Data Structure implementation from the Collection's one @@ -31,8 +28,8 @@ Check out CHANGELOG #!! Minor ---------------------------------------------------------------------- +[ ] Fix BitSet, using capacity vs. counter [ ] #13 - Properly implement HashBidiMap iterator -[ ] #10 - Fix Benchmarks and Examples [ ] More SortedList functions [ ] BidiMap's _is_mapping() to check if a mapping K <=> V exists [ ] New asserts - _array_int(), _array_not_in() and str @@ -103,3 +100,5 @@ Check out CHANGELOG [X] Replace IntervalHeap node by a simple buffer of two pointers (V (*buffer)[2]) [X] PUBLIC and PRIVATE is back (opaque data structures) [X] Add EXT library +[X] #12 - Fix the collections that depend on ITER +[X] #10 - Fix Benchmarks and Examples diff --git a/docs/.gitignore b/docs/.gitignore deleted file mode 100644 index e9c0728..0000000 --- a/docs/.gitignore +++ /dev/null @@ -1 +0,0 @@ -book \ No newline at end of file diff --git a/docs/.nojekyll b/docs/.nojekyll index 8631215..f173110 100644 --- a/docs/.nojekyll +++ b/docs/.nojekyll @@ -1 +1 @@ -This file makes sure that Github Pages doesn't process mdBook's output. \ No newline at end of file +This file makes sure that Github Pages doesn't process mdBook's output. diff --git a/docs/404.html b/docs/404.html new file mode 100644 index 0000000..d292a60 --- /dev/null +++ b/docs/404.html @@ -0,0 +1,187 @@ + + + + + +This URL is invalid, sorry. Please use the navigation bar or search to continue.
+ +