aboutsummaryrefslogtreecommitdiff
path: root/bowl.h (unfollow)
Commit message (Collapse)AuthorFilesLines
2019-07-14Implementing HASH node `remove_key` functionKatharina Fey1-1/+4
2019-07-13Adding initial support for HASH nodesKatharina Fey1-8/+11
This PR adds initial support for HASH data nodes in libbowl. This allows a performant key-value store lookup in a node tree. The hashing code implements the "murmur" hash, which has shown good performance over at [`libcuckoo`]. Currently there is no extended hashing strategy, which should definitely be changed. [`libcuckoo`]: https://github.com/qaul/libcuckoo (currently a collision will cause a recursive re-alloc) Some of the type-level hacks also begs the question if a PAIR data node might be warranted, even though it would break the simple design around bowl->data.
2019-06-09Restructuring the main API and projectKatharina Fey1-347/+66
This commit rewrites pretty much the entire library. It is now much smaller and more maintainable (split over multiple files). It will now also support more features (that aren't implemented yet). Adding two examples to show how to use the new API. Also changing the name of the library everywhere.
2019-06-04Changing library name and project structureKatharina Fey1-45/+45
2019-06-04Adding support for boolean nodes as well as long long supports via compile ↵Katharina Fey1-2/+3
options
2019-06-04Updating the dtree API to contain a boolean value and be comfigurable to ↵Katharina Fey1-6/+18
support long long numerals
2019-06-04Changing parser API slightly and adding compile support to build systemKatharina Fey1-1/+1
2019-06-04Adding new function that gets the parent of a current node in a recursive ↵Katharina Fey1-0/+13
structure
2019-06-04Adding new error return for limited recursive queriesKatharina Fey1-0/+1
2019-06-04Adding a new error code and commenting the existing ones :)Katharina Fey1-5/+6
2019-06-04Moving utility functions into new file with a new API namespaceKatharina Fey1-89/+9
2019-06-04Adding the ability to copy nodes in shallow or deep modeKatharina Fey1-3/+19
2019-06-04API refactor part 3: Recursive elements are now called "List" elements, ↵Katharina Fey1-1/+1
Numeral elements are now called "Numeric" elements.
2019-06-04More API changes deep_copy is now copy_deepKatharina Fey1-1/+1
2019-06-04API Changes.Katharina Fey1-6/+38
- Renaming the recursive field to "list" functions - Renaming main file to dtree for less confusion - Allowing for long values to be stored - not just integers - Adjusting quick access functions to use new API
2016-08-23Adding some helper functionsKatharina Fey1-0/+79
2016-08-22First release candidate for version 1.0Katharina Fey1-1/+1
- Adding preliminary json encode functionality - Adding new executable with test functions Code needs further testing but should be functional.
2016-08-21Adding recursive search functionKatharina Fey1-2/+16
2016-08-21Adding split and merge featuresKatharina Fey1-4/+6
2016-08-21Adding new functions to APIKatharina Fey1-1/+106
- Encode a dyntree object hirarchy into json - Decode a json string to a dyntree object hirarchy - Split a tree in two (no longer related) sub-trees - Merge two non-related subtrees together
2016-07-30Changing the APi slightly and adding better comments for the api functions.Katharina Fey1-10/+115
- Also adding the ability to store custom pointers in a node
2016-07-30Initial commit of the libraryKatharina Fey1-0/+77