MobilityDB 1.3
Loading...
Searching...
No Matches
Functions
temporal_compops.c File Reference

Ever comparison operators (?=, ?<>, ?<, ?>, ?<=, ?>=), always comparison operators (%=, %<>, %<, %>, %<=, %>=), and temporal comparison operators (#=, #<>, #<, #>, #<=, #>=) More...

#include "temporal/temporal_compops.h"
#include <assert.h>
#include <postgres.h>
#include <fmgr.h>
#include <meos.h>
#include <meos_internal.h>
#include "temporal/temporal.h"
#include "temporal/type_util.h"
#include "pg_temporal/meos_catalog.h"
#include "pg_temporal/temporal.h"

Functions

Datum Always_eq_base_temporal (PG_FUNCTION_ARGS)
 Return true if a base value is always equal to a temporal value @sqlfn always_eq() More...
 
Datum Always_eq_temporal_base (PG_FUNCTION_ARGS)
 Return true if a temporal value is always equal to a base value @sqlfn always_eq() More...
 
Datum Always_eq_temporal_temporal (PG_FUNCTION_ARGS)
 Return true if the temporal values are always equal @sqlfn always_eq() More...
 
Datum Always_ge_base_temporal (PG_FUNCTION_ARGS)
 Return true if a base value is always greater than or equal to a temporal value @sqlfn always_ge() More...
 
Datum Always_ge_temporal_base (PG_FUNCTION_ARGS)
 Return true if a temporal value is always greater than or equal to a base value @sqlfn always_ge() More...
 
Datum Always_ge_temporal_temporal (PG_FUNCTION_ARGS)
 Return true if the first temporal value is always greater than or equal to the second one @sqlfn always_ge() More...
 
Datum Always_gt_base_temporal (PG_FUNCTION_ARGS)
 Return true if a base value is always greater than a temporal value @sqlfn always_gt() More...
 
Datum Always_gt_temporal_base (PG_FUNCTION_ARGS)
 Return true if a temporal value is always greater than a base value @sqlfn always_gt() More...
 
Datum Always_gt_temporal_temporal (PG_FUNCTION_ARGS)
 Return true if the first temporal value is always greater than the second one @sqlfn always_gt() More...
 
Datum Always_le_base_temporal (PG_FUNCTION_ARGS)
 Return true if a base value is always less than or equal to a temporal value @sqlfn always_le() More...
 
Datum Always_le_temporal_base (PG_FUNCTION_ARGS)
 Return true if a temporal value is always less than or equal to a base value @sqlfn always_le() More...
 
Datum Always_le_temporal_temporal (PG_FUNCTION_ARGS)
 Return true if the first temporal value is always less than or equal to the second one @sqlfn always_le() More...
 
Datum Always_lt_base_temporal (PG_FUNCTION_ARGS)
 Return true if a base value is always less than a temporal value @sqlfn always_lt() More...
 
Datum Always_lt_temporal_base (PG_FUNCTION_ARGS)
 Return true if a temporal value is always less than a base value @sqlfn always_lt() More...
 
Datum Always_lt_temporal_temporal (PG_FUNCTION_ARGS)
 Return true if the first temporal value is always less than the second one @sqlfn always_lt() More...
 
Datum Always_ne_base_temporal (PG_FUNCTION_ARGS)
 Return true if a base value is always different from a temporal value @sqlfn always_ne() More...
 
Datum Always_ne_temporal_base (PG_FUNCTION_ARGS)
 Return true if a temporal value is always different from a base value @sqlfn always_ne() More...
 
Datum Always_ne_temporal_temporal (PG_FUNCTION_ARGS)
 Return true if the temporal values are always different @sqlfn always_ne() More...
 
static Datum EAcomp_base_temporal (FunctionCallInfo fcinfo, int(*func)(Datum, const Temporal *))
 Generic function for the ever/always comparison operators. More...
 
static Datum EAcomp_temporal_base (FunctionCallInfo fcinfo, int(*func)(const Temporal *, Datum))
 Generic function for the ever/always comparison operators. More...
 
Datum EAcomp_temporal_temporal (FunctionCallInfo fcinfo, int(*func)(const Temporal *, const Temporal *))
 Generic function for the ever/always comparison operators. More...
 
Datum Ever_eq_base_temporal (PG_FUNCTION_ARGS)
 Return true if a base value is ever equal to a temporal value @sqlfn ever_eq() More...
 
Datum Ever_eq_temporal_base (PG_FUNCTION_ARGS)
 Return true if a temporal value is ever equal to a base value @sqlfn ever_eq() More...
 
Datum Ever_eq_temporal_temporal (PG_FUNCTION_ARGS)
 Return true if the temporal values are ever equal @sqlfn ever_eq() More...
 
Datum Ever_ge_base_temporal (PG_FUNCTION_ARGS)
 Return true if a base value is ever greater than or equal to a temporal value @sqlfn ever_ge() More...
 
Datum Ever_ge_temporal_base (PG_FUNCTION_ARGS)
 Return true if a temporal value is ever greater than or equal to a base value @sqlfn ever_ge() More...
 
Datum Ever_ge_temporal_temporal (PG_FUNCTION_ARGS)
 Return true if the first temporal value is ever greater than or equal to the second one @sqlfn ever_ge() More...
 
Datum Ever_gt_base_temporal (PG_FUNCTION_ARGS)
 Return true if a base value is ever greater than a temporal value @sqlfn ever_gt() More...
 
Datum Ever_gt_temporal_base (PG_FUNCTION_ARGS)
 Return true if a temporal value is ever greater than a base value @sqlfn ever_gt() More...
 
Datum Ever_gt_temporal_temporal (PG_FUNCTION_ARGS)
 Return true if the first temporal value is ever greater than the second one @sqlfn ever_gt() More...
 
Datum Ever_le_base_temporal (PG_FUNCTION_ARGS)
 Return true if a base value is ever less than or equal to a temporal value @sqlfn ever_le() More...
 
Datum Ever_le_temporal_base (PG_FUNCTION_ARGS)
 Return true if a temporal value is ever less than or equal to a base value @sqlfn ever_le() More...
 
Datum Ever_le_temporal_temporal (PG_FUNCTION_ARGS)
 Return true if the first temporal value is ever less than or equal to the second one @sqlfn ever_le() More...
 
Datum Ever_lt_base_temporal (PG_FUNCTION_ARGS)
 Return true if a base value is ever less than a temporal value @sqlfn ever_lt() More...
 
Datum Ever_lt_temporal_base (PG_FUNCTION_ARGS)
 Return true if a temporal value is ever less than a base value @sqlfn ever_lt() More...
 
Datum Ever_lt_temporal_temporal (PG_FUNCTION_ARGS)
 Return true if the first temporal value is ever less than the second one @sqlfn ever_lt() More...
 
Datum Ever_ne_base_temporal (PG_FUNCTION_ARGS)
 Return true if a base value is ever different from a temporal value @sqlfn ever_ne() More...
 
Datum Ever_ne_temporal_base (PG_FUNCTION_ARGS)
 Return true if a temporal value is ever different from a base value @sqlfn ever_ne() More...
 
Datum Ever_ne_temporal_temporal (PG_FUNCTION_ARGS)
 Return true if the temporal values are ever different @sqlfn ever_ne() More...
 
static Datum Tcomp_base_temporal (FunctionCallInfo fcinfo, Datum(*func)(Datum, Datum, meosType))
 Return the temporal comparison of a base value and a temporal value. More...
 
Datum Tcomp_temporal_base (FunctionCallInfo fcinfo, Datum(*func)(Datum, Datum, meosType))
 Return the temporal comparison of a temporal value and a base value. More...
 
Datum Tcomp_temporal_temporal (FunctionCallInfo fcinfo, Datum(*func)(Datum, Datum, meosType))
 Return the temporal comparison of two temporal values. More...
 
Datum Teq_base_temporal (PG_FUNCTION_ARGS)
 Return a temporal boolean that states whether a base value is equal to a temporal value @sqlfn temporal_teq() More...
 
Datum Teq_temporal_base (PG_FUNCTION_ARGS)
 Return a temporal boolean that states whether a temporal value is equal to a base value @sqlfn temporal_teq() More...
 
Datum Teq_temporal_temporal (PG_FUNCTION_ARGS)
 Return a temporal boolean that states whether the first temporal value is equal to the second one @sqlfn temporal_teq() More...
 
Datum Tge_base_temporal (PG_FUNCTION_ARGS)
 Return a temporal boolean that states whether a base value is greater than or equal to a temporal value @sqlfn temporal_tge() More...
 
Datum Tge_temporal_base (PG_FUNCTION_ARGS)
 Return a temporal boolean that states whether a temporal value is greater than or equal to a base value @sqlfn temporal_tge() More...
 
Datum Tge_temporal_temporal (PG_FUNCTION_ARGS)
 Return a temporal boolean that states whether the first temporal value is greater than or equal to the second one @sqlfn temporal_tge() More...
 
Datum Tgt_base_temporal (PG_FUNCTION_ARGS)
 Return a temporal boolean that states whether a base value is greater than a temporal value @sqlfn temporal_tgt() More...
 
Datum Tgt_temporal_base (PG_FUNCTION_ARGS)
 Return a temporal boolean that states whether a temporal value is greater than a base value @sqlfn temporal_tgt() More...
 
Datum Tgt_temporal_temporal (PG_FUNCTION_ARGS)
 Return a temporal boolean that states whether a temporal value is greater than the second one @sqlfn temporal_tgt() More...
 
Datum Tle_base_temporal (PG_FUNCTION_ARGS)
 Return a temporal boolean that states whether a base value is less than or equal to a temporal value @sqlfn temporal_tle() More...
 
Datum Tle_temporal_base (PG_FUNCTION_ARGS)
 Return a temporal boolean that states whether a temporal value is less than or equal to a base value @sqlfn temporal_tle() More...
 
Datum Tle_temporal_temporal (PG_FUNCTION_ARGS)
 Return a temporal boolean that states whether the first temporal value is less than or equal to second one @sqlfn temporal_tle() More...
 
Datum Tlt_base_temporal (PG_FUNCTION_ARGS)
 Return a temporal boolean that states whether a base value is less than a temporal value @sqlfn temporal_tlt() More...
 
Datum Tlt_temporal_base (PG_FUNCTION_ARGS)
 Return a temporal boolean that states whether a temporal value is less than a base value @sqlfn temporal_tlt() More...
 
Datum Tlt_temporal_temporal (PG_FUNCTION_ARGS)
 Return a temporal boolean that states whether the first temporal value is less than the second one @sqlfn temporal_tlt() More...
 
Datum Tne_base_temporal (PG_FUNCTION_ARGS)
 Return a temporal boolean that states whether a base value is different from a temporal value @sqlfn temporal_tne() More...
 
Datum Tne_temporal_base (PG_FUNCTION_ARGS)
 Return a temporal boolean that states whether a temporal value is different from a base value @sqlfn temporal_tne() More...
 
Datum Tne_temporal_temporal (PG_FUNCTION_ARGS)
 Return a temporal boolean that states whether the first temporal value is different from the second one @sqlfn temporal_tne() More...
 

Detailed Description

Ever comparison operators (?=, ?<>, ?<, ?>, ?<=, ?>=), always comparison operators (%=, %<>, %<, %>, %<=, %>=), and temporal comparison operators (#=, #<>, #<, #>, #<=, #>=)