Changeset: ca4a1c647adf for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=ca4a1c647adf
Modified Files:
geom/sql/40_geom.sql
sql/backends/monet5/generator/90_generator.sql
sql/backends/monet5/generator/90_generator_hge.sql
sql/scripts/09_like.sql
sql/scripts/10_math.sql
sql/scripts/11_times.sql
sql/scripts/12_url.sql
sql/scripts/13_date.sql
sql/scripts/14_inet.sql
sql/scripts/15_querylog.sql
sql/scripts/16_tracelog.sql
sql/scripts/17_temporal.sql
sql/scripts/18_index.sql
sql/scripts/20_vacuum.sql
sql/scripts/21_dependency_functions.sql
sql/scripts/22_clients.sql
sql/scripts/23_skyserver.sql
sql/scripts/25_debug.sql
sql/scripts/26_sysmon.sql
sql/scripts/27_rejects.sql
sql/scripts/39_analytics.sql
sql/scripts/39_analytics_hge.sql
sql/scripts/40_json.sql
sql/scripts/40_json_hge.sql
sql/scripts/41_md5sum.sql
sql/scripts/45_uuid.sql
sql/scripts/46_profiler.sql
sql/scripts/51_sys_schema_extension.sql
sql/scripts/60_wlcr.sql
sql/scripts/75_storagemodel.sql
sql/scripts/80_statistics.sql
sql/server/rel_psm.c
sql/server/sql_parser.y
sql/server/sql_scan.c
Branch: system-functions
Log Message:
Implemented new syntax CREATE SYSTEM ((FILTER)
FUNCTION|AGGREGATE|PROCEDURE|LOADER).
diffs (truncated from 2624 to 300 lines):
diff --git a/geom/sql/40_geom.sql b/geom/sql/40_geom.sql
--- a/geom/sql/40_geom.sql
+++ b/geom/sql/40_geom.sql
@@ -6,11 +6,11 @@
-- make sure you load the geom module before loading this sql module
-CREATE FUNCTION Has_Z(info integer) RETURNS integer EXTERNAL NAME geom."hasZ";
+CREATE SYSTEM FUNCTION Has_Z(info integer) RETURNS integer EXTERNAL NAME
geom."hasZ";
GRANT EXECUTE ON FUNCTION Has_Z(integer) TO PUBLIC;
-CREATE FUNCTION Has_M(info integer) RETURNS integer EXTERNAL NAME geom."hasM";
+CREATE SYSTEM FUNCTION Has_M(info integer) RETURNS integer EXTERNAL NAME
geom."hasM";
GRANT EXECUTE ON FUNCTION Has_M(integer) TO PUBLIC;
-CREATE FUNCTION get_type(info integer, format integer) RETURNS string EXTERNAL
NAME geom."getType";
+CREATE SYSTEM FUNCTION get_type(info integer, format integer) RETURNS string
EXTERNAL NAME geom."getType";
GRANT EXECUTE ON FUNCTION get_type(integer, integer) TO PUBLIC;
@@ -3959,34 +3959,34 @@ 900913|spatialreferencing.org|900913|PRO
-- Envelope():Geometry
-- as that returns Geometry objects, and we prefer the explicit mbr's
-- minimum bounding rectangle (mbr)
-CREATE FUNCTION mbr(geom Geometry) RETURNS mbr external name geom."mbr";
+CREATE SYSTEM FUNCTION mbr(geom Geometry) RETURNS mbr external name geom."mbr";
GRANT EXECUTE ON FUNCTION mbr(Geometry) TO PUBLIC;
-CREATE FUNCTION ST_Overlaps(box1 mbr, box2 mbr) RETURNS boolean EXTERNAL NAME
geom."mbrOverlaps";
+CREATE SYSTEM FUNCTION ST_Overlaps(box1 mbr, box2 mbr) RETURNS boolean
EXTERNAL NAME geom."mbrOverlaps";
GRANT EXECUTE ON FUNCTION ST_Overlaps(mbr, mbr) TO PUBLIC;
-CREATE FUNCTION ST_Contains(box1 mbr, box2 mbr) RETURNS boolean EXTERNAL NAME
geom."mbrContains";
+CREATE SYSTEM FUNCTION ST_Contains(box1 mbr, box2 mbr) RETURNS boolean
EXTERNAL NAME geom."mbrContains";
GRANT EXECUTE ON FUNCTION ST_Contains(mbr, mbr) TO PUBLIC;
-CREATE FUNCTION ST_Equals(box1 mbr, box2 mbr) RETURNS boolean EXTERNAL NAME
geom."mbrEqual";
+CREATE SYSTEM FUNCTION ST_Equals(box1 mbr, box2 mbr) RETURNS boolean EXTERNAL
NAME geom."mbrEqual";
GRANT EXECUTE ON FUNCTION ST_Equals(mbr, mbr) TO PUBLIC;
-CREATE FUNCTION ST_Distance(box1 mbr, box2 mbr) RETURNS double EXTERNAL NAME
geom."mbrDistance";
+CREATE SYSTEM FUNCTION ST_Distance(box1 mbr, box2 mbr) RETURNS double EXTERNAL
NAME geom."mbrDistance";
GRANT EXECUTE ON FUNCTION ST_Distance(mbr, mbr) TO PUBLIC;
---CREATE FUNCTION mbrOverlapOrLeft(box1 mbr, box2 mbr) RETURNS boolean
external name geom."mbrOverlapOrLeft";
---CREATE FUNCTION mbrOverlapOrBelow(box1 mbr, box2 mbr) RETURNS boolean
external name geom."mbrOverlapOrBelow";
---CREATE FUNCTION mbrOverlapOrRight(box1 mbr, box2 mbr) RETURNS boolean
external name geom."mbrOverlapOrRight";
---CREATE FUNCTION mbrLeft(box1 mbr, box2 mbr) RETURNS boolean external name
geom."mbrLeft";
---CREATE FUNCTION mbrBelow(box1 mbr, box2 mbr) RETURNS boolean external name
geom."mbrBelow";
---CREATE FUNCTION mbrEqual(box1 mbr, box2 mbr) RETURNS boolean external name
geom."mbrEqual";
---CREATE FUNCTION mbrRight(box1 mbr, box2 mbr) RETURNS boolean external name
geom."mbrRight";
---CREATE FUNCTION mbrContained(box1 mbr, box2 mbr) RETURNS boolean external
name geom."mbrContained";
---CREATE FUNCTION mbrOverlapOrAbove(box1 mbr, box2 mbr) RETURNS boolean
external name geom."mbrOverlapOrAbove";
---CREATE FUNCTION mbrAbove(box1 mbr, box2 mbr) RETURNS boolean external name
geom."mbrAbove";
+--CREATE SYSTEM FUNCTION mbrOverlapOrLeft(box1 mbr, box2 mbr) RETURNS boolean
external name geom."mbrOverlapOrLeft";
+--CREATE SYSTEM FUNCTION mbrOverlapOrBelow(box1 mbr, box2 mbr) RETURNS boolean
external name geom."mbrOverlapOrBelow";
+--CREATE SYSTEM FUNCTION mbrOverlapOrRight(box1 mbr, box2 mbr) RETURNS boolean
external name geom."mbrOverlapOrRight";
+--CREATE SYSTEM FUNCTION mbrLeft(box1 mbr, box2 mbr) RETURNS boolean external
name geom."mbrLeft";
+--CREATE SYSTEM FUNCTION mbrBelow(box1 mbr, box2 mbr) RETURNS boolean external
name geom."mbrBelow";
+--CREATE SYSTEM FUNCTION mbrEqual(box1 mbr, box2 mbr) RETURNS boolean external
name geom."mbrEqual";
+--CREATE SYSTEM FUNCTION mbrRight(box1 mbr, box2 mbr) RETURNS boolean external
name geom."mbrRight";
+--CREATE SYSTEM FUNCTION mbrContained(box1 mbr, box2 mbr) RETURNS boolean
external name geom."mbrContained";
+--CREATE SYSTEM FUNCTION mbrOverlapOrAbove(box1 mbr, box2 mbr) RETURNS boolean
external name geom."mbrOverlapOrAbove";
+--CREATE SYSTEM FUNCTION mbrAbove(box1 mbr, box2 mbr) RETURNS boolean external
name geom."mbrAbove";
-------------------------------------------------------------------------
------------------------- Management Functions- -------------------------
-------------------------------------------------------------------------
---CREATE PROCEDURE AddGeometryColumn(table_name string, column_name string,
srid integer, geometryType string, dimension integer)
---CREATE FUNCTION AddGeometryColumn(table_name string, column_name string,
srid integer, geometryType string, dimension integer) RETURNS string
+--CREATE SYSTEM PROCEDURE AddGeometryColumn(table_name string, column_name
string, srid integer, geometryType string, dimension integer)
+--CREATE SYSTEM FUNCTION AddGeometryColumn(table_name string, column_name
string, srid integer, geometryType string, dimension integer) RETURNS string
--BEGIN
-- DECLARE column_type string;
-- SET column_type = concat('geometry( ', geometryType);
@@ -3998,12 +3998,12 @@ GRANT EXECUTE ON FUNCTION ST_Distance(mb
-- RETURN column_type;
--END;
---CREATE PROCEDURE t(table_name string, column_name string, column_type string)
+--CREATE SYSTEM PROCEDURE t(table_name string, column_name string, column_type
string)
--BEGIN
-- ALTER TABLE table_name ADD column_name;
--END;
---CREATE FUNCTION t(table_name string, column_name string, srid integer, type
string, dimension integer) RETURNS string
+--CREATE SYSTEM FUNCTION t(table_name string, column_name string, srid
integer, type string, dimension integer) RETURNS string
--BEGIN
-- EXECUTE PROCEDURE AddGeometryColumn(table_name, column_name, srid,
type, dimension);
-- RETURN '';
@@ -4016,139 +4016,139 @@ GRANT EXECUTE ON FUNCTION ST_Distance(mb
---------------------------------
--Construct a Geometry from a WKT
-CREATE FUNCTION ST_WKTToSQL(wkt string) RETURNS Geometry external name
geom."GeomFromText";
+CREATE SYSTEM FUNCTION ST_WKTToSQL(wkt string) RETURNS Geometry external name
geom."GeomFromText";
GRANT EXECUTE ON FUNCTION ST_WKTToSQL(string) TO PUBLIC;
--Construct a Geometry from a WKB
-CREATE FUNCTION ST_WKBToSQL(geom string) RETURNS Geometry EXTERNAL NAME
geom."FromBinary";
+CREATE SYSTEM FUNCTION ST_WKBToSQL(geom string) RETURNS Geometry EXTERNAL NAME
geom."FromBinary";
GRANT EXECUTE ON FUNCTION ST_WKBToSQL(string) TO PUBLIC;
--Obtaining WKT from Geometry
-CREATE FUNCTION ST_AsText(geom Geometry) RETURNS string EXTERNAL NAME
geom."AsText";
+CREATE SYSTEM FUNCTION ST_AsText(geom Geometry) RETURNS string EXTERNAL NAME
geom."AsText";
GRANT EXECUTE ON FUNCTION ST_AsText(Geometry) TO PUBLIC;
--Obtainig WKB from Geometry
-CREATE FUNCTION ST_AsBinary(geom Geometry) RETURNS string EXTERNAL NAME
geom."AsBinary";
+CREATE SYSTEM FUNCTION ST_AsBinary(geom Geometry) RETURNS string EXTERNAL NAME
geom."AsBinary";
GRANT EXECUTE ON FUNCTION ST_AsBinary(Geometry) TO PUBLIC;
--Functions on Geometries
-CREATE FUNCTION ST_Dimension(geom Geometry) RETURNS integer EXTERNAL NAME
geom."Dimension";
+CREATE SYSTEM FUNCTION ST_Dimension(geom Geometry) RETURNS integer EXTERNAL
NAME geom."Dimension";
GRANT EXECUTE ON FUNCTION ST_Dimension(Geometry) TO PUBLIC;
-CREATE FUNCTION ST_GeometryType(geom Geometry) RETURNS string EXTERNAL NAME
geom."GeometryType2";
+CREATE SYSTEM FUNCTION ST_GeometryType(geom Geometry) RETURNS string EXTERNAL
NAME geom."GeometryType2";
GRANT EXECUTE ON FUNCTION ST_GeometryType(Geometry) TO PUBLIC;
-CREATE FUNCTION ST_SRID(geom Geometry) RETURNS integer EXTERNAL NAME
geom."getSRID";
+CREATE SYSTEM FUNCTION ST_SRID(geom Geometry) RETURNS integer EXTERNAL NAME
geom."getSRID";
GRANT EXECUTE ON FUNCTION ST_SRID(Geometry) TO PUBLIC;
-CREATE FUNCTION ST_SetSRID(geom Geometry, srid integer) RETURNS Geometry
EXTERNAL NAME geom."setSRID";
+CREATE SYSTEM FUNCTION ST_SetSRID(geom Geometry, srid integer) RETURNS
Geometry EXTERNAL NAME geom."setSRID";
GRANT EXECUTE ON FUNCTION ST_SetSRID(Geometry, integer) TO PUBLIC;
-CREATE FUNCTION ST_IsEmpty(geom Geometry) RETURNS boolean EXTERNAL NAME
geom."IsEmpty";
+CREATE SYSTEM FUNCTION ST_IsEmpty(geom Geometry) RETURNS boolean EXTERNAL NAME
geom."IsEmpty";
GRANT EXECUTE ON FUNCTION ST_IsEmpty(Geometry) TO PUBLIC;
-CREATE FUNCTION ST_IsSimple(geom Geometry) RETURNS boolean EXTERNAL NAME
geom."IsSimple";
+CREATE SYSTEM FUNCTION ST_IsSimple(geom Geometry) RETURNS boolean EXTERNAL
NAME geom."IsSimple";
GRANT EXECUTE ON FUNCTION ST_IsSimple(Geometry) TO PUBLIC;
-CREATE FUNCTION ST_Boundary(geom Geometry) RETURNS Geometry EXTERNAL NAME
geom."Boundary";
+CREATE SYSTEM FUNCTION ST_Boundary(geom Geometry) RETURNS Geometry EXTERNAL
NAME geom."Boundary";
GRANT EXECUTE ON FUNCTION ST_Boundary(Geometry) TO PUBLIC;
-CREATE FUNCTION ST_Envelope(geom Geometry) RETURNS Geometry EXTERNAL NAME
geom."Envelope";
+CREATE SYSTEM FUNCTION ST_Envelope(geom Geometry) RETURNS Geometry EXTERNAL
NAME geom."Envelope";
GRANT EXECUTE ON FUNCTION ST_Envelope(Geometry) TO PUBLIC;
--Functions testing spatial relations between Geometries
-CREATE FUNCTION ST_Equals(geom1 Geometry, geom2 Geometry) RETURNS boolean
EXTERNAL NAME geom."Equals";
+CREATE SYSTEM FUNCTION ST_Equals(geom1 Geometry, geom2 Geometry) RETURNS
boolean EXTERNAL NAME geom."Equals";
GRANT EXECUTE ON FUNCTION ST_Equals(Geometry, Geometry) TO PUBLIC;
-CREATE FUNCTION ST_Disjoint(geom1 Geometry, geom2 Geometry) RETURNS boolean
EXTERNAL NAME geom."Disjoint";
+CREATE SYSTEM FUNCTION ST_Disjoint(geom1 Geometry, geom2 Geometry) RETURNS
boolean EXTERNAL NAME geom."Disjoint";
GRANT EXECUTE ON FUNCTION ST_Disjoint(Geometry, Geometry) TO PUBLIC;
-CREATE FUNCTION ST_Intersects(geom1 Geometry, geom2 Geometry) RETURNS boolean
EXTERNAL NAME geom."Intersects";
+CREATE SYSTEM FUNCTION ST_Intersects(geom1 Geometry, geom2 Geometry) RETURNS
boolean EXTERNAL NAME geom."Intersects";
GRANT EXECUTE ON FUNCTION ST_Intersects(Geometry, Geometry) TO PUBLIC;
-CREATE FUNCTION ST_Touches(geom1 Geometry, geom2 Geometry) RETURNS boolean
EXTERNAL NAME geom."Touches";
+CREATE SYSTEM FUNCTION ST_Touches(geom1 Geometry, geom2 Geometry) RETURNS
boolean EXTERNAL NAME geom."Touches";
GRANT EXECUTE ON FUNCTION ST_Touches(Geometry, Geometry) TO PUBLIC;
-CREATE FUNCTION ST_Crosses(geom1 Geometry, geom2 Geometry) RETURNS boolean
EXTERNAL NAME geom."Crosses";
+CREATE SYSTEM FUNCTION ST_Crosses(geom1 Geometry, geom2 Geometry) RETURNS
boolean EXTERNAL NAME geom."Crosses";
GRANT EXECUTE ON FUNCTION ST_Crosses(Geometry, Geometry) TO PUBLIC;
-CREATE FUNCTION ST_Within(geom1 Geometry, geom2 Geometry) RETURNS boolean
EXTERNAL NAME geom."Within";
+CREATE SYSTEM FUNCTION ST_Within(geom1 Geometry, geom2 Geometry) RETURNS
boolean EXTERNAL NAME geom."Within";
GRANT EXECUTE ON FUNCTION ST_Within(Geometry, Geometry) TO PUBLIC;
-CREATE FUNCTION ST_Contains(geom1 Geometry, geom2 Geometry) RETURNS boolean
EXTERNAL NAME geom."Contains";
+CREATE SYSTEM FUNCTION ST_Contains(geom1 Geometry, geom2 Geometry) RETURNS
boolean EXTERNAL NAME geom."Contains";
GRANT EXECUTE ON FUNCTION ST_Contains(Geometry, Geometry) TO PUBLIC;
-CREATE FUNCTION ST_Overlaps(geom1 Geometry, geom2 Geometry) RETURNS boolean
EXTERNAL NAME geom."Overlaps";
+CREATE SYSTEM FUNCTION ST_Overlaps(geom1 Geometry, geom2 Geometry) RETURNS
boolean EXTERNAL NAME geom."Overlaps";
GRANT EXECUTE ON FUNCTION ST_Overlaps(Geometry, Geometry) TO PUBLIC;
-CREATE FUNCTION ST_Relate(geom1 Geometry, geom2 Geometry,
intersection_matrix_pattern string) RETURNS boolean EXTERNAL NAME geom."Relate";
+CREATE SYSTEM FUNCTION ST_Relate(geom1 Geometry, geom2 Geometry,
intersection_matrix_pattern string) RETURNS boolean EXTERNAL NAME geom."Relate";
GRANT EXECUTE ON FUNCTION ST_Relate(Geometry, Geometry, string) TO PUBLIC;
--Distance between Geometries
-CREATE FUNCTION ST_Distance(geom1 Geometry, geom2 Geometry) RETURNS double
EXTERNAL NAME geom."Distance";
+CREATE SYSTEM FUNCTION ST_Distance(geom1 Geometry, geom2 Geometry) RETURNS
double EXTERNAL NAME geom."Distance";
GRANT EXECUTE ON FUNCTION ST_Distance(Geometry, Geometry) TO PUBLIC;
--Functions that implement spatial operators
-CREATE FUNCTION ST_Intersection(geom1 Geometry, geom2 Geometry) RETURNS
Geometry EXTERNAL NAME geom."Intersection";
+CREATE SYSTEM FUNCTION ST_Intersection(geom1 Geometry, geom2 Geometry) RETURNS
Geometry EXTERNAL NAME geom."Intersection";
GRANT EXECUTE ON FUNCTION ST_Intersection(Geometry, Geometry) TO PUBLIC;
-CREATE FUNCTION ST_Difference(geom1 Geometry, geom2 Geometry) RETURNS Geometry
EXTERNAL NAME geom."Difference";
+CREATE SYSTEM FUNCTION ST_Difference(geom1 Geometry, geom2 Geometry) RETURNS
Geometry EXTERNAL NAME geom."Difference";
GRANT EXECUTE ON FUNCTION ST_Difference(Geometry, Geometry) TO PUBLIC;
-CREATE FUNCTION ST_Union(geom1 Geometry, geom2 Geometry) RETURNS Geometry
EXTERNAL NAME geom."Union";
+CREATE SYSTEM FUNCTION ST_Union(geom1 Geometry, geom2 Geometry) RETURNS
Geometry EXTERNAL NAME geom."Union";
GRANT EXECUTE ON FUNCTION ST_Union(Geometry, Geometry) TO PUBLIC;
-CREATE AGGREGATE ST_Union(geom Geometry) RETURNS Geometry external name
geom."Union";
-CREATE FUNCTION ST_SymDifference(geom1 Geometry, geom2 Geometry) RETURNS
Geometry EXTERNAL NAME geom."SymDifference";
+CREATE SYSTEM AGGREGATE ST_Union(geom Geometry) RETURNS Geometry external name
geom."Union";
+CREATE SYSTEM FUNCTION ST_SymDifference(geom1 Geometry, geom2 Geometry)
RETURNS Geometry EXTERNAL NAME geom."SymDifference";
GRANT EXECUTE ON FUNCTION ST_SymDifference(Geometry, Geometry) TO PUBLIC;
-CREATE FUNCTION ST_Buffer(geom Geometry, radius double) RETURNS Geometry
EXTERNAL NAME geom."Buffer";
+CREATE SYSTEM FUNCTION ST_Buffer(geom Geometry, radius double) RETURNS
Geometry EXTERNAL NAME geom."Buffer";
GRANT EXECUTE ON FUNCTION ST_Buffer(Geometry, double) TO PUBLIC;
-CREATE FUNCTION ST_ConvexHull(geom Geometry) RETURNS Geometry EXTERNAL NAME
geom."ConvexHull";
+CREATE SYSTEM FUNCTION ST_ConvexHull(geom Geometry) RETURNS Geometry EXTERNAL
NAME geom."ConvexHull";
GRANT EXECUTE ON FUNCTION ST_ConvexHull(Geometry) TO PUBLIC;
--Functions on Point
-CREATE FUNCTION ST_X(geom Geometry) RETURNS double EXTERNAL NAME geom."X";
+CREATE SYSTEM FUNCTION ST_X(geom Geometry) RETURNS double EXTERNAL NAME
geom."X";
GRANT EXECUTE ON FUNCTION ST_X(Geometry) TO PUBLIC;
-CREATE FUNCTION ST_Y(geom Geometry) RETURNS double EXTERNAL NAME geom."Y";
+CREATE SYSTEM FUNCTION ST_Y(geom Geometry) RETURNS double EXTERNAL NAME
geom."Y";
GRANT EXECUTE ON FUNCTION ST_Y(Geometry) TO PUBLIC;
-CREATE FUNCTION ST_Z(geom Geometry) RETURNS double EXTERNAL NAME geom."Z";
+CREATE SYSTEM FUNCTION ST_Z(geom Geometry) RETURNS double EXTERNAL NAME
geom."Z";
GRANT EXECUTE ON FUNCTION ST_Z(Geometry) TO PUBLIC;
--Functions on Curve (i.e. LineString)
-CREATE FUNCTION ST_StartPoint(geom Geometry) RETURNS Geometry EXTERNAL NAME
geom."StartPoint";
+CREATE SYSTEM FUNCTION ST_StartPoint(geom Geometry) RETURNS Geometry EXTERNAL
NAME geom."StartPoint";
GRANT EXECUTE ON FUNCTION ST_StartPoint(Geometry) TO PUBLIC;
-CREATE FUNCTION ST_EndPoint(geom Geometry) RETURNS Geometry EXTERNAL NAME
geom."EndPoint";
+CREATE SYSTEM FUNCTION ST_EndPoint(geom Geometry) RETURNS Geometry EXTERNAL
NAME geom."EndPoint";
GRANT EXECUTE ON FUNCTION ST_EndPoint(Geometry) TO PUBLIC;
-CREATE FUNCTION ST_IsRing(geom Geometry) RETURNS boolean EXTERNAL NAME
geom."IsRing";
+CREATE SYSTEM FUNCTION ST_IsRing(geom Geometry) RETURNS boolean EXTERNAL NAME
geom."IsRing";
GRANT EXECUTE ON FUNCTION ST_IsRing(Geometry) TO PUBLIC;
-CREATE FUNCTION ST_Length(geom Geometry) RETURNS double EXTERNAL NAME
geom."Length"; --valid also for MultiCurve
+CREATE SYSTEM FUNCTION ST_Length(geom Geometry) RETURNS double EXTERNAL NAME
geom."Length"; --valid also for MultiCurve
GRANT EXECUTE ON FUNCTION ST_Length(Geometry) TO PUBLIC;
-CREATE FUNCTION ST_IsClosed(geom Geometry) RETURNS boolean EXTERNAL NAME
geom."IsClosed"; --valid also for MultiCurve
+CREATE SYSTEM FUNCTION ST_IsClosed(geom Geometry) RETURNS boolean EXTERNAL
NAME geom."IsClosed"; --valid also for MultiCurve
GRANT EXECUTE ON FUNCTION ST_IsClosed(Geometry) TO PUBLIC;
--Functions on LineString
-CREATE FUNCTION ST_NumPoints(geom Geometry) RETURNS integer EXTERNAL NAME
geom."NumPoints";
+CREATE SYSTEM FUNCTION ST_NumPoints(geom Geometry) RETURNS integer EXTERNAL
NAME geom."NumPoints";
GRANT EXECUTE ON FUNCTION ST_NumPoints(Geometry) TO PUBLIC;
-CREATE FUNCTION ST_PointN(geom Geometry, positionNum integer) RETURNS Geometry
EXTERNAL NAME geom."PointN";
+CREATE SYSTEM FUNCTION ST_PointN(geom Geometry, positionNum integer) RETURNS
Geometry EXTERNAL NAME geom."PointN";
GRANT EXECUTE ON FUNCTION ST_PointN(Geometry, integer) TO PUBLIC;
--Functions on Surface (i.e. Polygon and Polyhedral Surface) and MultiSurface
-CREATE FUNCTION ST_Centroid(geom Geometry) RETURNS Geometry EXTERNAL NAME
geom."Centroid";
+CREATE SYSTEM FUNCTION ST_Centroid(geom Geometry) RETURNS Geometry EXTERNAL
NAME geom."Centroid";
GRANT EXECUTE ON FUNCTION ST_Centroid(Geometry) TO PUBLIC;
-CREATE FUNCTION ST_PointOnSurface(geom Geometry) RETURNS Geometry EXTERNAL
NAME geom."PointOnSurface";
+CREATE SYSTEM FUNCTION ST_PointOnSurface(geom Geometry) RETURNS Geometry
EXTERNAL NAME geom."PointOnSurface";
GRANT EXECUTE ON FUNCTION ST_PointOnSurface(Geometry) TO PUBLIC;
-CREATE FUNCTION ST_Area(geom Geometry) RETURNS double EXTERNAL NAME
geom."Area";
+CREATE SYSTEM FUNCTION ST_Area(geom Geometry) RETURNS double EXTERNAL NAME
geom."Area";
GRANT EXECUTE ON FUNCTION ST_Area(Geometry) TO PUBLIC;
--Functions on Polygon
-CREATE FUNCTION ST_ExteriorRing(geom Geometry) RETURNS Geometry EXTERNAL NAME
geom."ExteriorRing";
+CREATE SYSTEM FUNCTION ST_ExteriorRing(geom Geometry) RETURNS Geometry
EXTERNAL NAME geom."ExteriorRing";
GRANT EXECUTE ON FUNCTION ST_ExteriorRing(Geometry) TO PUBLIC;
-CREATE FUNCTION ST_SetExteriorRing(geom Geometry) RETURNS Geometry external
name geom."MakePolygon"; --gets a linestring and creates a polygon (postGIS:
ST_MakePolygon)
+CREATE SYSTEM FUNCTION ST_SetExteriorRing(geom Geometry) RETURNS Geometry
external name geom."MakePolygon"; --gets a linestring and creates a polygon
(postGIS: ST_MakePolygon)
GRANT EXECUTE ON FUNCTION ST_SetExteriorRing(Geometry) TO PUBLIC;
-CREATE FUNCTION ST_NumInteriorRing(geom Geometry) RETURNS integer EXTERNAL
NAME geom."NumInteriorRings";
+CREATE SYSTEM FUNCTION ST_NumInteriorRing(geom Geometry) RETURNS integer
EXTERNAL NAME geom."NumInteriorRings";
GRANT EXECUTE ON FUNCTION ST_NumInteriorRing(Geometry) TO PUBLIC;
-CREATE FUNCTION ST_InteriorRingN(geom Geometry, positionNum integer) RETURNS
Geometry EXTERNAL NAME geom."InteriorRingN";
+CREATE SYSTEM FUNCTION ST_InteriorRingN(geom Geometry, positionNum integer)
RETURNS Geometry EXTERNAL NAME geom."InteriorRingN";
GRANT EXECUTE ON FUNCTION ST_InteriorRingN(Geometry, integer) TO PUBLIC;
-CREATE FUNCTION ST_InteriorRings(geom Geometry) RETURNS GeometryA EXTERNAL
NAME geom."InteriorRings";
+CREATE SYSTEM FUNCTION ST_InteriorRings(geom Geometry) RETURNS GeometryA
EXTERNAL NAME geom."InteriorRings";
GRANT EXECUTE ON FUNCTION ST_InteriorRings(Geometry) TO PUBLIC;
---CREATE FUNCTION ST_SetInteriorRings(geom GeometryA) RETURNS Geometry
EXTERNAL NAME geom."SetInteriorRings"; --what is this function supposed to
do????
+--CREATE SYSTEM FUNCTION ST_SetInteriorRings(geom GeometryA) RETURNS Geometry
EXTERNAL NAME geom."SetInteriorRings"; --what is this function supposed to
do????
--Functions on GeomCollection
-CREATE FUNCTION ST_NumGeometries(geom Geometry) RETURNS integer EXTERNAL NAME
geom."NumGeometries";
+CREATE SYSTEM FUNCTION ST_NumGeometries(geom Geometry) RETURNS integer
EXTERNAL NAME geom."NumGeometries";
GRANT EXECUTE ON FUNCTION ST_NumGeometries(Geometry) TO PUBLIC;
-CREATE FUNCTION ST_GeometryN(geom Geometry, positionNum integer) RETURNS
Geometry EXTERNAL NAME geom."GeometryN";
+CREATE SYSTEM FUNCTION ST_GeometryN(geom Geometry, positionNum integer)
RETURNS Geometry EXTERNAL NAME geom."GeometryN";
GRANT EXECUTE ON FUNCTION ST_GeometryN(Geometry, integer) TO PUBLIC;
--Functions on Polyhedral Surfaces (a simple surface, consisting of a number
of Polygon pathes or facets)
---CREATE FUNCTION ST_Geometries(geom Geometry) RETURNS TABLE(geom Geometries)
EXTERNAL NAME geom."Geometries";
---CREATE FUNCTION NumSurfaces(geom Geometry) RETURNS integer EXTERNAL NAME
geom."NumSurfaces";
---CREATE FUNCTION Surface(positionNum integer) RETURNS Geometry EXTERNAL NAME
geom."SurfaceN";
+--CREATE SYSTEM FUNCTION ST_Geometries(geom Geometry) RETURNS TABLE(geom
Geometries) EXTERNAL NAME geom."Geometries";
+--CREATE SYSTEM FUNCTION NumSurfaces(geom Geometry) RETURNS integer EXTERNAL
NAME geom."NumSurfaces";
+--CREATE SYSTEM FUNCTION Surface(positionNum integer) RETURNS Geometry
EXTERNAL NAME geom."SurfaceN";
--from Part 1
-CREATE FUNCTION ST_NumPatches(geom Geometry) RETURNS integer --EXTERNAL NAME
geom."NumPatches"; --same with NumSurfaces
+CREATE SYSTEM FUNCTION ST_NumPatches(geom Geometry) RETURNS integer --EXTERNAL
NAME geom."NumPatches"; --same with NumSurfaces
BEGIN
RETURN SELECT ST_NumGeometries(geom);
END;
GRANT EXECUTE ON FUNCTION ST_NumPatches(Geometry) TO PUBLIC;
-CREATE FUNCTION ST_PatchN(geom Geometry, patchNum integer) RETURNS Geometry
--EXTERNAL NAME geom."PatchN" --same with Surface
+CREATE SYSTEM FUNCTION ST_PatchN(geom Geometry, patchNum integer) RETURNS
Geometry --EXTERNAL NAME geom."PatchN" --same with Surface
BEGIN
RETURN SELECT ST_GeometryN(geom, patchNum);
END;
@@ -4161,41 +4161,41 @@ GRANT EXECUTE ON FUNCTION ST_PatchN(Geom
-------------------------------------------
--Construct a Geometry from a WKT
-CREATE FUNCTION ST_GeomFromText(wkt string, srid integer) RETURNS Geometry
EXTERNAL NAME geom."GeomFromText";
+CREATE SYSTEM FUNCTION ST_GeomFromText(wkt string, srid integer) RETURNS
Geometry EXTERNAL NAME geom."GeomFromText";
GRANT EXECUTE ON FUNCTION ST_GeomFromText(string, integer) TO PUBLIC;
-CREATE FUNCTION ST_PointFromText(wkt string, srid integer) RETURNS Geometry
EXTERNAL NAME geom."PointFromText";
+CREATE SYSTEM FUNCTION ST_PointFromText(wkt string, srid integer) RETURNS
Geometry EXTERNAL NAME geom."PointFromText";
GRANT EXECUTE ON FUNCTION ST_PointFromText(string, integer) TO PUBLIC;
-CREATE FUNCTION ST_LineFromText(wkt string, srid integer) RETURNS Geometry
EXTERNAL NAME geom."LineFromText";
+CREATE SYSTEM FUNCTION ST_LineFromText(wkt string, srid integer) RETURNS
Geometry EXTERNAL NAME geom."LineFromText";
GRANT EXECUTE ON FUNCTION ST_LineFromText(string, integer) TO PUBLIC;
-CREATE FUNCTION ST_PolygonFromText(wkt string, srid integer) RETURNS Geometry
EXTERNAL NAME geom."PolygonFromText";
+CREATE SYSTEM FUNCTION ST_PolygonFromText(wkt string, srid integer) RETURNS
Geometry EXTERNAL NAME geom."PolygonFromText";
GRANT EXECUTE ON FUNCTION ST_PolygonFromText(string, integer) TO PUBLIC;
-CREATE FUNCTION ST_MPointFromText(wkt string, srid integer) RETURNS Geometry
EXTERNAL NAME geom."MPointFromText";
+CREATE SYSTEM FUNCTION ST_MPointFromText(wkt string, srid integer) RETURNS
Geometry EXTERNAL NAME geom."MPointFromText";
GRANT EXECUTE ON FUNCTION ST_MPointFromText(string, integer) TO PUBLIC;
-CREATE FUNCTION ST_MLineFromText(wkt string, srid integer) RETURNS Geometry
EXTERNAL NAME geom."MLineFromText";
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list