AshNeo4j.Error.GeoDimensionMismatch exception (AshNeo4j v0.10.0)

Copy Markdown View Source

Returned (never raised) when a spatial operation combines geometries of different coordinate dimensions (2D vs 3D) — e.g. a 3D %Geo.PointZ{} against a 2D attribute, or vice versa. Neo4j silently returns null for mixed-CRS operations (which then drops rows in a WHERE), so AshNeo4j refuses up front (#270) by returning {:error, error}.

Bridge worlds explicitly with a downward projection (AshNeo4j.Geo.force_2d/1) — collapse the 3D operand to its 2D footprint and evaluate in 2D. There is no implicit 2D→3D lift (a height cannot be fabricated).

Summary

Functions

exception(args)

@spec exception(opts :: Keyword.t()) :: %AshNeo4j.Error.GeoDimensionMismatch{
  __exception__: term(),
  attr_dim: term(),
  bread_crumbs: term(),
  class: term(),
  path: term(),
  splode: term(),
  stacktrace: term(),
  value_dim: term(),
  vars: term()
}

Create an Elixir.AshNeo4j.Error.GeoDimensionMismatch without raising it.

Keys

  • :attr_dim
  • :value_dim