PostgreSQL Source Code git master
catalog.h
Go to the documentation of this file.
1/*-------------------------------------------------------------------------
2 *
3 * catalog.h
4 * prototypes for functions in backend/catalog/catalog.c
5 *
6 *
7 * Portions Copyright (c) 1996-2025, PostgreSQL Global Development Group
8 * Portions Copyright (c) 1994, Regents of the University of California
9 *
10 * src/include/catalog/catalog.h
11 *
12 *-------------------------------------------------------------------------
13 */
14#ifndef CATALOG_H
15#define CATALOG_H
16
17#include "catalog/pg_class.h"
18#include "utils/relcache.h"
19
20
21extern bool IsSystemRelation(Relation relation);
22extern bool IsToastRelation(Relation relation);
23extern bool IsCatalogRelation(Relation relation);
24extern bool IsInplaceUpdateRelation(Relation relation);
25
26extern bool IsSystemClass(Oid relid, Form_pg_class reltuple);
27extern bool IsToastClass(Form_pg_class reltuple);
28
29extern bool IsCatalogRelationOid(Oid relid);
30extern bool IsInplaceUpdateOid(Oid relid);
31
32extern bool IsCatalogNamespace(Oid namespaceId);
33extern bool IsToastNamespace(Oid namespaceId);
34
35extern bool IsReservedName(const char *name);
36
37extern bool IsSharedRelation(Oid relationId);
38
39extern bool IsPinnedObject(Oid classId, Oid objectId);
40
41extern Oid GetNewOidWithIndex(Relation relation, Oid indexId,
42 AttrNumber oidcolumn);
43extern RelFileNumber GetNewRelFileNumber(Oid reltablespace,
44 Relation pg_class,
45 char relpersistence);
46
47#endif /* CATALOG_H */
int16 AttrNumber
Definition: attnum.h:21
bool IsToastRelation(Relation relation)
Definition: catalog.c:175
bool IsToastNamespace(Oid namespaceId)
Definition: catalog.c:230
bool IsSystemRelation(Relation relation)
Definition: catalog.c:73
Oid GetNewOidWithIndex(Relation relation, Oid indexId, AttrNumber oidcolumn)
Definition: catalog.c:419
RelFileNumber GetNewRelFileNumber(Oid reltablespace, Relation pg_class, char relpersistence)
Definition: catalog.c:528
bool IsCatalogNamespace(Oid namespaceId)
Definition: catalog.c:212
bool IsToastClass(Form_pg_class reltuple)
Definition: catalog.c:195
bool IsCatalogRelation(Relation relation)
Definition: catalog.c:103
bool IsPinnedObject(Oid classId, Oid objectId)
Definition: catalog.c:341
bool IsSharedRelation(Oid relationId)
Definition: catalog.c:273
bool IsCatalogRelationOid(Oid relid)
Definition: catalog.c:120
bool IsInplaceUpdateRelation(Relation relation)
Definition: catalog.c:152
bool IsReservedName(const char *name)
Definition: catalog.c:247
bool IsInplaceUpdateOid(Oid relid)
Definition: catalog.c:162
bool IsSystemClass(Oid relid, Form_pg_class reltuple)
Definition: catalog.c:85
FormData_pg_class * Form_pg_class
Definition: pg_class.h:156
unsigned int Oid
Definition: postgres_ext.h:32
Oid RelFileNumber
Definition: relpath.h:25
const char * name