mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-09-27 23:51:48 +02:00
49 lines
1.2 KiB
C
49 lines
1.2 KiB
C
|
/*-------------------------------------------------------------------------
|
||
|
*
|
||
|
* tableam.h
|
||
|
* POSTGRES table access method definitions.
|
||
|
*
|
||
|
*
|
||
|
* Portions Copyright (c) 1996-2018, PostgreSQL Global Development Group
|
||
|
* Portions Copyright (c) 1994, Regents of the University of California
|
||
|
*
|
||
|
* src/include/access/tableam.h
|
||
|
*
|
||
|
*-------------------------------------------------------------------------
|
||
|
*/
|
||
|
#ifndef TABLEAM_H
|
||
|
#define TABLEAM_H
|
||
|
|
||
|
#include "utils/guc.h"
|
||
|
|
||
|
|
||
|
#define DEFAULT_TABLE_ACCESS_METHOD "heap"
|
||
|
|
||
|
extern char *default_table_access_method;
|
||
|
|
||
|
|
||
|
|
||
|
/*
|
||
|
* API struct for a table AM. Note this must be allocated in a
|
||
|
* server-lifetime manner, typically as a static const struct, which then gets
|
||
|
* returned by FormData_pg_am.amhandler.
|
||
|
*/
|
||
|
typedef struct TableAmRoutine
|
||
|
{
|
||
|
/* this must be set to T_TableAmRoutine */
|
||
|
NodeTag type;
|
||
|
} TableAmRoutine;
|
||
|
|
||
|
|
||
|
|
||
|
/*
|
||
|
* Functions in tableamapi.c
|
||
|
*/
|
||
|
extern const TableAmRoutine *GetTableAmRoutine(Oid amhandler);
|
||
|
extern const TableAmRoutine *GetTableAmRoutineByAmId(Oid amoid);
|
||
|
extern const TableAmRoutine *GetHeapamTableAmRoutine(void);
|
||
|
extern bool check_default_table_access_method(char **newval, void **extra,
|
||
|
GucSource source);
|
||
|
|
||
|
#endif /* TABLEAM_H */
|