|
PostgreSQL Source Code git master
|

Go to the source code of this file.
Data Structures | |
| struct | NDBOX |
Macros | |
| #define | CUBE_MAX_DIM (100) |
| #define | POINT_BIT 0x80000000 |
| #define | DIM_MASK 0x7fffffff |
| #define | IS_POINT(cube) ( ((cube)->header & POINT_BIT) != 0 ) |
| #define | SET_POINT_BIT(cube) ( (cube)->header |= POINT_BIT ) |
| #define | DIM(cube) ( (cube)->header & DIM_MASK ) |
| #define | SET_DIM(cube, _dim) ( (cube)->header = ((cube)->header & ~DIM_MASK) | (_dim) ) |
| #define | LL_COORD(cube, i) ( (cube)->x[i] ) |
| #define | UR_COORD(cube, i) ( IS_POINT(cube) ? (cube)->x[i] : (cube)->x[(i) + DIM(cube)] ) |
| #define | POINT_SIZE(_dim) (offsetof(NDBOX, x) + sizeof(double)*(_dim)) |
| #define | CUBE_SIZE(_dim) (offsetof(NDBOX, x) + sizeof(double)*(_dim)*2) |
| #define | DatumGetNDBOXP(x) ((NDBOX *) PG_DETOAST_DATUM(x)) |
| #define | PG_GETARG_NDBOX_P(x) DatumGetNDBOXP(PG_GETARG_DATUM(x)) |
| #define | PG_RETURN_NDBOX_P(x) PG_RETURN_POINTER(x) |
| #define | CubeKNNDistanceCoord 15 /* ~> */ |
| #define | CubeKNNDistanceTaxicab 16 /* <#> */ |
| #define | CubeKNNDistanceEuclid 17 /* <-> */ |
| #define | CubeKNNDistanceChebyshev 18 /* <=> */ |
| #define | YYSTYPE char * |
Typedefs | |
| typedef struct NDBOX | NDBOX |
| typedef void * | yyscan_t |
Functions | |
| int | cube_yylex (YYSTYPE *yylval_param, yyscan_t yyscanner) |
| void | cube_yyerror (NDBOX **result, Size scanbuflen, struct Node *escontext, yyscan_t yyscanner, const char *message) |
| void | cube_scanner_init (const char *str, Size *scanbuflen, yyscan_t *yyscannerp) |
| void | cube_scanner_finish (yyscan_t yyscanner) |
| int | cube_yyparse (NDBOX **result, Size scanbuflen, struct Node *escontext, yyscan_t yyscanner) |
| #define CUBE_MAX_DIM (100) |
Definition at line 7 of file cubedata.h.
Definition at line 49 of file cubedata.h.
| #define CubeKNNDistanceChebyshev 18 /* <=> */ |
Definition at line 60 of file cubedata.h.
| #define CubeKNNDistanceCoord 15 /* ~> */ |
Definition at line 57 of file cubedata.h.
| #define CubeKNNDistanceEuclid 17 /* <-> */ |
Definition at line 59 of file cubedata.h.
| #define CubeKNNDistanceTaxicab 16 /* <#> */ |
Definition at line 58 of file cubedata.h.
| #define DatumGetNDBOXP | ( | x | ) | ((NDBOX *) PG_DETOAST_DATUM(x)) |
Definition at line 52 of file cubedata.h.
| #define DIM | ( | cube | ) | ( (cube)->header & DIM_MASK ) |
Definition at line 42 of file cubedata.h.
| #define DIM_MASK 0x7fffffff |
Definition at line 38 of file cubedata.h.
| #define IS_POINT | ( | cube | ) | ( ((cube)->header & POINT_BIT) != 0 ) |
Definition at line 40 of file cubedata.h.
Definition at line 45 of file cubedata.h.
| #define PG_GETARG_NDBOX_P | ( | x | ) | DatumGetNDBOXP(PG_GETARG_DATUM(x)) |
Definition at line 53 of file cubedata.h.
| #define PG_RETURN_NDBOX_P | ( | x | ) | PG_RETURN_POINTER(x) |
Definition at line 54 of file cubedata.h.
| #define POINT_BIT 0x80000000 |
Definition at line 37 of file cubedata.h.
Definition at line 48 of file cubedata.h.
| #define SET_DIM | ( | cube, | |
| _dim | |||
| ) | ( (cube)->header = ((cube)->header & ~DIM_MASK) | (_dim) ) |
Definition at line 43 of file cubedata.h.
| #define SET_POINT_BIT | ( | cube | ) | ( (cube)->header |= POINT_BIT ) |
Definition at line 41 of file cubedata.h.
Definition at line 46 of file cubedata.h.
| #define YYSTYPE char * |
Definition at line 64 of file cubedata.h.
| typedef void* yyscan_t |
Definition at line 65 of file cubedata.h.
| void cube_scanner_finish | ( | yyscan_t | yyscanner | ) |
Definition at line 121 of file cubescan.l.
Referenced by cube_in().
| void cube_yyerror | ( | NDBOX ** | result, |
| Size | scanbuflen, | ||
| struct Node * | escontext, | ||
| yyscan_t | yyscanner, | ||
| const char * | message | ||
| ) |
Definition at line 71 of file cubescan.l.
References errcode(), errdetail(), errmsg(), and errsave.