PostgreSQL Source Code
git master
Main Page
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
attnum.h
Go to the documentation of this file.
1
/*-------------------------------------------------------------------------
2
*
3
* attnum.h
4
* POSTGRES attribute number definitions.
5
*
6
*
7
* Portions Copyright (c) 1996-2016, PostgreSQL Global Development Group
8
* Portions Copyright (c) 1994, Regents of the University of California
9
*
10
* src/include/access/attnum.h
11
*
12
*-------------------------------------------------------------------------
13
*/
14
#ifndef ATTNUM_H
15
#define ATTNUM_H
16
17
18
/*
19
* user defined attribute numbers start at 1. -ay 2/95
20
*/
21
typedef
int16
AttrNumber
;
22
23
#define InvalidAttrNumber 0
24
#define MaxAttrNumber 32767
25
26
/* ----------------
27
* support macros
28
* ----------------
29
*/
30
/*
31
* AttributeNumberIsValid
32
* True iff the attribute number is valid.
33
*/
34
#define AttributeNumberIsValid(attributeNumber) \
35
((bool) ((attributeNumber) != InvalidAttrNumber))
36
37
/*
38
* AttrNumberIsForUserDefinedAttr
39
* True iff the attribute number corresponds to an user defined attribute.
40
*/
41
#define AttrNumberIsForUserDefinedAttr(attributeNumber) \
42
((bool) ((attributeNumber) > 0))
43
44
/*
45
* AttrNumberGetAttrOffset
46
* Returns the attribute offset for an attribute number.
47
*
48
* Note:
49
* Assumes the attribute number is for a user defined attribute.
50
*/
51
#define AttrNumberGetAttrOffset(attNum) \
52
( \
53
AssertMacro(AttrNumberIsForUserDefinedAttr(attNum)), \
54
((attNum) - 1) \
55
)
56
57
/*
58
* AttributeOffsetGetAttributeNumber
59
* Returns the attribute number for an attribute offset.
60
*/
61
#define AttrOffsetGetAttrNumber(attributeOffset) \
62
((AttrNumber) (1 + (attributeOffset)))
63
64
#endif
/* ATTNUM_H */
int16
signed short int16
Definition:
c.h:252
AttrNumber
int16 AttrNumber
Definition:
attnum.h:21
src
include
access
attnum.h
Generated on Tue Apr 19 2016 03:15:16 for PostgreSQL Source Code by
1.8.8