attnum.h
上传用户:blenddy
上传日期:2007-01-07
资源大小:6495k
文件大小:1k
- /*-------------------------------------------------------------------------
- *
- * attnum.h
- * POSTGRES attribute number definitions.
- *
- *
- * Copyright (c) 1994, Regents of the University of California
- *
- * $Id: attnum.h,v 1.10 1999/05/25 16:13:26 momjian Exp $
- *
- *-------------------------------------------------------------------------
- */
- #ifndef ATTNUM_H
- #define ATTNUM_H
- /*
- * user defined attribute numbers start at 1. -ay 2/95
- */
- typedef int16 AttrNumber;
- #define InvalidAttrNumber 0
- /* ----------------
- * 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 an user defined attribute.
- */
- #define AttrNumberGetAttrOffset(attNum)
- (
- AssertMacro(AttrNumberIsForUserDefinedAttr(attNum)),
- ((attNum) - 1)
- )
- /*
- * AttributeOffsetGetAttributeNumber
- * Returns the attribute number for an attribute offset.
- */
- #define AttrOffsetGetAttrNumber(attributeOffset)
- ((AttrNumber) (1 + attributeOffset))
- #endif /* ATTNUM_H */