diff options
author | tom barrett <spalf0@gmail.com> | 2018-02-23 07:25:13 -0600 |
---|---|---|
committer | tom barrett <spalf0@gmail.com> | 2018-02-23 07:25:13 -0600 |
commit | 53281aa16e262124631af4abd19e16a921de098d (patch) | |
tree | 792b7a420ca7c3e859c9205a6a38cf96025a6929 | |
parent | ceb9ee22f32d46a6e49229f447c414f3707eb3ac (diff) |
prettier way to filter
-rw-r--r-- | src/connection.rs | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/src/connection.rs b/src/connection.rs index 1502d7a..ac57176 100644 --- a/src/connection.rs +++ b/src/connection.rs @@ -86,12 +86,9 @@ impl Connection { Module::Navigation => { let ship = &masses[self.index].downcast_ref::<Ship>().unwrap(); - let mut within_range = Vec::new(); - for mass in masses.iter() { - if distance(ship.location(), mass.location()) < ship.range() { - within_range.push(mass); - } - } + let within_range : Vec<_> = masses.iter().filter(|mass| + distance(ship.location(), mass.location()) < ship.range()).collect(); + let mut send = String::new(); for mass in within_range { send.push_str(&mass.serialize()); |