summaryrefslogtreecommitdiff
path: root/sql/item_geofunc.h
diff options
context:
space:
mode:
Diffstat (limited to 'sql/item_geofunc.h')
-rw-r--r--sql/item_geofunc.h22
1 files changed, 15 insertions, 7 deletions
diff --git a/sql/item_geofunc.h b/sql/item_geofunc.h
index c4cf683fa9a..72dddee1fba 100644
--- a/sql/item_geofunc.h
+++ b/sql/item_geofunc.h
@@ -281,9 +281,6 @@ public:
Item_func_spatial_rel(Item *a, Item *b, enum Functype sp_rel)
:Item_bool_func(a, b), spatial_rel(sp_rel)
{ }
- Item_func_spatial_rel(Item *a, Item *b, Item *c, enum Functype sp_rel)
- :Item_bool_func(a, b, c), spatial_rel(sp_rel)
- { }
enum Functype functype() const { return spatial_rel; }
enum Functype rev_functype() const { return spatial_rel; }
bool is_null() { (void) val_int(); return null_value; }
@@ -314,19 +311,30 @@ class Item_func_spatial_precise_rel: public Item_func_spatial_rel
Gcalc_heap collector;
Gcalc_scan_iterator scan_it;
Gcalc_function func;
- String tmp_matrix;
public:
Item_func_spatial_precise_rel(Item *a, Item *b, enum Functype sp_rel)
:Item_func_spatial_rel(a, b, sp_rel), collector()
{ }
- Item_func_spatial_precise_rel(Item *a, Item *b, Item *matrix)
- :Item_func_spatial_rel(a, b, matrix, SP_RELATE_FUNC)
- { }
longlong val_int();
const char *func_name() const;
};
+class Item_func_spatial_relate: public Item_bool_func
+{
+ Gcalc_heap collector;
+ Gcalc_scan_iterator scan_it;
+ Gcalc_function func;
+ String tmp_value1, tmp_value2, tmp_matrix;
+public:
+ Item_func_spatial_relate(Item *a, Item *b, Item *matrix)
+ :Item_bool_func(a, b, matrix)
+ { }
+ longlong val_int();
+ const char *func_name() const { return "st_relate"; }
+};
+
+
/*
Spatial operations
*/