Commit Graph

11 Commits

Author SHA1 Message Date
Bailey Thompson
48b0751b6c Stub malloc toggle (#69) 2020-08-07 16:57:41 -04:00
Bailey Thompson
eb4f8fb1ae Fix test warnings (#62) 2020-08-06 23:18:24 -04:00
Bailey Thompson
4332c05e0b Add compilation documentation (#36)
Add documentation for how to compile dynamic and static libraries.
2019-05-08 04:33:25 -04:00
Bailey Thompson
e2d596e4bd Refactor tests (#31)
Refactor tests in order for the component or logic that they are testing to be contained into individual sub-tests instead of all tests being contained in one big test for the whole data structure.

Add testing for out-of-memory (OOM) conditions. This makes the source code now 100% covered.

Bug fix! A bug has been identified and fixed in the list data structure in the list_add_last function. This bug would occur when adding an item to the back of the list because the pointers were not being updated properly.

Minor Bug fix! A bug has been identified and fixed in the unordered_set, unordered_map, unordered_multiset, and unordered_multimap data structures in their respective unordered_xxx_put functions. This bug would occur in an out-of-memory condition, which would cause the size of the collection to increase without actually adding the new element to it.
2019-05-04 17:59:20 -04:00
Bailey Thompson
24ca9d9d9b Make c89 compatible (#27) 2019-05-02 19:34:27 -04:00
Bailey Thompson
5fe6b40c3e Make c90 compatible (#26) 2019-05-02 14:49:36 -04:00
Bailey Thompson
20e8839143 Add more testing (#23)
Increase code coverage so that other than the out-of-memory conditions, the code is entirely covered.

Some areas of the code have been tweaked for performance optimizations.

Bug fix! A bug has been identified and fixed in the unordered_multiset data structure in the unordered_multiset_remove_all function.

This bug would occur when more than one entry exists in the bucket in which the element is occupying, and that element had a count of more than one.
2019-04-30 23:22:36 -04:00
Bailey Thompson
c51bdfefef Remove leading underscore from some identifiers
From the C standard, section 7.1.3:
 - All identifiers that begin with an underscore and either an uppercase letter or another underscore are always reserved for any use.
 - All identifiers that begin with an underscore are always reserved for use as identifiers with file scope in both the ordinary and tag name spaces.

The internal struct which defines each container used to start with an underscore followed by a lower case letter. The leading underscore for those identifiers have been replaced in order to prevent undefined behaviour.
2018-01-11 20:01:08 -05:00
Bailey Thompson
bd73635e02 Improve variable names in test cases 2018-01-03 00:45:33 -05:00
Bailey Thompson
7b18182e47 Add function to vector and array to get data
Add a function "get_data" to vector and array which lets the user access the data pointer which the vector and array operate on.
2018-01-01 18:42:30 -05:00
Bailey Thompson
bcfa6bb4ce Add priority_queue 2018-01-01 18:06:13 -05:00