use crate::places::query_autocomplete::request::Request;
use percent_encoding::{utf8_percent_encode, NON_ALPHANUMERIC};
impl<'a> Request<'a> {
pub fn build(&mut self) -> &'a mut Request {
let mut query = format!(
"key={}&input={}",
self.client.key,
utf8_percent_encode(&self.input, NON_ALPHANUMERIC),
);
if let Some(language) = &self.language {
query.push_str("&language=");
query.push_str(&String::from(language));
}
if let Some(location) = &self.location {
query.push_str("&location=");
query.push_str(&String::from(location));
}
if let Some(offset) = &self.offset {
query.push_str("&offset=");
query.push_str(&offset.to_string());
}
if let Some(radius) = &self.radius {
query.push_str("&radius=");
query.push_str(&radius.to_string());
}
self.query = Some(query);
self
} }