Skip to content

Commit d07fd21

Browse files
authored
Merge pull request #178 from orxfun/make-NodeIdx-Send
Make node idx send
2 parents 3546ebb + 4123122 commit d07fd21

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

62 files changed

+1095
-1048
lines changed

Cargo.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "orx-tree"
3-
version = "1.11.0"
3+
version = "2.0.0"
44
edition = "2024"
55
authors = ["orxfun <orx.ugur.arikan@gmail.com>"]
66
description = "A beautiful tree 🌳 with convenient, efficient, parallelizable growth, mutation and traversal features."
@@ -17,7 +17,7 @@ orx-self-or = "1.2.0"
1717
serde = { version = "1.0.228", optional = true, default-features = false }
1818
orx-pinned-vec = { version = "3.21.0", default-features = false }
1919
orx-split-vec = { version = "3.22.0", default-features = false }
20-
orx-selfref-col = { version = "2.15.0", default-features = false }
20+
orx-selfref-col = { version = "3.0.0", default-features = false }
2121
orx-concurrent-iter = { version = "3.1.0", default-features = false }
2222
orx-parallel = { version = "3.3.0", default-features = false, optional = true }
2323

README.md

Lines changed: 65 additions & 65 deletions
Large diffs are not rendered by default.

benches/children_iterator.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ fn build_tree(n: usize) -> DynTree<String> {
99
while tree.len() < n {
1010
let root = tree.root();
1111
let x: Vec<_> = root.leaves_with(&mut dfs).map(|x| x.idx()).collect();
12-
for idx in x.iter() {
12+
for idx in x {
1313
let count = tree.len();
1414
let mut node = tree.node_mut(idx);
1515
let num_children = 4;

benches/parallelization_owned.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ fn build_tree(n: usize) -> DynTree<String> {
1010
while tree.len() < n {
1111
let root = tree.root();
1212
let x: Vec<_> = root.leaves_with(&mut dfs).map(|x| x.idx()).collect();
13-
for idx in x.iter() {
13+
for idx in x {
1414
let count = tree.len();
1515
let mut node = tree.node_mut(idx);
1616
let num_children = 20;

benches/parallelization_ref.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ fn build_tree(n: usize) -> DynTree<String> {
1010
while tree.len() < n {
1111
let root = tree.root();
1212
let x: Vec<_> = root.leaves_with(&mut dfs).map(|x| x.idx()).collect();
13-
for idx in x.iter() {
13+
for idx in x {
1414
let count = tree.len();
1515
let mut node = tree.node_mut(idx);
1616
let num_children = 20;

benches/paths_iterator.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ fn build_tree(n: usize) -> DynTree<String> {
1010
while tree.len() < n {
1111
let root = tree.root();
1212
let x: Vec<_> = root.leaves_with(&mut dfs).map(|x| x.idx()).collect();
13-
for idx in x.iter() {
13+
for idx in x {
1414
let count = tree.len();
1515
let mut node = tree.node_mut(idx);
1616
let num_children = 4;

benches/walk_iterator.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ fn build_tree(n: usize) -> DynTree<String> {
1010
while tree.len() < n {
1111
let root = tree.root();
1212
let x: Vec<_> = root.leaves_with(&mut dfs).map(|x| x.idx()).collect();
13-
for idx in x.iter() {
13+
for idx in x {
1414
let count = tree.len();
1515
let mut node = tree.node_mut(idx);
1616
let num_children = 10;

examples/bench_parallelization.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ fn build_tree(total_depth: usize) -> DaryTree<4, usize> {
3939
let leaves: Vec<_> = root.leaves_with(&mut dfs).map(|x| x.idx()).collect();
4040
for idx in leaves {
4141
let count = tree.len();
42-
let mut node = tree.node_mut(&idx);
42+
let mut node = tree.node_mut(idx);
4343
for j in 0..4 {
4444
node.push_child(count + j);
4545
}

examples/demo_parallelization.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ fn build_tree(total_depth: usize, num_children: usize) -> DynTree<String> {
1111
let leaves: Vec<_> = root.leaves_with(&mut dfs).map(|x| x.idx()).collect();
1212
for idx in leaves {
1313
let count = tree.len();
14-
let mut node = tree.node_mut(&idx);
14+
let mut node = tree.node_mut(idx);
1515
for j in 0..num_children {
1616
node.push_child((count + j).to_string());
1717
}

examples/mutable_recursive_traversal.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -71,9 +71,9 @@ impl Instructions {
7171
InstructionNode::new(Instruction::AddI { val: 2.0 }, 0.0),
7272
]);
7373
let _n3 = tree
74-
.node_mut(&n1)
74+
.node_mut(n1)
7575
.push_child(InstructionNode::new(Instruction::Input(0), 0.0));
76-
let [_n4, _n5] = tree.node_mut(&n2).push_children([
76+
let [_n4, _n5] = tree.node_mut(n2).push_children([
7777
InstructionNode::new(Instruction::Add, 0.0),
7878
InstructionNode::new(Instruction::AddI { val: 5.0 }, 0.0),
7979
]);
@@ -153,15 +153,15 @@ fn recursive_traversal_over_indices(
153153
inputs: &[f32],
154154
node_idx: NodeIdx<Dyn<InstructionNode>>,
155155
) -> f32 {
156-
let node = tree.node(&node_idx);
156+
let node = tree.node(node_idx);
157157

158158
let children_ids: Vec<_> = node.children().map(|child| child.idx()).collect();
159159
let children: Vec<_> = children_ids
160160
.into_iter()
161161
.map(|node| recursive_traversal_over_indices(tree, inputs, node))
162162
.collect();
163163

164-
let mut node = tree.node_mut(&node_idx);
164+
let mut node = tree.node_mut(node_idx);
165165

166166
let new_value = match node.data().instruction {
167167
Instruction::Input(i) => inputs[i],

0 commit comments

Comments
 (0)