Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes15kdownloads
ts_cache.h97 linesDownload Raw Back to tsearch
1/*-------------------------------------------------------------------------2 *3 * ts_cache.h4 *	  Tsearch related object caches.5 *6 * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group7 * Portions Copyright (c) 1994, Regents of the University of California8 *9 * src/include/tsearch/ts_cache.h10 *11 *-------------------------------------------------------------------------12 */13#ifndef TS_CACHE_H14#define TS_CACHE_H15 16#include "fmgr.h"17 18 19/*20 * All TS*CacheEntry structs must share this common header21 * (see InvalidateTSCacheCallBack)22 */23typedef struct TSAnyCacheEntry24{25	Oid			objId;26	bool		isvalid;27} TSAnyCacheEntry;28 29 30typedef struct TSParserCacheEntry31{32	/* prsId is the hash lookup key and MUST BE FIRST */33	Oid			prsId;			/* OID of the parser */34	bool		isvalid;35 36	Oid			startOid;37	Oid			tokenOid;38	Oid			endOid;39	Oid			headlineOid;40	Oid			lextypeOid;41 42	/*43	 * Pre-set-up fmgr call of most needed parser's methods44	 */45	FmgrInfo	prsstart;46	FmgrInfo	prstoken;47	FmgrInfo	prsend;48	FmgrInfo	prsheadline;49} TSParserCacheEntry;50 51typedef struct TSDictionaryCacheEntry52{53	/* dictId is the hash lookup key and MUST BE FIRST */54	Oid			dictId;55	bool		isvalid;56 57	/* most frequent fmgr call */58	Oid			lexizeOid;59	FmgrInfo	lexize;60 61	MemoryContext dictCtx;		/* memory context to store private data */62	void	   *dictData;63} TSDictionaryCacheEntry;64 65typedef struct66{67	int			len;68	Oid		   *dictIds;69} ListDictionary;70 71typedef struct72{73	/* cfgId is the hash lookup key and MUST BE FIRST */74	Oid			cfgId;75	bool		isvalid;76 77	Oid			prsId;78 79	int			lenmap;80	ListDictionary *map;81} TSConfigCacheEntry;82 83 84/*85 * GUC variable for current configuration86 */87extern PGDLLIMPORT char *TSCurrentConfig;88 89 90extern TSParserCacheEntry *lookup_ts_parser_cache(Oid prsId);91extern TSDictionaryCacheEntry *lookup_ts_dictionary_cache(Oid dictId);92extern TSConfigCacheEntry *lookup_ts_config_cache(Oid cfgId);93 94extern Oid	getTSCurrentConfig(bool emitError);95 96#endif							/* TS_CACHE_H */97 
codekingpro/portable-devtools · Team Ai