Skip to main content

lta/get_taxi_availability/
json.rs

1// @generated by satay. Do not edit by hand.
2#![allow(
3    clippy::doc_markdown,
4    clippy::missing_errors_doc,
5    clippy::must_use_candidate,
6    clippy::needless_pass_by_value,
7    clippy::return_self_not_must_use,
8    clippy::single_match_else
9)]
10
11use super::super::types::Coordinates;
12use super::parts::{
13    GetTaxiAvailabilityInput, GetTaxiAvailabilityResponse, get_taxi_availability_parts,
14};
15/// Returns the coordinates of all taxis currently available for hire.
16///
17/// **Update freq**: 1 min
18pub fn encode_get_taxi_availability(
19    input: GetTaxiAvailabilityInput,
20) -> Result<http::Request<Vec<u8>>, satay_runtime::Error> {
21    let parts = get_taxi_availability_parts(input)?;
22    satay_runtime::into_empty_request(parts)
23}
24pub fn decode_get_taxi_availability_response<B: AsRef<[u8]>>(
25    response: satay_runtime::ResponseParts<B>,
26) -> Result<GetTaxiAvailabilityResponse, satay_runtime::Error> {
27    let status = response.status;
28    match status.as_u16() {
29        200 => {
30            let body = response.body;
31            let value = satay_runtime::from_projected_json_slice::<Vec<Coordinates>>(
32                body.as_ref(),
33                "value",
34                None,
35            )?;
36            Ok(GetTaxiAvailabilityResponse::Ok(value))
37        }
38        _ => {
39            let body = response.body;
40            Ok(GetTaxiAvailabilityResponse::UnexpectedStatus(
41                status,
42                body.as_ref().to_vec(),
43            ))
44        }
45    }
46}