-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
So, several of us have been working on a relations feature for Bevy: first-class support for those sort of "target another entity with a component" patterns that keep cropping up. There's a lot to be done, and it's at a point where it can be chunked out, so if you're interested in helping out come say hi on Discord :)
In its current form, it would probably help make your code prettier, but won't solve your borrow checker woes. In order to do that directly, we'd need a borrow-checker-aware version of an advanced feature that I'd like to add onto relations later: "graph invariants". This would allow users to pick and choose properties of the graph (specific to each relation type) that they promise to never break, which is then enforced by the engine. Commonly, this would be "this graph has no cycles" or "this graph is a tree", but in your case it would just be "no node has an edge to itself".