Code Review / Suggestions Wanted Prior To Crate Release

Hi all. I'm coming near to completing my first crate (not published yet as it's not quite complete) and if possible, I'd like someone (or a few folk!) to look over it, give it a review, and maybe express a few thoughts re the API it provides, how it provides it, and if it could provide any other functionality I've not already thought of. The README is still a little bare, but there are documentation tests for all the public calls (a particularly simple example can be found at "/core/mod.rs") that should make clear the functionality I'm trying to provide. All the unit and documentation tests currently pass.

Just to give a little background, for an unrelated project I needed the ability to search json using the Json Path specification (see JSONPath -- XPath for JSON) specifically retaining ownership of the serde_json::Value, providing the filter functionality mentioned in the specification above, and doing so with some means to provide mutable access to references. All the existing crates I found couldn't do all of these in one place, and as such I decided I'd have to roll my own. In doing so, I stumbled upon the additional functionality re serde::Deseralize and serde::DeseralizeOwned, really. I didn't need that per se, just figured it seemed quite cool!

Please note it is a work in progress, and I know the parser in particular isn't really tested much and needs work to finish it off. (There are TODOs to that effect.) But I just wanted to canvass opinion/suggestions now so I don't end up modifying stuff later and having to rewrite a load of tests/examples etc too.

The GitLab repo is here: https://gitlab.com/mikey_pooh/jpath.

All comments very much appreciated. Thanks in advance.

P.S. Any football fans out there, please don't take offence if your team lost in my made up results! :slight_smile:

This topic was automatically closed 90 days after the last reply. We invite you to open a new topic if you have further questions or comments.