use serde::{Deserialize, Serialize};
#[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd, Serialize, Deserialize)]
pub struct Polyline {
pub points: String,
}
#[cfg(all(feature = "polyline", feature = "geo"))]
impl Polyline {
pub fn decode(
&self,
precision: u32
) -> Result<geo_types::geometry::LineString<f64>, crate::error::Error> {
Ok(polyline::decode_polyline(&self.points, precision)?)
} }
#[cfg(all(feature = "polyline", feature = "geo"))]
impl TryFrom<&Polyline> for geo_types::geometry::LineString<f64> {
type Error = crate::error::Error;
fn try_from(polyline: &Polyline) -> Result<Self, Self::Error> {
polyline.decode(5)
} }
#[cfg(all(feature = "polyline", feature = "geo"))]
impl TryFrom<Polyline> for geo_types::geometry::LineString<f64> {
type Error = crate::error::Error;
fn try_from(polyline: Polyline) -> Result<Self, Self::Error> {
polyline.decode(5)
} }