From c7a4a1e7694709e907681f12c38caf67eba32806 Mon Sep 17 00:00:00 2001 From: Anshul Singhvi Date: Wed, 23 Oct 2024 15:08:17 -0700 Subject: [PATCH 1/2] Remove ambiguity and implement `getgeom`, `ngeom` for `Wrappers.Point` --- src/wrappers.jl | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/wrappers.jl b/src/wrappers.jl index 5ddfac04..2f361013 100644 --- a/src/wrappers.jl +++ b/src/wrappers.jl @@ -318,6 +318,10 @@ convert(::Type{Point}, ::PointTrait, geom) = Point(geom) convert(::Type{Point}, ::PointTrait, geom::Point) = geom extent(trait::PointTrait, geom::Point) = extent(trait, parent(geom)) +ngeom(::PointTrait, geom::Point) = 0 +getgeom(::PointTrait, geom::Point) = nothing +getgeom(::PointTrait, geom::Point, i) = nothing + x(trait::PointTrait, geom::Point) = x(trait, parent(geom)) y(trait::PointTrait, geom::Point) = y(trait, parent(geom)) z(trait::PointTrait, geom::Point{true}) = z(trait, parent(geom)) From a83406cb2815b265e0add0e9ff82b8159d053278 Mon Sep 17 00:00:00 2001 From: Maarten Pronk Date: Thu, 22 Oct 2026 21:12:56 +0200 Subject: [PATCH 2/2] Update src/wrappers.jl Co-authored-by: Anshul Singhvi --- src/wrappers.jl | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/wrappers.jl b/src/wrappers.jl index 2f361013..f7e565b1 100644 --- a/src/wrappers.jl +++ b/src/wrappers.jl @@ -318,9 +318,9 @@ convert(::Type{Point}, ::PointTrait, geom) = Point(geom) convert(::Type{Point}, ::PointTrait, geom::Point) = geom extent(trait::PointTrait, geom::Point) = extent(trait, parent(geom)) -ngeom(::PointTrait, geom::Point) = 0 -getgeom(::PointTrait, geom::Point) = nothing -getgeom(::PointTrait, geom::Point, i) = nothing +ngeom(::PointTrait, geom::Point) = error("`GI.ngeom` on a Point is not allowed! To get the number of dimensions use `GI.ncoord` instead.") +getgeom(::PointTrait, geom::Point) = error("`GI.getgeom` on a Point is not allowed! To get the number of dimensions use `GI.getcoord` instead, or `GI.x, GI.y, GI.z, GI.t`") +getgeom(::PointTrait, geom::Point, i) = error("`GI.getgeom` on a Point is not allowed! To get the number of dimensions use `GI.getcoord` instead, or `GI.x, GI.y, GI.z, GI.t`") x(trait::PointTrait, geom::Point) = x(trait, parent(geom)) y(trait::PointTrait, geom::Point) = y(trait, parent(geom))