typcache.h
来自「PostgreSQL7.4.6 for Linux」· C头文件 代码 · 共 67 行
H
67 行
/*------------------------------------------------------------------------- * * typcache.h * Type cache definitions. * * The type cache exists to speed lookup of certain information about data * types that is not directly available from a type's pg_type row. * * Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * $Id: typcache.h,v 1.1 2003/08/17 19:58:06 tgl Exp $ * *------------------------------------------------------------------------- */#ifndef TYPCACHE_H#define TYPCACHE_H#include "fmgr.h"typedef struct TypeCacheEntry{ /* typeId is the hash lookup key and MUST BE FIRST */ Oid type_id; /* OID of the data type */ /* some subsidiary information copied from the pg_type row */ int16 typlen; bool typbyval; char typalign; /* * Information obtained from opclass entries * * These will be InvalidOid if no match could be found, or if the * information hasn't yet been requested. */ Oid btree_opc; /* OID of the default btree opclass */ Oid hash_opc; /* OID of the default hash opclass */ Oid eq_opr; /* OID of the equality operator */ Oid lt_opr; /* OID of the less-than operator */ Oid gt_opr; /* OID of the greater-than operator */ Oid cmp_proc; /* OID of the btree comparison function */ /* * Pre-set-up fmgr call info for the equality operator and the btree * comparison function. These are kept in the type cache to avoid * problems with memory leaks in repeated calls to array_eq and array_cmp. * There is not currently a need to maintain call info for the lt_opr * or gt_opr. */ FmgrInfo eq_opr_finfo; FmgrInfo cmp_proc_finfo;} TypeCacheEntry;/* Bit flags to indicate which fields a given caller needs to have set */#define TYPECACHE_EQ_OPR 0x0001#define TYPECACHE_LT_OPR 0x0002#define TYPECACHE_GT_OPR 0x0004#define TYPECACHE_CMP_PROC 0x0008#define TYPECACHE_EQ_OPR_FINFO 0x0010#define TYPECACHE_CMP_PROC_FINFO 0x0020extern TypeCacheEntry *lookup_type_cache(Oid type_id, int flags);#endif /* TYPCACHE_H */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?