An implementation of the rose tree (aka multi-way tree) data structure for Rust.
An indexable tree data structure with a variable and unbounded number of branches per node.
It is Implemented on top of petgraph's Graph data structure and attempts to follow similar conventions where suitable.
_.-"""""'.
.;__ `\
/ `\ |
;a/ a `'. _ |
,_ |/_ _) / .-.-.
{(}`\ \.___, \.' | |
'--''-.( \_ _ / \ /
.-\_ _."-.... ;_ ` .-.-.
_/ '--. \ | |
."\ _/\ , | \ /
/ \_.' /'./ ; `
\__.' '-./ ' /
__/ `\ /
.' ``""--..__\___/
/ |
| , |
\ ';_ /
\ \`'-...-'
\ \ | __
\ \ /-----; '.
.--\_.-"\ | \
/ |._______|\ \
\_____,__/ '.__|
Please see the tests directory for some basic usage examples.
Use rose_tree in your project by adding it to your Cargo.toml dependencies like so:
[dependencies]
rose_tree = "*"
and then adding
extern crate rose_tree;
to your lib.rs.
Dual-licensed to be compatible with the petgraph and Rust projects.
Licensed under the Apache License, Version 2.0 http://www.apache.org/licenses/LICENSE-2.0 or the MIT license http://opensource.org/licenses/MIT, at your option. This file may not be copied, modified, or distributed except according to those terms.