LANGUAGE 'C' IMMUTABLE STRICT;
-- Availability: 1.5.0 - this is just a hack to prevent unknown from causing ambiguous name because of geography
+-- TODO Remove in 2.0
CREATE OR REPLACE FUNCTION ST_AsText(text)
RETURNS text AS
$$ SELECT ST_AsText($1::geometry); $$
- LANGUAGE 'sql' IMMUTABLE STRICT;
+ LANGUAGE 'SQL' IMMUTABLE STRICT;
-- Availability: 1.5.0
CREATE OR REPLACE FUNCTION ST_GeographyFromText(text)
LANGUAGE 'C' IMMUTABLE STRICT;
-- Availability: 1.5.0 - this is just a hack to prevent unknown from causing ambiguous name because of geography
+-- TODO Remove in 2.0
CREATE OR REPLACE FUNCTION ST_AsBinary(text)
RETURNS bytea AS
$$ SELECT ST_AsBinary($1::geometry); $$
- LANGUAGE 'sql' IMMUTABLE STRICT;
+ LANGUAGE 'SQL' IMMUTABLE STRICT;
-- Availability: 1.5.0
CREATE OR REPLACE FUNCTION ST_GeographyFromBinary(bytea)
-- ST_AsSVG(geography, precision, rel)
CREATE OR REPLACE FUNCTION ST_AsSVG(geography,int4,int4)
- RETURNS TEXT
+ RETURNS text
AS 'MODULE_PATHNAME','geography_as_svg'
LANGUAGE 'C' IMMUTABLE STRICT;
-- ST_AsSVG(geography, precision) / rel=0
CREATE OR REPLACE FUNCTION ST_AsSVG(geography,int4)
- RETURNS TEXT
+ RETURNS text
AS 'MODULE_PATHNAME','geography_as_svg'
LANGUAGE 'C' IMMUTABLE STRICT;
-- ST_AsSVG(geography) / precision=15, rel=0
CREATE OR REPLACE FUNCTION ST_AsSVG(geography)
- RETURNS TEXT
+ RETURNS text
AS 'MODULE_PATHNAME','geography_as_svg'
LANGUAGE 'C' IMMUTABLE STRICT;
+-- Availability: 1.5.0 - this is just a hack to prevent unknown from causing ambiguous name because of geography
+-- TODO Remove in 2.0
+CREATE OR REPLACE FUNCTION ST_AsSVG(text)
+ RETURNS text AS
+ $$ SELECT ST_AsSVG($1::geometry); $$
+ LANGUAGE 'SQL' IMMUTABLE STRICT;
+
--
-- GML OUTPUT
-- _ST_AsGML(version, geography, precision, option)
CREATE OR REPLACE FUNCTION _ST_AsGML(int4, geography, int4, int4)
- RETURNS TEXT
+ RETURNS text
AS 'MODULE_PATHNAME','geography_as_gml'
LANGUAGE 'C' IMMUTABLE STRICT;
-- ST_AsGML(geography, precision) / version=2 options=0
CREATE OR REPLACE FUNCTION ST_AsGML(geography, int4)
- RETURNS TEXT
+ RETURNS text
AS 'SELECT _ST_AsGML(2, $1, $2, 0)'
LANGUAGE 'SQL' IMMUTABLE STRICT;
-- ST_AsGML(geography) / precision=15 version=2 options=0
CREATE OR REPLACE FUNCTION ST_AsGML(geography)
- RETURNS TEXT
+ RETURNS text
AS 'SELECT _ST_AsGML(2, $1, 15, 0)'
LANGUAGE 'SQL' IMMUTABLE STRICT;
+-- Availability: 1.5.0 - this is just a hack to prevent unknown from causing ambiguous name because of geography
+-- TODO Remove in 2.0
+CREATE OR REPLACE FUNCTION ST_AsGML(text)
+ RETURNS text AS
+ $$ SELECT ST_AsGML($1::geometry); $$
+ LANGUAGE 'SQL' IMMUTABLE STRICT;
+
-- ST_AsGML(version, geography) / precision=15 version=2 options=0
CREATE OR REPLACE FUNCTION ST_AsGML(int4, geography)
- RETURNS TEXT
+ RETURNS text
AS 'SELECT _ST_AsGML($1, $2, 15, 0)'
LANGUAGE 'SQL' IMMUTABLE STRICT;
-- ST_AsGML(version, geography, precision) / options = 0
CREATE OR REPLACE FUNCTION ST_AsGML(int4, geography, int4)
- RETURNS TEXT
+ RETURNS text
AS 'SELECT _ST_AsGML($1, $2, $3, 0)'
LANGUAGE 'SQL' IMMUTABLE STRICT;
-- ST_AsGML (geography, precision, option) / version=2
CREATE OR REPLACE FUNCTION ST_AsGML(geography, int4, int4)
- RETURNS TEXT
+ RETURNS text
AS 'SELECT _ST_AsGML(2, $1, $2, $3)'
LANGUAGE 'SQL' IMMUTABLE STRICT;
-- ST_AsGML(version, geography, precision, option)
CREATE OR REPLACE FUNCTION ST_AsGML(int4, geography, int4, int4)
- RETURNS TEXT
+ RETURNS text
AS 'SELECT _ST_AsGML($1, $2, $3, $4)'
LANGUAGE 'SQL' IMMUTABLE STRICT;
-- _ST_AsKML(version, geography, precision)
CREATE OR REPLACE FUNCTION _ST_AsKML(int4, geography, int4)
- RETURNS TEXT
+ RETURNS text
AS 'MODULE_PATHNAME','geography_as_kml'
LANGUAGE 'C' IMMUTABLE STRICT;
-- AsKML(geography,precision) / version=2
CREATE OR REPLACE FUNCTION ST_AsKML(geography, int4)
- RETURNS TEXT
+ RETURNS text
AS 'SELECT _ST_AsKML(2, $1, $2)'
LANGUAGE 'SQL' IMMUTABLE STRICT;
-- AsKML(geography) / precision=15 version=2
CREATE OR REPLACE FUNCTION ST_AsKML(geography)
- RETURNS TEXT
+ RETURNS text
AS 'SELECT _ST_AsKML(2, $1, 15)'
LANGUAGE 'SQL' IMMUTABLE STRICT;
+-- Availability: 1.5.0 - this is just a hack to prevent unknown from causing ambiguous name because of geography
+-- TODO Remove in 2.0
+CREATE OR REPLACE FUNCTION ST_AsKML(text)
+ RETURNS text AS
+ $$ SELECT ST_AsKML($1::geometry); $$
+ LANGUAGE 'SQL' IMMUTABLE STRICT;
+
-- ST_AsKML(version, geography) / precision=15
CREATE OR REPLACE FUNCTION ST_AsKML(int4, geography)
- RETURNS TEXT
+ RETURNS text
AS 'SELECT _ST_AsKML($1, $2, 15)'
LANGUAGE 'SQL' IMMUTABLE STRICT;
-- ST_AsKML(version, geography, precision)
CREATE OR REPLACE FUNCTION ST_AsKML(int4, geography, int4)
- RETURNS TEXT
+ RETURNS text
AS 'SELECT _ST_AsKML($1, $2, $3)'
LANGUAGE 'SQL' IMMUTABLE STRICT;
-- ST_AsGeoJson(geography, precision) / version=1 options=0
CREATE OR REPLACE FUNCTION ST_AsGeoJson(geography, int4)
- RETURNS TEXT
+ RETURNS text
AS 'SELECT _ST_AsGeoJson(1, $1, $2, 0)'
LANGUAGE 'SQL' IMMUTABLE STRICT;
-- ST_AsGeoJson(geography) / precision=15 version=1 options=0
CREATE OR REPLACE FUNCTION ST_AsGeoJson(geography)
- RETURNS TEXT
+ RETURNS text
AS 'SELECT _ST_AsGeoJson(1, $1, 15, 0)'
LANGUAGE 'SQL' IMMUTABLE STRICT;
+-- Availability: 1.5.0 - this is just a hack to prevent unknown from causing ambiguous name because of geography
+-- TODO Remove in 2.0
+CREATE OR REPLACE FUNCTION ST_AsGeoJson(text)
+ RETURNS text AS
+ $$ SELECT ST_AsGeoJson($1::geometry); $$
+ LANGUAGE 'SQL' IMMUTABLE STRICT;
+
-- ST_AsGeoJson(version, geography) / precision=15 options=0
CREATE OR REPLACE FUNCTION ST_AsGeoJson(int4, geography)
- RETURNS TEXT
+ RETURNS text
AS 'SELECT _ST_AsGeoJson($1, $2, 15, 0)'
LANGUAGE 'SQL' IMMUTABLE STRICT;
-- ST_AsGeoJson(version, geography, precision) / options=0
CREATE OR REPLACE FUNCTION ST_AsGeoJson(int4, geography, int4)
- RETURNS TEXT
+ RETURNS text
AS 'SELECT _ST_AsGeoJson($1, $2, $3, 0)'
LANGUAGE 'SQL' IMMUTABLE STRICT;
-- ST_AsGeoJson(geography, precision, options) / version=1
CREATE OR REPLACE FUNCTION ST_AsGeoJson(geography, int4, int4)
- RETURNS TEXT
+ RETURNS text
AS 'SELECT _ST_AsGeoJson(1, $1, $2, $3)'
LANGUAGE 'SQL' IMMUTABLE STRICT;
-- ST_AsGeoJson(version, geography, precision,options)
CREATE OR REPLACE FUNCTION ST_AsGeoJson(int4, geography, int4, int4)
- RETURNS TEXT
+ RETURNS text
AS 'SELECT _ST_AsGeoJson($1, $2, $3, $4)'
LANGUAGE 'SQL' IMMUTABLE STRICT;
RETURNS float8
AS 'SELECT _ST_Distance($1, $2, 0.0, true)'
LANGUAGE 'SQL' IMMUTABLE STRICT;
+
+-- Availability: 1.5.0 - this is just a hack to prevent unknown from causing ambiguous name because of geography
+-- TODO Remove in 2.0
+CREATE OR REPLACE FUNCTION ST_Distance(text, text)
+ RETURNS float8 AS
+ $$ SELECT ST_Distance($1::geometry, $2::geometry); $$
+ LANGUAGE 'SQL' IMMUTABLE STRICT;
-- Only expands the bounding box, the actual geometry will remain unchanged, use with care.
-- Availability: 1.5.0
AS 'SELECT $1 && _ST_Expand($2,$3) AND $2 && _ST_Expand($1,$3) AND _ST_Distance($1, $2, $3, true) < $3'
LANGUAGE 'SQL' IMMUTABLE;
+-- Availability: 1.5.0 - this is just a hack to prevent unknown from causing ambiguous name because of geography
+-- TODO Remove in 2.0
+CREATE OR REPLACE FUNCTION ST_DWithin(text, text, float8)
+ RETURNS boolean AS
+ $$ SELECT ST_DWithin($1::geometry, $2::geometry, $3); $$
+ LANGUAGE 'SQL' IMMUTABLE STRICT;
+
-- Availability: 1.5.0
CREATE OR REPLACE FUNCTION ST_Area(geography, boolean)
RETURNS float8
AS 'SELECT ST_Area($1, true)'
LANGUAGE 'SQL' IMMUTABLE STRICT;
+-- Availability: 1.5.0 - this is just a hack to prevent unknown from causing ambiguous name because of geography
+-- TODO Remove in 2.0
+CREATE OR REPLACE FUNCTION ST_Area(text)
+ RETURNS float8 AS
+ $$ SELECT ST_Area($1::geometry); $$
+ LANGUAGE 'SQL' IMMUTABLE STRICT;
+
-- Availability: 1.5.0
CREATE OR REPLACE FUNCTION ST_Length(geography, boolean)
RETURNS float8
AS 'SELECT ST_Length($1, true)'
LANGUAGE 'SQL' IMMUTABLE;
+-- Availability: 1.5.0 - this is just a hack to prevent unknown from causing ambiguous name because of geography
+-- TODO Remove in 2.0
+CREATE OR REPLACE FUNCTION ST_Length(text)
+ RETURNS float8 AS
+ $$ SELECT ST_Length($1::geometry); $$
+ LANGUAGE 'SQL' IMMUTABLE STRICT;
+
-- Availability: 1.5.0
CREATE OR REPLACE FUNCTION ST_PointOutside(geography)
RETURNS geography
AS 'SELECT $1 && $2 AND _ST_Covers($1, $2)'
LANGUAGE 'SQL' IMMUTABLE STRICT;
+-- Availability: 1.5.0 - this is just a hack to prevent unknown from causing ambiguous name because of geography
+-- TODO Remove in 2.0
+CREATE OR REPLACE FUNCTION ST_Covers(text, text)
+ RETURNS boolean AS
+ $$ SELECT ST_Covers($1::geometry, $2::geometry); $$
+ LANGUAGE 'SQL' IMMUTABLE STRICT;
+
-- Only implemented for polygon-over-point
-- Availability: 1.5.0
CREATE OR REPLACE FUNCTION ST_CoveredBy(geography, geography)
AS 'SELECT $1 && $2 AND _ST_Covers($2, $1)'
LANGUAGE 'SQL' IMMUTABLE STRICT;
+-- Availability: 1.5.0 - this is just a hack to prevent unknown from causing ambiguous name because of geography
+-- TODO Remove in 2.0
+CREATE OR REPLACE FUNCTION ST_CoveredBy(text, text)
+ RETURNS boolean AS
+ $$ SELECT ST_CoveredBy($1::geometry, $2::geometry); $$
+ LANGUAGE 'SQL' IMMUTABLE STRICT;
+
-- Availability: 1.5.0
CREATE OR REPLACE FUNCTION ST_Intersects(geography, geography)
RETURNS boolean
AS 'SELECT $1 && $2 AND _ST_Distance($1, $2, 0.0, false) < 0.00001'
LANGUAGE 'SQL' IMMUTABLE STRICT;
+-- Availability: 1.5.0 - this is just a hack to prevent unknown from causing ambiguous name because of geography
+-- TODO Remove in 2.0
+CREATE OR REPLACE FUNCTION ST_Intersects(text, text)
+ RETURNS boolean AS
+ $$ SELECT ST_Intersects($1::geometry, $2::geometry); $$
+ LANGUAGE 'SQL' IMMUTABLE STRICT;
+
-- Availability: 1.5.0
CREATE OR REPLACE FUNCTION _ST_BestSRID(geography, geography)
RETURNS integer
AS 'SELECT geography(ST_Transform(ST_Buffer(ST_Transform(geometry($1), _ST_BestSRID($1)), $2), 4326))'
LANGUAGE 'SQL' IMMUTABLE STRICT;
+-- Availability: 1.5.0 - this is just a hack to prevent unknown from causing ambiguous name because of geography
+-- TODO Remove in 2.0
+CREATE OR REPLACE FUNCTION ST_Buffer(text, float8)
+ RETURNS geometry AS
+ $$ SELECT ST_Buffer($1::geometry, $2); $$
+ LANGUAGE 'SQL' IMMUTABLE STRICT;
+
-- Availability: 1.5.0
CREATE OR REPLACE FUNCTION ST_Intersection(geography, geography)
RETURNS geography
AS 'SELECT geography(ST_Transform(ST_Intersection(ST_Transform(geometry($1), _ST_BestSRID($1, $2)), ST_Transform(geometry($2), _ST_BestSRID($1, $2))), 4326))'
LANGUAGE 'SQL' IMMUTABLE STRICT;
+-- Availability: 1.5.0 - this is just a hack to prevent unknown from causing ambiguous name because of geography
+-- TODO Remove in 2.0
+CREATE OR REPLACE FUNCTION ST_Intersection(text, text)
+ RETURNS geometry AS
+ $$ SELECT ST_Intersection($1::geometry, $2::geometry); $$
+ LANGUAGE 'SQL' IMMUTABLE STRICT;
+
-- ---------- ---------- ---------- ---------- ---------- ---------- ----------
COMMIT;