|
MobilityDB 1.1
|
#include "pg_general/temporal_supportfn.h"#include <assert.h>#include <postgres.h>#include <funcapi.h>#include <access/htup_details.h>#include <access/stratnum.h>#include <catalog/namespace.h>#include <catalog/pg_opfamily.h>#include <catalog/pg_type_d.h>#include <catalog/pg_am_d.h>#include <nodes/supportnodes.h>#include <nodes/nodeFuncs.h>#include <nodes/makefuncs.h>#include <optimizer/optimizer.h>#include <parser/parse_func.h>#include <utils/array.h>#include <utils/builtins.h>#include <utils/lsyscache.h>#include <utils/numeric.h>#include <utils/syscache.h>#include "general/meos_catalog.h"#include "pg_general/meos_catalog.h"#include "pg_general/temporal_selfuncs.h"#include "pg_point/tpoint_selfuncs.h"
Enumerations | |
| enum | TEMPORAL_FUNCTION_IDX { EVER_EQ_IDX = 1 , ALWAYS_EQ_IDX = 2 , ECONTAINS_IDX = 3 , EDISJOINT_IDX = 4 , EINTERSECTS_IDX = 5 , ETOUCHES_IDX = 6 , EDWITHIN_IDX = 7 } |
| Index support functions for temporal types. More... | |
Functions | |
| bool | func_needs_index (Oid funcid, const IndexableFunction *idxfns, IndexableFunction *result) |
| Is the function calling the support function one of those we will enhance with index ops? If so, copy the metadata for the function into idxfn and return true. More... | |
| static FuncExpr * | makeExpandExpr (Node *arg, Node *radiusarg, Oid argoid, Oid retoid, Oid callingfunc) |
| To apply the "expand for radius search" pattern we need access to the expand function, so lookup the function Oid using the function name and type number. More... | |
| Oid | opFamilyAmOid (Oid opfamilyoid) |
| We only add index enhancements for indexes that support range-based searches like the && operator), so only implementations based on GIST and SPGIST. More... | |
| static int16 | temporal_get_strategy_by_type (meosType temptype, uint16_t index) |
| PGDLLEXPORT Datum | Temporal_supportfn (PG_FUNCTION_ARGS) |
| Support function for temporal types. More... | |
| Datum | temporal_supportfn_ext (FunctionCallInfo fcinfo, TemporalFamily tempfamily) |
| For functions that we want enhanced with spatial index lookups, add this support function to the SQL function definition, for example: More... | |
| PGDLLEXPORT Datum | Tnumber_supportfn (PG_FUNCTION_ARGS) |
| Support function for temporal number types. More... | |
| PGDLLEXPORT Datum | Tpoint_supportfn (PG_FUNCTION_ARGS) |
| Support function for temporal number types. More... | |
| static meosType | type_to_bbox (meosType type) |
| Transform the constant into a period. More... | |
Variables | |
| static const IndexableFunction | TemporalIndexableFunctions [] |
| static const int16 | TemporalStrategies [] |
| static const IndexableFunction | TNumberIndexableFunctions [] |
| static const int16 | TNumberStrategies [] |
| static const IndexableFunction | TPointIndexableFunctions [] |
| static const int16 | TPointStrategies [] |