AshGeo.Validation (AshGeo v0.2.0)

Validation shorthands for Geo.PostGIS types for use with Ash validate

actions do
  read :containing do
    argument :point, :geo_any

    validate is_point(:point)

    filter expr(^st_contains(^arg(:point)))
  end
end

Summary

Functions

Check geometry A against geometry B using Topo.contains?/2

Check geometry A against geometry B using Topo.disjoint?/2

Check geometry A against geometry B using Topo.equals?/2

Check geometry A against geometry B using Topo.intersects?/2

Check argument is a :geometry_collection (Geo.GeometryCollection)

Check argument is a :line_string (Geo.LineString)

Check argument is a :line_string_z (Geo.LineStringZ)

Check argument is a :multi_line_string (Geo.MultiLineString)

Check argument is a :multi_line_string_z (Geo.MultiLineStringZ)

Check argument is a :multi_point (Geo.MultiPoint)

Check argument is a :multi_point_z (Geo.MultiPointZ)

Check argument is a :multi_polygon (Geo.MultiPolygon)

Check argument is a :multi_polygon_z (Geo.MultiPolygonZ)

Check argument is a :point (Geo.Point)

Check argument is a :point_m (Geo.PointM)

Check argument is a :point_z (Geo.PointZ)

Check argument is a :point_zm (Geo.PointZM)

Check argument is a :polygon (Geo.Polygon)

Check argument is a :polygon_z (Geo.PolygonZ)

Check geometry A against geometry B using Topo.within?/2

Functions

Link to this macro

contains(geometry_a, geometry_b)

(since 0.1.0) (macro)

Check geometry A against geometry B using Topo.contains?/2

Link to this macro

disjoint(geometry_a, geometry_b)

(since 0.1.0) (macro)

Check geometry A against geometry B using Topo.disjoint?/2

Link to this macro

equals(geometry_a, geometry_b)

(since 0.1.0) (macro)

Check geometry A against geometry B using Topo.equals?/2

Link to this macro

intersects(geometry_a, geometry_b)

(since 0.1.0) (macro)

Check geometry A against geometry B using Topo.intersects?/2

Link to this macro

is_geometry_collection(argument)

(since 0.1.0) (macro)

Check argument is a :geometry_collection (Geo.GeometryCollection)

Link to this macro

is_line_string(argument)

(since 0.1.0) (macro)

Check argument is a :line_string (Geo.LineString)

Link to this macro

is_line_string_z(argument)

(since 0.1.0) (macro)

Check argument is a :line_string_z (Geo.LineStringZ)

Link to this macro

is_multi_line_string(argument)

(since 0.1.0) (macro)

Check argument is a :multi_line_string (Geo.MultiLineString)

Link to this macro

is_multi_line_string_z(argument)

(since 0.1.0) (macro)

Check argument is a :multi_line_string_z (Geo.MultiLineStringZ)

Link to this macro

is_multi_point(argument)

(since 0.1.0) (macro)

Check argument is a :multi_point (Geo.MultiPoint)

Link to this macro

is_multi_point_z(argument)

(since 0.1.0) (macro)

Check argument is a :multi_point_z (Geo.MultiPointZ)

Link to this macro

is_multi_polygon(argument)

(since 0.1.0) (macro)

Check argument is a :multi_polygon (Geo.MultiPolygon)

Link to this macro

is_multi_polygon_z(argument)

(since 0.1.0) (macro)

Check argument is a :multi_polygon_z (Geo.MultiPolygonZ)

Link to this macro

is_point(argument)

(since 0.1.0) (macro)

Check argument is a :point (Geo.Point)

Link to this macro

is_point_m(argument)

(since 0.1.0) (macro)

Check argument is a :point_m (Geo.PointM)

Link to this macro

is_point_z(argument)

(since 0.1.0) (macro)

Check argument is a :point_z (Geo.PointZ)

Link to this macro

is_point_zm(argument)

(since 0.1.0) (macro)

Check argument is a :point_zm (Geo.PointZM)

Link to this macro

is_polygon(argument)

(since 0.1.0) (macro)

Check argument is a :polygon (Geo.Polygon)

Link to this macro

is_polygon_z(argument)

(since 0.1.0) (macro)

Check argument is a :polygon_z (Geo.PolygonZ)

Link to this macro

within(geometry_a, geometry_b)

(since 0.1.0) (macro)

Check geometry A against geometry B using Topo.within?/2