use crate::roads::snap_to_roads::request::Request;
use percent_encoding::{utf8_percent_encode, NON_ALPHANUMERIC};
impl<'a> Request<'a> {
pub fn build(&mut self) -> &'a mut Request {
let path: String = self
.path
.iter()
.map(String::from)
.collect::<Vec<String>>()
.join("|");
let path: String = utf8_percent_encode(&path, NON_ALPHANUMERIC).to_string();
let mut query = format!("key={key}&path={path}", key = self.client.key,);
if let Some(interpolate) = &self.interpolate {
query.push_str("&interpolate=");
query.push_str(&interpolate.to_string());
}
self.query = Some(query);
self
} }