Our great sponsors
-
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.
The probably most well thought out approach for handling complicated mutable trees (with parent-references) in Rust is Rowan with red/green nodes as popularized by the Roslyn project, though its particular implementation has a few rough edges (doesn't use the type system to denote whether a node is mutable or not). The core idea is to have "green nodes" that form an ordinary immutable tree to store actual data, and on-demand "red nodes" that serve as a kind of cursor and offer a richer view, for example tracking parent–child relationships as the tree is traversed.