Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Adding some examples to the READMEHEADmaster | Katharina Fey | 2019-07-23 | 1 | -0/+33 |
| | |||||
* | Switching default build to C99 | Katharina Fey | 2019-07-23 | 1 | -7/+13 |
| | |||||
* | Changing README to markdown and adding a build badge | Katharina Fey | 2019-07-21 | 2 | -33/+40 |
| | |||||
* | Adding a CI manifest | Katharina Fey | 2019-07-21 | 1 | -0/+11 |
| | |||||
* | Fixing a memory allocation regression | Katharina Fey | 2019-07-15 | 1 | -1/+2 |
| | | | | | | | | | | In a previous commit, adding HASH node support, this code was added that would let both ARRAY and HASH nodes allocate an array. The syntax was however wrong, never allocating memory and thus failing with an INVALID_STATE when freeing. Additionally, this begs the question how a cleanup of INVALID_STATE could be handled (i.e. with a `goto fail` in the `bowl_free` function) | ||||
* | Updating README with sr.ht issue tracker | Katharina Fey | 2019-07-14 | 1 | -0/+2 |
| | |||||
* | Various improvements around HASH nodes | Katharina Fey | 2019-07-14 | 6 | -14/+71 |
| | | | | | | | | | | | | | | | The example previously would lead to corrupt memory when running for items that needed to re-hash the hash array. This has been fixed. Secondly, all HASH node memory leaks are now fixed, that resulted from badly tracking objects through the resize process. A new function `hash_free_shallow` was added to help with this. The function `array_free_shallow` is unused but might become useful in the future and so was not removed. The hash strategy is still garbage but this can be fixed later :) | ||||
* | Adding a hashmap example | Katharina Fey | 2019-07-14 | 2 | -4/+30 |
| | |||||
* | Implementing HASH node `remove_key` function | Katharina Fey | 2019-07-14 | 3 | -2/+30 |
| | |||||
* | Adjusting gitignore to capture in-source cmake artefacts | Katharina Fey | 2019-07-14 | 1 | -2/+63 |
| | |||||
* | Fixing simple HASH node memory leak | Katharina Fey | 2019-07-13 | 1 | -1/+1 |
| | |||||
* | Conditionally compiling example binaries | Katharina Fey | 2019-07-13 | 1 | -4/+8 |
| | |||||
* | Adding initial support for HASH nodes | Katharina Fey | 2019-07-13 | 9 | -25/+198 |
| | | | | | | | | | | | | | | | | 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. | ||||
* | Restructuring the main API and project | Katharina Fey | 2019-06-09 | 13 | -1200/+512 |
| | | | | | | | | | 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. | ||||
* | Changing library name and project structure | Katharina Fey | 2019-06-04 | 11 | -1254/+140 |
| | |||||
* | Updating some formatting issues in the README | Katharina Fey | 2019-06-04 | 1 | -5/+9 |
| | |||||
* | Adding support for list roots: | Katharina Fey | 2019-06-04 | 1 | -4/+22 |
| | | | | | | | | | | | | [{'id': 5, ...}, {'id': 6, ...}] Which results in [LIST] [PAIR] <==> ['id'] => [5] ... structures. Advanced json parsing support is still experimental! | ||||
* | Added support for array parsing | Katharina Fey | 2019-06-04 | 1 | -33/+79 |
| | |||||
* | Fixed an issue where printing boolean values in a tree wouldn't work | Katharina Fey | 2019-06-04 | 1 | -1/+1 |
| | |||||
* | Adding boolean support to the json parser | Katharina Fey | 2019-06-04 | 1 | -0/+4 |
| | |||||
* | Adding support for boolean nodes as well as long long supports via compile ↵ | Katharina Fey | 2019-06-04 | 2 | -8/+58 |
| | | | | options | ||||
* | Fixing a few parser issues that prevented it from working properly. Includes: | Katharina Fey | 2019-06-04 | 2 | -8/+15 |
| | | | | | | - Now NULL terminates all inputs pre-emptively - Can now properly parse numerical values - Calculates heap memory field size for tokens arrayproperly | ||||
* | Updating the dtree API to contain a boolean value and be comfigurable to ↵ | Katharina Fey | 2019-06-04 | 1 | -6/+18 |
| | | | | support long long numerals | ||||
* | Impementing a functional json parser on top of the tokeniser | Katharina Fey | 2019-06-04 | 3 | -245/+361 |
| | |||||
* | Fixing a bug where parent searches were always false | Katharina Fey | 2019-06-04 | 1 | -1/+1 |
| | |||||
* | Changing parser API slightly and adding compile support to build system | Katharina Fey | 2019-06-04 | 2 | -2/+5 |
| | |||||
* | Adding a static copy of the jasmine json tokeniser | Katharina Fey | 2019-06-04 | 2 | -0/+437 |
| | |||||
* | Adding work-in-progress new json parser | Katharina Fey | 2019-06-04 | 2 | -365/+86 |
| | |||||
* | Adding new function that gets the parent of a current node in a recursive ↵ | Katharina Fey | 2019-06-04 | 3 | -0/+55 |
| | | | | structure | ||||
* | Updating lots of code to make finalisation of vault creations easier | Katharina Fey | 2019-06-04 | 1 | -1/+1 |
| | |||||
* | Updating the examples a little | Katharina Fey | 2019-06-04 | 2 | -56/+12 |
| | |||||
* | Adding new recursive key search function | Katharina Fey | 2019-06-04 | 1 | -0/+75 |
| | |||||
* | Adding new error return for limited recursive queries | Katharina Fey | 2019-06-04 | 1 | -0/+1 |
| | |||||
* | Cleaning up json encoder and decoder | Katharina Fey | 2019-06-04 | 1 | -48/+17 |
| | | | | | - Removing the requirement to set an encoder setting - Only supporting minified json (for now) | ||||
* | - Fixing an issue where the list malloc was of size 0 | Katharina Fey | 2019-06-04 | 1 | -4/+5 |
| | | | | | - Now properly cleaning payload space after type reset - Minor tweaks and improvements | ||||
* | No longer allow to free shallow copies of nodes | Katharina Fey | 2019-06-04 | 1 | -1/+3 |
| | |||||
* | Adding a new error code and commenting the existing ones :) | Katharina Fey | 2019-06-04 | 1 | -5/+6 |
| | |||||
* | First version of the "eztree" api. It provides more straight-forward ways to ↵ | Katharina Fey | 2019-06-04 | 3 | -57/+116 |
| | | | | | | use libdyntree (in a less safe way however!) eztree_* functions do not provide error chec | ||||
* | Fixing some errors and finishing more refactoring | Katharina Fey | 2019-06-04 | 2 | -54/+53 |
| | |||||
* | Moving utility functions into new file with a new API namespace | Katharina Fey | 2019-06-04 | 4 | -141/+148 |
| | |||||
* | Adding the ability to copy nodes in shallow or deep mode | Katharina Fey | 2019-06-04 | 2 | -13/+93 |
| | |||||
* | API refactor part 3: Recursive elements are now called "List" elements, ↵ | Katharina Fey | 2019-06-04 | 3 | -34/+34 |
| | | | | Numeral elements are now called "Numeric" elements. | ||||
* | Cleaning up the json decoder. | Katharina Fey | 2019-06-04 | 2 | -185/+201 |
| | | | | Fixing an error in the print function which would sometimes yield incorrect results | ||||
* | More API changes deep_copy is now copy_deep | Katharina Fey | 2019-06-04 | 2 | -2/+2 |
| | |||||
* | Updating API part 2 | Katharina Fey | 2019-06-04 | 3 | -32/+46 |
| | |||||
* | API Changes. | Katharina Fey | 2019-06-04 | 2 | -10/+103 |
| | | | | | | | - 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 | ||||
* | Update README.md | Katharina Fey | 2019-06-04 | 1 | -1/+1 |
| | |||||
* | Updating README | Katharina Fey | 2019-06-04 | 2 | -318/+703 |
| | |||||
* | Updating banner picture | Katharina Fey | 2016-08-23 | 0 | -0/+0 |
| | |||||
* | Adding an awesome (ish) banner | Katharina Fey | 2016-08-23 | 0 | -0/+0 |
| |