Skip to content
This repository has been archived by the owner on May 11, 2023. It is now read-only.

Commit

Permalink
cargo clippy lints
Browse files Browse the repository at this point in the history
  • Loading branch information
rakita committed Jun 20, 2022
1 parent 2d3a8a7 commit e0f58a9
Show file tree
Hide file tree
Showing 10 changed files with 141 additions and 130 deletions.
66 changes: 33 additions & 33 deletions src/binary/merkle_tree.rs
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ where
proof_index: u64,
) -> Result<(Bytes32, ProofSet), MerkleTreeError<StorageError>> {
if proof_index + 1 > self.leaves_count {
return Err(MerkleTreeError::InvalidProofIndex(proof_index).into());
return Err(MerkleTreeError::InvalidProofIndex(proof_index));
}

let mut proof_set = ProofSet::new();
Expand Down Expand Up @@ -224,13 +224,13 @@ mod test {
// 00 02 04 06 08 10 12
// 00 01 02 03 04 05 06

let leaf_0 = leaf_sum(&data[0]);
let leaf_1 = leaf_sum(&data[1]);
let leaf_2 = leaf_sum(&data[2]);
let leaf_3 = leaf_sum(&data[3]);
let leaf_4 = leaf_sum(&data[4]);
let leaf_5 = leaf_sum(&data[5]);
let leaf_6 = leaf_sum(&data[6]);
let leaf_0 = leaf_sum(data[0]);
let leaf_1 = leaf_sum(data[1]);
let leaf_2 = leaf_sum(data[2]);
let leaf_3 = leaf_sum(data[3]);
let leaf_4 = leaf_sum(data[4]);
let leaf_5 = leaf_sum(data[5]);
let leaf_6 = leaf_sum(data[6]);
let node_1 = node_sum(&leaf_0, &leaf_1);
let node_5 = node_sum(&leaf_2, &leaf_3);
let node_3 = node_sum(&node_1, &node_5);
Expand Down Expand Up @@ -321,7 +321,7 @@ mod test {
let _ = tree.push(datum);
}

let leaf_0 = leaf_sum(&data[0]);
let leaf_0 = leaf_sum(data[0]);

let root = tree.root().unwrap();
assert_eq!(root, leaf_0);
Expand Down Expand Up @@ -352,13 +352,13 @@ mod test {
// 00 02 04 06 08 10 12
// 00 01 02 03 04 05 06

let leaf_0 = leaf_sum(&data[0]);
let leaf_1 = leaf_sum(&data[1]);
let leaf_2 = leaf_sum(&data[2]);
let leaf_3 = leaf_sum(&data[3]);
let leaf_4 = leaf_sum(&data[4]);
let leaf_5 = leaf_sum(&data[5]);
let leaf_6 = leaf_sum(&data[6]);
let leaf_0 = leaf_sum(data[0]);
let leaf_1 = leaf_sum(data[1]);
let leaf_2 = leaf_sum(data[2]);
let leaf_3 = leaf_sum(data[3]);
let leaf_4 = leaf_sum(data[4]);
let leaf_5 = leaf_sum(data[5]);
let leaf_6 = leaf_sum(data[6]);

let node_1 = node_sum(&leaf_0, &leaf_1);
let node_5 = node_sum(&leaf_2, &leaf_3);
Expand Down Expand Up @@ -404,7 +404,7 @@ mod test {
let _ = tree.push(datum);
}

let leaf_0 = leaf_sum(&data[0]);
let leaf_0 = leaf_sum(data[0]);

{
let proof = tree.prove(0).unwrap();
Expand Down Expand Up @@ -434,10 +434,10 @@ mod test {
// 00 02 04 06
// 00 01 02 03

let leaf_0 = leaf_sum(&data[0]);
let leaf_1 = leaf_sum(&data[1]);
let leaf_2 = leaf_sum(&data[2]);
let leaf_3 = leaf_sum(&data[3]);
let leaf_0 = leaf_sum(data[0]);
let leaf_1 = leaf_sum(data[1]);
let leaf_2 = leaf_sum(data[2]);
let leaf_3 = leaf_sum(data[3]);

let node_1 = node_sum(&leaf_0, &leaf_1);
let node_5 = node_sum(&leaf_2, &leaf_3);
Expand Down Expand Up @@ -506,11 +506,11 @@ mod test {
// 00 02 04 06 08
// 00 01 02 03 04

let leaf_0 = leaf_sum(&data[0]);
let leaf_1 = leaf_sum(&data[1]);
let leaf_2 = leaf_sum(&data[2]);
let leaf_3 = leaf_sum(&data[3]);
let leaf_4 = leaf_sum(&data[4]);
let leaf_0 = leaf_sum(data[0]);
let leaf_1 = leaf_sum(data[1]);
let leaf_2 = leaf_sum(data[2]);
let leaf_3 = leaf_sum(data[3]);
let leaf_4 = leaf_sum(data[4]);

let node_1 = node_sum(&leaf_0, &leaf_1);
let node_5 = node_sum(&leaf_2, &leaf_3);
Expand Down Expand Up @@ -597,13 +597,13 @@ mod test {
// 00 02 04 06 08 10 12
// 00 01 02 03 04 05 06

let leaf_0 = leaf_sum(&data[0]);
let leaf_1 = leaf_sum(&data[1]);
let leaf_2 = leaf_sum(&data[2]);
let leaf_3 = leaf_sum(&data[3]);
let leaf_4 = leaf_sum(&data[4]);
let leaf_5 = leaf_sum(&data[5]);
let leaf_6 = leaf_sum(&data[6]);
let leaf_0 = leaf_sum(data[0]);
let leaf_1 = leaf_sum(data[1]);
let leaf_2 = leaf_sum(data[2]);
let leaf_3 = leaf_sum(data[3]);
let leaf_4 = leaf_sum(data[4]);
let leaf_5 = leaf_sum(data[5]);
let leaf_6 = leaf_sum(data[6]);

let node_1 = node_sum(&leaf_0, &leaf_1);
let node_5 = node_sum(&leaf_2, &leaf_3);
Expand Down
2 changes: 1 addition & 1 deletion src/common/position_path.rs
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ impl Iterator for PositionPathIter {
type Item = (Position, Position);

fn next(&mut self) -> Option<Self::Item> {
while let Some((path, mut side)) = self.path_iter.next() {
for (path, mut side) in self.path_iter.by_ref() {
// To determine if the position is in the tree, we observe that the
// highest in-order index belongs to the tree's rightmost leaf
// position (as defined by the `leaves_count` parameter) and that
Expand Down
6 changes: 6 additions & 0 deletions src/common/storage_map.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,12 @@ pub struct StorageMap<Key, Value> {
map: HashMap<Key, Value>,
}

impl<Key, Value> Default for StorageMap<Key, Value> {
fn default() -> Self {
Self::new()
}
}

impl<Key, Value> StorageMap<Key, Value> {
pub fn new() -> Self {
Self {
Expand Down
1 change: 1 addition & 0 deletions src/lib.rs
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
#![cfg_attr(not(feature = "std"), no_std)]
#![allow(clippy::bool_assert_comparison, clippy::identity_op)]

#[cfg_attr(test, macro_use)]
extern crate alloc;
Expand Down
50 changes: 27 additions & 23 deletions src/sparse/merkle_tree.rs
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ where
) -> Result<Self, MerkleTreeError<StorageError>> {
let buffer = storage
.get(root)?
.ok_or(MerkleTreeError::LoadError(hex::encode(root)))?
.ok_or_else(|| MerkleTreeError::LoadError(hex::encode(root)))?
.into_owned();
let tree = Self {
root_node: Node::from_buffer(buffer),
Expand All @@ -74,7 +74,7 @@ where
self.storage
.insert(&leaf_node.hash(), leaf_node.as_buffer())?;
self.storage
.insert(&leaf_node.leaf_key(), leaf_node.as_buffer())?;
.insert(leaf_node.leaf_key(), leaf_node.as_buffer())?;

if self.root_node().is_placeholder() {
self.set_root_node(leaf_node);
Expand Down Expand Up @@ -222,27 +222,31 @@ where
// calculation. We then create a valid ancestor node for the orphaned
// leaf node by joining it with the earliest non-placeholder side node.
let first_side_node = side_nodes.first();
if first_side_node.is_some() && first_side_node.unwrap().is_leaf() {
side_nodes_iter.next();
current_node = first_side_node.unwrap().clone();

// Advance the side node iterator to the next non-placeholder node.
// This may be either another leaf node or an internal node. If only
// placeholder nodes exist beyond the first leaf node, then that
// leaf node is, in fact, the new root node.
//
// Using `find(..)` advances the iterator beyond the next
// non-placeholder side node and returns it. Therefore, we must
// consume the side node at this point. If another non-placeholder
// node was found in the side node collection, merge it with the
// first side node. This guarantees that the current node will be an
// internal node, and not a leaf, by the time we start merging the
// remaining side nodes.
// See https://doc.rust-lang.org/std/iter/trait.Iterator.html#method.find.
if let Some(side_node) = side_nodes_iter.find(|side_node| !side_node.is_placeholder()) {
current_node = Node::create_node_on_path(path, &current_node, side_node);
self.storage
.insert(&current_node.hash(), current_node.as_buffer())?;
if let Some(first_side_node) = first_side_node {
if first_side_node.is_leaf() {
side_nodes_iter.next();
current_node = first_side_node.clone();

// Advance the side node iterator to the next non-placeholder node.
// This may be either another leaf node or an internal node. If only
// placeholder nodes exist beyond the first leaf node, then that
// leaf node is, in fact, the new root node.
//
// Using `find(..)` advances the iterator beyond the next
// non-placeholder side node and returns it. Therefore, we must
// consume the side node at this point. If another non-placeholder
// node was found in the side node collection, merge it with the
// first side node. This guarantees that the current node will be an
// internal node, and not a leaf, by the time we start merging the
// remaining side nodes.
// See https://doc.rust-lang.org/std/iter/trait.Iterator.html#method.find.
if let Some(side_node) =
side_nodes_iter.find(|side_node| !side_node.is_placeholder())
{
current_node = Node::create_node_on_path(path, &current_node, side_node);
self.storage
.insert(&current_node.hash(), current_node.as_buffer())?;
}
}
}

Expand Down
28 changes: 14 additions & 14 deletions src/sparse/node.rs
Original file line number Diff line number Diff line change
Expand Up @@ -65,25 +65,25 @@ impl Node {
// N.B.: A leaf can be a placeholder.
let parent_depth = path_node.common_path_length(side_node);
let parent_height = (Node::max_height() - parent_depth) as u32;
let parent_node = if path.get_bit_at_index_from_msb(parent_depth).unwrap() == LEFT {
Node::create_node(&path_node, &side_node, parent_height)
if path.get_bit_at_index_from_msb(parent_depth).unwrap() == LEFT {
Node::create_node(path_node, side_node, parent_height)
} else {
Node::create_node(&side_node, &path_node, parent_height)
};
parent_node
Node::create_node(side_node, path_node, parent_height)
}
// parent_node
} else {
// When joining two nodes, or a node and a leaf, the joined node is
// the direct parent of the node with the greater height and an
// ancestor of the node with the lesser height.
// N.B.: A leaf can be a placeholder.
let parent_height = cmp::max(path_node.height(), side_node.height()) + 1;
let parent_depth = Node::max_height() - parent_height as usize;
let parent_node = if path.get_bit_at_index_from_msb(parent_depth).unwrap() == LEFT {
Node::create_node(&path_node, &side_node, parent_height)
if path.get_bit_at_index_from_msb(parent_depth).unwrap() == LEFT {
Node::create_node(path_node, side_node, parent_height)
} else {
Node::create_node(&side_node, &path_node, parent_height)
};
parent_node
Node::create_node(side_node, path_node, parent_height)
}
// parent_node
}
}

Expand Down Expand Up @@ -676,7 +676,7 @@ mod test_storage_node {
let node_0 = Node::create_node(&leaf_0, &leaf_1, 1);
let _ = s.insert(&node_0.hash(), node_0.as_buffer());

let storage_node = StorageNode::new(&mut s, node_0);
let storage_node = StorageNode::new(&s, node_0);
let child = storage_node.left_child().unwrap();

assert_eq!(child.hash(), leaf_0.hash());
Expand All @@ -695,7 +695,7 @@ mod test_storage_node {
let node_0 = Node::create_node(&leaf_0, &leaf_1, 1);
let _ = s.insert(&node_0.hash(), node_0.as_buffer());

let storage_node = StorageNode::new(&mut s, node_0);
let storage_node = StorageNode::new(&s, node_0);
let child = storage_node.right_child().unwrap();

assert_eq!(child.hash(), leaf_1.hash());
Expand All @@ -711,7 +711,7 @@ mod test_storage_node {
let node_0 = Node::create_node(&Node::create_placeholder(), &leaf, 1);
let _ = s.insert(&node_0.hash(), node_0.as_buffer());

let storage_node = StorageNode::new(&mut s, node_0);
let storage_node = StorageNode::new(&s, node_0);
let child = storage_node.left_child().unwrap();

assert!(child.node.is_placeholder());
Expand All @@ -727,7 +727,7 @@ mod test_storage_node {
let node_0 = Node::create_node(&leaf, &Node::create_placeholder(), 1);
let _ = s.insert(&node_0.hash(), node_0.as_buffer());

let storage_node = StorageNode::new(&mut s, node_0);
let storage_node = StorageNode::new(&s, node_0);
let child = storage_node.right_child().unwrap();

assert!(child.node.is_placeholder());
Expand Down
38 changes: 19 additions & 19 deletions src/sum/merkle_tree.rs
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,7 @@ mod test {
let mut tree = MT::new(&mut storage_map);

let root = tree.root().unwrap();
assert_eq!(root, (0, empty_sum().clone()));
assert_eq!(root, (0, *empty_sum()));
}

#[test]
Expand All @@ -139,10 +139,10 @@ mod test {
let mut tree = MT::new(&mut storage_map);

let data = &TEST_DATA[0];
let _ = tree.push(FEE, &data);
let _ = tree.push(FEE, data);
let root = tree.root().unwrap();

let expected = (FEE, leaf_sum(FEE, &data));
let expected = (FEE, leaf_sum(FEE, data));
assert_eq!(root, expected);
}

Expand All @@ -164,10 +164,10 @@ mod test {
// / \ / \
// L0 L1 L2 L3

let leaf_0 = leaf_sum(FEE, &data[0]);
let leaf_1 = leaf_sum(FEE, &data[1]);
let leaf_2 = leaf_sum(FEE, &data[2]);
let leaf_3 = leaf_sum(FEE, &data[3]);
let leaf_0 = leaf_sum(FEE, data[0]);
let leaf_1 = leaf_sum(FEE, data[1]);
let leaf_2 = leaf_sum(FEE, data[2]);
let leaf_3 = leaf_sum(FEE, data[3]);

let node_0 = node_sum(FEE * 1, &leaf_0, FEE * 1, &leaf_1);
let node_1 = node_sum(FEE * 1, &leaf_2, FEE * 1, &leaf_3);
Expand Down Expand Up @@ -197,11 +197,11 @@ mod test {
// / \ / \ \
// L0 L1 L2 L3 L4

let leaf_0 = leaf_sum(FEE, &data[0]);
let leaf_1 = leaf_sum(FEE, &data[1]);
let leaf_2 = leaf_sum(FEE, &data[2]);
let leaf_3 = leaf_sum(FEE, &data[3]);
let leaf_4 = leaf_sum(FEE, &data[4]);
let leaf_0 = leaf_sum(FEE, data[0]);
let leaf_1 = leaf_sum(FEE, data[1]);
let leaf_2 = leaf_sum(FEE, data[2]);
let leaf_3 = leaf_sum(FEE, data[3]);
let leaf_4 = leaf_sum(FEE, data[4]);

let node_0 = node_sum(FEE * 1, &leaf_0, FEE * 1, &leaf_1);
let node_1 = node_sum(FEE * 1, &leaf_2, FEE * 1, &leaf_3);
Expand Down Expand Up @@ -235,13 +235,13 @@ mod test {
// / \ / \ / \ \
// L0 L1 L2 L3 L4 L5 L6

let leaf_0 = leaf_sum(FEE, &data[0]);
let leaf_1 = leaf_sum(FEE, &data[1]);
let leaf_2 = leaf_sum(FEE, &data[2]);
let leaf_3 = leaf_sum(FEE, &data[3]);
let leaf_4 = leaf_sum(FEE, &data[4]);
let leaf_5 = leaf_sum(FEE, &data[5]);
let leaf_6 = leaf_sum(FEE, &data[6]);
let leaf_0 = leaf_sum(FEE, data[0]);
let leaf_1 = leaf_sum(FEE, data[1]);
let leaf_2 = leaf_sum(FEE, data[2]);
let leaf_3 = leaf_sum(FEE, data[3]);
let leaf_4 = leaf_sum(FEE, data[4]);
let leaf_5 = leaf_sum(FEE, data[5]);
let leaf_6 = leaf_sum(FEE, data[6]);

let node_0 = node_sum(FEE * 1, &leaf_0, FEE * 1, &leaf_1);
let node_1 = node_sum(FEE * 1, &leaf_2, FEE * 1, &leaf_3);
Expand Down
8 changes: 4 additions & 4 deletions src/sum/node.rs
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,8 @@ impl Node {
height,
hash: node_sum(lhs_fee, lhs_key, rhs_fee, rhs_key),
fee: lhs_fee + rhs_fee,
left_child_key: Some(lhs_key.clone()),
right_child_key: Some(rhs_key.clone()),
left_child_key: Some(*lhs_key),
right_child_key: Some(*rhs_key),
}
}

Expand All @@ -51,11 +51,11 @@ impl Node {
}

pub fn left_child_key(&self) -> Option<Bytes32> {
self.left_child_key.clone()
self.left_child_key
}

pub fn right_child_key(&self) -> Option<Bytes32> {
self.right_child_key.clone()
self.right_child_key
}

pub fn is_leaf(&self) -> bool {
Expand Down
Loading

0 comments on commit e0f58a9

Please sign in to comment.