diff --git a/galileo-types/src/geo/impls/projection/web_mercator.rs b/galileo-types/src/geo/impls/projection/web_mercator.rs index 39e4a9f..35b3968 100644 --- a/galileo-types/src/geo/impls/projection/web_mercator.rs +++ b/galileo-types/src/geo/impls/projection/web_mercator.rs @@ -6,7 +6,7 @@ use std::marker::PhantomData; use serde::{Deserialize, Serialize}; /// Web Mercator projection. -#[derive(Debug, Clone, PartialEq, PartialOrd, Serialize, Deserialize)] +#[derive(Debug, Copy, Clone, PartialEq, PartialOrd, Serialize, Deserialize)] pub struct WebMercator { datum: Datum, phantom_in: PhantomData, diff --git a/galileo-types/src/geojson/point.rs b/galileo-types/src/geojson/point.rs index ef28fdd..0f07842 100644 --- a/galileo-types/src/geojson/point.rs +++ b/galileo-types/src/geojson/point.rs @@ -4,7 +4,7 @@ use crate::geometry_type::{GeoSpace2d, GeometryType, PointGeometryType}; use geojson::Position; use serde::{Deserialize, Serialize}; -#[derive(Debug, Clone, Default, PartialEq, PartialOrd, Eq, Ord, Hash, Deserialize, Serialize)] +#[derive(Debug, Default, Clone, Copy, PartialEq, PartialOrd, Eq, Ord, Hash, Deserialize, Serialize)] pub struct GeoJsonPoint(Position); impl TryFrom for GeoJsonPoint { diff --git a/galileo-types/src/geometry_type.rs b/galileo-types/src/geometry_type.rs index db645f5..0c47083 100644 --- a/galileo-types/src/geometry_type.rs +++ b/galileo-types/src/geometry_type.rs @@ -26,41 +26,41 @@ pub trait GeometryType { } /// Point geometry marker. -#[derive(Debug, Clone, Default, PartialEq, PartialOrd, Eq, Ord, Hash, Deserialize, Serialize)] +#[derive(Debug, Copy, Clone, Default, PartialEq, PartialOrd, Eq, Ord, Hash, Deserialize, Serialize)] pub struct PointGeometryType; /// Multipoint geometry marker. -#[derive(Debug, Clone, Default, PartialEq, PartialOrd, Eq, Ord, Hash, Deserialize, Serialize)] +#[derive(Debug, Copy, Clone, Default, PartialEq, PartialOrd, Eq, Ord, Hash, Deserialize, Serialize)] pub struct MultiPointGeometryType; /// Contour geometry marker. -#[derive(Debug, Clone, Default, PartialEq, PartialOrd, Eq, Ord, Hash, Deserialize, Serialize)] +#[derive(Debug, Copy, Clone, Default, PartialEq, PartialOrd, Eq, Ord, Hash, Deserialize, Serialize)] pub struct ContourGeometryType; /// MultiContour geometry marker. -#[derive(Debug, Clone, Default, PartialEq, PartialOrd, Eq, Ord, Hash, Deserialize, Serialize)] +#[derive(Debug, Copy, Clone, Default, PartialEq, PartialOrd, Eq, Ord, Hash, Deserialize, Serialize)] pub struct MultiContourGeometryType; /// Polygon geometry marker. -#[derive(Debug, Clone, Default, PartialEq, PartialOrd, Eq, Ord, Hash, Deserialize, Serialize)] +#[derive(Debug, Copy, Clone, Default, PartialEq, PartialOrd, Eq, Ord, Hash, Deserialize, Serialize)] pub struct PolygonGeometryType; /// MultiPolygon geometry marker. -#[derive(Debug, Clone, Default, PartialEq, PartialOrd, Eq, Ord, Hash, Deserialize, Serialize)] +#[derive(Debug, Copy, Clone, Default, PartialEq, PartialOrd, Eq, Ord, Hash, Deserialize, Serialize)] pub struct MultiPolygonGeometryType; /// Geographic coordinate space marker. -#[derive(Debug, Clone, Default, PartialEq, PartialOrd, Eq, Ord, Hash, Deserialize, Serialize)] +#[derive(Debug, Copy, Clone, Default, PartialEq, PartialOrd, Eq, Ord, Hash, Deserialize, Serialize)] pub struct GeoSpace2d; /// 2d cartesian coordinate space marker. -#[derive(Debug, Clone, Default, PartialEq, PartialOrd, Eq, Ord, Hash, Deserialize, Serialize)] +#[derive(Debug, Copy, Clone, Default, PartialEq, PartialOrd, Eq, Ord, Hash, Deserialize, Serialize)] pub struct CartesianSpace2d; /// 3d cartesian coordinate space marker. -#[derive(Debug, Clone, Default, PartialEq, PartialOrd, Eq, Ord, Hash, Deserialize, Serialize)] +#[derive(Debug, Copy, Clone, Default, PartialEq, PartialOrd, Eq, Ord, Hash, Deserialize, Serialize)] pub struct CartesianSpace3d; /// See [`Disambiguate`](super::disambig::Disambiguate). -#[derive(Debug, Clone, Default, PartialEq, PartialOrd, Eq, Ord, Hash, Deserialize, Serialize)] +#[derive(Debug, Copy, Clone, Default, PartialEq, PartialOrd, Eq, Ord, Hash, Deserialize, Serialize)] pub struct AmbiguousSpace; diff --git a/galileo-types/src/impls/contour.rs b/galileo-types/src/impls/contour.rs index b6ef9bb..806cd26 100644 --- a/galileo-types/src/impls/contour.rs +++ b/galileo-types/src/impls/contour.rs @@ -3,7 +3,7 @@ use crate::geometry_type::{ContourGeometryType, GeometryType}; use serde::{Deserialize, Serialize}; /// Simple [`crate::Contour`] implementation. -#[derive(Debug, Clone, Default, PartialEq, PartialOrd, Eq, Ord, Hash, Deserialize, Serialize)] +#[derive(Debug, Default, Clone, PartialEq, PartialOrd, Eq, Ord, Hash, Deserialize, Serialize)] pub struct Contour { points: Vec, is_closed: bool,