1/*-------------------------------------------------------------------------
2 *
3 * relation.h
4 * Generic relation related routines.
5 *
6 *
7 * Portions Copyright (c) 1996-2019, PostgreSQL Global Development Group
8 * Portions Copyright (c) 1994, Regents of the University of California
9 *
10 * src/include/access/relation.h
11 *
12 *-------------------------------------------------------------------------
13 */
14#ifndef ACCESS_RELATION_H
15#define ACCESS_RELATION_H
16
17#include "nodes/primnodes.h"
18#include "utils/relcache.h"
19#include "storage/lockdefs.h"
20
21
22extern Relation relation_open(Oid relationId, LOCKMODE lockmode);
23extern Relation try_relation_open(Oid relationId, LOCKMODE lockmode);
24extern Relation relation_openrv(const RangeVar *relation, LOCKMODE lockmode);
25extern Relation relation_openrv_extended(const RangeVar *relation,
26 LOCKMODE lockmode, bool missing_ok);
27extern void relation_close(Relation relation, LOCKMODE lockmode);
28
29#endif /* ACCESS_RELATION_H */
30