aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/main.rs21
1 files changed, 14 insertions, 7 deletions
diff --git a/src/main.rs b/src/main.rs
index 5e18bac..ffbeae2 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -29,13 +29,20 @@ fn main() -> Result<(), Box<dyn Error>> {
let station_availability = api.station_availability()?;
for station in api.stations()? {
- let a = station_availability.iter().find(|s| s.id == station.id).unwrap();
- println!("{:>4} {:<32}: {:>2} bikes, {:>2} locks of {:>2} total",
- station.id,
- station.title,
- a.availability.bikes,
- a.availability.locks,
- station.number_of_locks);
+ if let Some(a) = station_availability.iter().find(|s| s.id == station.id) {
+ println!("{:>4} {:<32}: {:>2} bikes, {:>2} locks of {:>2} total",
+ station.id,
+ station.title,
+ a.availability.bikes,
+ a.availability.locks,
+ station.number_of_locks);
+ }
+ else {
+ println!("{:>4} {:<32}: No availability data, {:>2} total capacity",
+ station.id,
+ station.title,
+ station.number_of_locks);
+ }
}
Ok(())