Skip to content

Commit 5185b5d

Browse files
aw-transform: Avoid cloning in filter_keyvals
1 parent fa842f6 commit 5185b5d

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

Diff for: aw-transform/src/filter_keyvals.rs

+5-5
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@ use serde_json::value::Value;
33

44
use aw_models::Event;
55

6-
pub fn filter_keyvals(events: Vec<Event>, key: &str, vals: &[Value]) -> Vec<Event> {
6+
pub fn filter_keyvals(mut events: Vec<Event>, key: &str, vals: &[Value]) -> Vec<Event> {
77
let mut filtered_events = Vec::new();
8-
for event in events {
8+
for event in events.drain(..) {
99
match event.data.get(key) {
1010
Some(v) => {
1111
for val in vals {
@@ -15,16 +15,16 @@ pub fn filter_keyvals(events: Vec<Event>, key: &str, vals: &[Value]) -> Vec<Even
1515
}
1616
}
1717
}
18-
None => break,
18+
None => (),
1919
}
2020
}
2121
filtered_events
2222
}
2323

24-
pub fn filter_keyvals_regex(events: Vec<Event>, key: &str, regex: &Regex) -> Vec<Event> {
24+
pub fn filter_keyvals_regex(mut events: Vec<Event>, key: &str, regex: &Regex) -> Vec<Event> {
2525
let mut filtered_events = Vec::new();
2626

27-
for event in events {
27+
for event in events.drain(..) {
2828
match event.data.get(key) {
2929
Some(v) => {
3030
if regex.is_match(v.as_str().unwrap()) {

0 commit comments

Comments
 (0)