Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Some work to be done on the performance side of things.
Assuming that due to moving the data out of the node, our cache locality is worse. Plus now we need a hashmap lookup per match.
Instead of a hashmap, we could use a vec + index approach.
But would make updates/deletes painful.
We could just change NodeData into an enum?
EDIT: Yes, much better. Happy to take a 5% hit for this, down from 20%.
We still need to actually disconnect the end-node -> data relationship. Right now, we've just moved it elsewhere.
EDIT: Also, should ensure we use constant terms. I've mixed up path and route multiple times in the docs.
This is only really a 'part 1'.
We'll flesh out the finer details as part of the optional params support.