Skip to content

Commit d6413f0

Browse files
committed
use entry().or_insert instead of contain_key();insert()
this was suggested by clippy
1 parent ed02dce commit d6413f0

File tree

1 file changed

+8
-24
lines changed

1 file changed

+8
-24
lines changed

src/selector/value_walker.rs

Lines changed: 8 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -14,18 +14,14 @@ impl<'a> ValueWalker {
1414
Value::Object(map) => {
1515
map.values().into_iter().for_each(|v_el| {
1616
let ptr_el = v_el as *const Value;
17-
if !parents.contains_key(&ptr_el) {
18-
parents.insert(ptr_el, v);
19-
}
17+
parents.entry(ptr_el).or_insert(v);
2018
acc.push(v_el)
2119
})
2220
},
2321
Value::Array(vec) => {
2422
vec.iter().for_each(|v_el| {
2523
let ptr_el = v_el as *const Value;
26-
if !parents.contains_key(&ptr_el) {
27-
parents.insert(ptr_el, v);
28-
}
24+
parents.entry(ptr_el).or_insert(v);
2925
acc.push(v_el)
3026
})
3127
}
@@ -40,9 +36,7 @@ impl<'a> ValueWalker {
4036
if let Value::Object(map) = v {
4137
if let Some(v_el) = map.get(key) {
4238
let ptr_el = v_el as *const Value;
43-
if !parents.contains_key(&ptr_el) {
44-
parents.insert(ptr_el, v);
45-
}
39+
parents.entry(ptr_el).or_insert(v);
4640
acc.push(v_el);
4741
}
4842
}
@@ -55,9 +49,7 @@ impl<'a> ValueWalker {
5549
if let Value::Array(vec) = v {
5650
if let Some(v_el) = vec.get(utils::abs_index(index as isize, vec.len())) {
5751
let ptr_el = v_el as *const Value;
58-
if !parents.contains_key(&ptr_el) {
59-
parents.insert(ptr_el, v);
60-
}
52+
parents.entry(ptr_el).or_insert(v);
6153
acc.push(v_el);
6254
}
6355
}
@@ -90,9 +82,7 @@ impl<'a> ValueWalker {
9082
if let Value::Object(map) = v {
9183
path_keys.iter().for_each(|pk| if let Some(v_el) = map.get(pk.get_key()) {
9284
let ptr_el = v_el as *const Value;
93-
if !parents.contains_key(&ptr_el) {
94-
parents.insert(ptr_el, v);
95-
}
85+
parents.entry(ptr_el).or_insert(v);
9686
acc.push(v_el)
9787
});
9888
}
@@ -132,18 +122,14 @@ impl<'a> ValueWalker {
132122
Value::Array(vec) => {
133123
vec.iter().for_each(|v_el| {
134124
let ptr_el = v_el as *const Value;
135-
if !parents.contains_key(&ptr_el) {
136-
parents.insert(ptr_el, v);
137-
}
125+
parents.entry(ptr_el).or_insert(v);
138126
Self::_walk(parents, v_el, acc, fun)
139127
});
140128
}
141129
Value::Object(map) => {
142130
map.values().into_iter().for_each(|v_el| {
143131
let ptr_el = v_el as *const Value;
144-
if !parents.contains_key(&ptr_el) {
145-
parents.insert(ptr_el, v);
146-
}
132+
parents.entry(ptr_el).or_insert(v);
147133
Self::_walk(parents, v_el, acc, fun)
148134
});
149135
}
@@ -207,9 +193,7 @@ impl<'a> ValueWalker {
207193
}
208194
vec.iter().for_each(|v_el| {
209195
let ptr_el = v_el as *const Value;
210-
if !parents.contains_key(&ptr_el) {
211-
parents.insert(ptr_el, v);
212-
}
196+
parents.entry(ptr_el).or_insert(v);
213197
Self::walk_dedup(parents, v_el, key, visited, index, is_contain, is_not_contain, depth + 1);
214198
})
215199
}

0 commit comments

Comments
 (0)