Line data Source code
1 : /*-------------------------------------------------------------------------
2 : *
3 : * pg_class.c
4 : * routines to support manipulation of the pg_class relation
5 : *
6 : * Portions Copyright (c) 1996-2026, PostgreSQL Global Development Group
7 : * Portions Copyright (c) 1994, Regents of the University of California
8 : *
9 : *
10 : * IDENTIFICATION
11 : * src/backend/catalog/pg_class.c
12 : *
13 : *-------------------------------------------------------------------------
14 : */
15 : #include "postgres.h"
16 :
17 : #include "catalog/pg_class.h"
18 :
19 : /*
20 : * Issue an errdetail() informing that the relkind is not supported for this
21 : * operation.
22 : */
23 : int
24 205 : errdetail_relkind_not_supported(char relkind)
25 : {
26 205 : switch (relkind)
27 : {
28 28 : case RELKIND_RELATION:
29 28 : return errdetail("This operation is not supported for tables.");
30 22 : case RELKIND_INDEX:
31 22 : return errdetail("This operation is not supported for indexes.");
32 22 : case RELKIND_SEQUENCE:
33 22 : return errdetail("This operation is not supported for sequences.");
34 5 : case RELKIND_TOASTVALUE:
35 5 : return errdetail("This operation is not supported for TOAST tables.");
36 39 : case RELKIND_VIEW:
37 39 : return errdetail("This operation is not supported for views.");
38 4 : case RELKIND_MATVIEW:
39 4 : return errdetail("This operation is not supported for materialized views.");
40 4 : case RELKIND_COMPOSITE_TYPE:
41 4 : return errdetail("This operation is not supported for composite types.");
42 19 : case RELKIND_FOREIGN_TABLE:
43 19 : return errdetail("This operation is not supported for foreign tables.");
44 39 : case RELKIND_PARTITIONED_TABLE:
45 39 : return errdetail("This operation is not supported for partitioned tables.");
46 11 : case RELKIND_PARTITIONED_INDEX:
47 11 : return errdetail("This operation is not supported for partitioned indexes.");
48 12 : case RELKIND_PROPGRAPH:
49 12 : return errdetail("This operation is not supported for property graphs.");
50 0 : default:
51 0 : elog(ERROR, "unrecognized relkind: '%c'", relkind);
52 : return 0;
53 : }
54 : }
|