init
This commit is contained in:
64
db_include/access/attnum.h
Executable file
64
db_include/access/attnum.h
Executable file
@@ -0,0 +1,64 @@
|
||||
/*-------------------------------------------------------------------------
|
||||
*
|
||||
* attnum.h
|
||||
* POSTGRES attribute number definitions.
|
||||
*
|
||||
*
|
||||
* Portions Copyright (c) 1996-2021, PostgreSQL Global Development Group
|
||||
* Portions Copyright (c) 1994, Regents of the University of California
|
||||
*
|
||||
* src/include/access/attnum.h
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
#ifndef ATTNUM_H
|
||||
#define ATTNUM_H
|
||||
|
||||
|
||||
/*
|
||||
* user defined attribute numbers start at 1. -ay 2/95
|
||||
*/
|
||||
typedef int16 AttrNumber;
|
||||
|
||||
#define InvalidAttrNumber 0
|
||||
#define MaxAttrNumber 32767
|
||||
|
||||
/* ----------------
|
||||
* support macros
|
||||
* ----------------
|
||||
*/
|
||||
/*
|
||||
* AttributeNumberIsValid
|
||||
* True iff the attribute number is valid.
|
||||
*/
|
||||
#define AttributeNumberIsValid(attributeNumber) \
|
||||
((bool) ((attributeNumber) != InvalidAttrNumber))
|
||||
|
||||
/*
|
||||
* AttrNumberIsForUserDefinedAttr
|
||||
* True iff the attribute number corresponds to an user defined attribute.
|
||||
*/
|
||||
#define AttrNumberIsForUserDefinedAttr(attributeNumber) \
|
||||
((bool) ((attributeNumber) > 0))
|
||||
|
||||
/*
|
||||
* AttrNumberGetAttrOffset
|
||||
* Returns the attribute offset for an attribute number.
|
||||
*
|
||||
* Note:
|
||||
* Assumes the attribute number is for a user defined attribute.
|
||||
*/
|
||||
#define AttrNumberGetAttrOffset(attNum) \
|
||||
( \
|
||||
AssertMacro(AttrNumberIsForUserDefinedAttr(attNum)), \
|
||||
((attNum) - 1) \
|
||||
)
|
||||
|
||||
/*
|
||||
* AttrOffsetGetAttrNumber
|
||||
* Returns the attribute number for an attribute offset.
|
||||
*/
|
||||
#define AttrOffsetGetAttrNumber(attributeOffset) \
|
||||
((AttrNumber) (1 + (attributeOffset)))
|
||||
|
||||
#endif /* ATTNUM_H */
|
||||
Reference in New Issue
Block a user