diff options
Diffstat (limited to 'src/main.rs')
-rw-r--r-- | src/main.rs | 21 |
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(()) |