- Implement list_set operation
- Split main header file in two: abstractions and implementations
- Add graph_size function
- Graph modules now use status_t to report operation status
- List modules now use status_t to report operation status
- Add constants module with initial constant definitions for libds
- Refactor graph API
- Graph module now represents labeled graphs
- Rename graph parameter on graph functions
- Add directed and undirected graph implementations using adjacency lists and adjacency matrix
- Add priority queue interface and implementation using a heap
- Add map implementation: closed hash table
- Dynamically sized open hash table
- Add map implementation: open hash table
- Add map interface
- Add indent as formatter and set a make target to format code
- Change uint8_t and int8_t types to standard int types
- Fix linked list set destroy
- Add linked list set implementation
- Implement length and is_empty on bit vector sets
- Use const when needed in all data structures
- Add set interface header
- Add set tests
- Add bit_vector implementation of basic interface
- Add makefile rules to build the library
- Call destroy function at the end of all tests
- Add list append and prepend test
- Fix bug in linked list insert in position 0
- Added data structures interfaces for list, stack and queue
- Improved testing with CUnit, now all the project is tested under multiple test suites using one executable
- Added static and dynamic queues
- Added static and dynamic stacks
- libds dev started :)
- Added Makefile
- Added array_list, linked_list and doubly_linked_list