PostgreSQL Source Code
git master
|
#include "postgres.h"
#include "access/amapi.h"
#include "access/htup_details.h"
#include "catalog/pg_class.h"
#include "catalog/pg_index.h"
#include "utils/builtins.h"
#include "utils/syscache.h"
Go to the source code of this file.
Data Structures | |
struct | am_propname |
Functions | |
static IndexAMProperty | lookup_prop_name (const char *name) |
static bool | test_indoption (HeapTuple tuple, int attno, bool guard, int16 iopt_mask, int16 iopt_expect, bool *res) |
static Datum | indexam_property (FunctionCallInfo fcinfo, const char *propname, Oid amoid, Oid index_oid, int attno) |
Datum | pg_indexam_has_property (PG_FUNCTION_ARGS) |
Datum | pg_index_has_property (PG_FUNCTION_ARGS) |
Datum | pg_index_column_has_property (PG_FUNCTION_ARGS) |
Datum | pg_indexam_progress_phasename (PG_FUNCTION_ARGS) |
Variables | |
static const struct am_propname | am_propnames [] |
|
static |
Definition at line 151 of file amutils.c.
References AccessShareLock, IndexAmRoutine::amcanbackward, IndexAmRoutine::amcaninclude, IndexAmRoutine::amcanmulticol, IndexAmRoutine::amcanorder, IndexAmRoutine::amcanorderbyop, IndexAmRoutine::amcanreturn, IndexAmRoutine::amcanunique, IndexAmRoutine::amclusterable, IndexAmRoutine::amgetbitmap, IndexAmRoutine::amgettuple, AMPROP_ASC, AMPROP_BACKWARD_SCAN, AMPROP_BITMAP_SCAN, AMPROP_CAN_EXCLUDE, AMPROP_CAN_INCLUDE, AMPROP_CAN_MULTI_COL, AMPROP_CAN_ORDER, AMPROP_CAN_UNIQUE, AMPROP_CLUSTERABLE, AMPROP_DESC, AMPROP_DISTANCE_ORDERABLE, AMPROP_INDEX_SCAN, AMPROP_NULLS_FIRST, AMPROP_NULLS_LAST, AMPROP_ORDERABLE, AMPROP_RETURNABLE, AMPROP_SEARCH_ARRAY, AMPROP_SEARCH_NULLS, IndexAmRoutine::amproperty, IndexAmRoutine::amsearcharray, IndexAmRoutine::amsearchnulls, Assert, GetIndexAmRoutineByAmId(), GETSTRUCT, HeapTupleIsValid, index_can_return(), index_close(), index_open(), lookup_prop_name(), ObjectIdGetDatum(), OidIsValid, PG_RETURN_BOOL, PG_RETURN_NULL, am_propname::prop, ReleaseSysCache(), res, SearchSysCache1(), and test_indoption().
Referenced by pg_index_column_has_property(), pg_index_has_property(), and pg_indexam_has_property().
|
static |
Definition at line 90 of file amutils.c.
References am_propnames, AMPROP_UNKNOWN, i, lengthof, name, pg_strcasecmp(), and am_propname::prop.
Referenced by indexam_property().
Datum pg_index_column_has_property | ( | PG_FUNCTION_ARGS | ) |
Definition at line 433 of file amutils.c.
References indexam_property(), InvalidOid, PG_GETARG_INT32, PG_GETARG_OID, PG_GETARG_TEXT_PP, PG_RETURN_NULL, and text_to_cstring().
Datum pg_index_has_property | ( | PG_FUNCTION_ARGS | ) |
Definition at line 421 of file amutils.c.
References indexam_property(), InvalidOid, PG_GETARG_OID, PG_GETARG_TEXT_PP, and text_to_cstring().
Datum pg_indexam_has_property | ( | PG_FUNCTION_ARGS | ) |
Definition at line 409 of file amutils.c.
References indexam_property(), InvalidOid, PG_GETARG_OID, PG_GETARG_TEXT_PP, and text_to_cstring().
Datum pg_indexam_progress_phasename | ( | PG_FUNCTION_ARGS | ) |
Definition at line 451 of file amutils.c.
References IndexAmRoutine::ambuildphasename, CStringGetTextDatum, GetIndexAmRoutineByAmId(), name, PG_GETARG_INT32, PG_GETARG_OID, PG_RETURN_DATUM, and PG_RETURN_NULL.
|
static |
Definition at line 117 of file amutils.c.
References DatumGetPointer(), res, SysCacheGetAttrNotNull(), and int2vector::values.
Referenced by indexam_property().
|
static |
Definition at line 1 of file amutils.c.
Referenced by lookup_prop_name().