PostgreSQL Source Code git master
Loading...
Searching...
No Matches
ts_cache.h
Go to the documentation of this file.
1/*-------------------------------------------------------------------------
2 *
3 * ts_cache.h
4 * Tsearch related object caches.
5 *
6 * Portions Copyright (c) 1996-2026, PostgreSQL Global Development Group
7 * Portions Copyright (c) 1994, Regents of the University of California
8 *
9 * src/include/tsearch/ts_cache.h
10 *
11 *-------------------------------------------------------------------------
12 */
13#ifndef TS_CACHE_H
14#define TS_CACHE_H
15
16#include "fmgr.h"
17
18
19/*
20 * All TS*CacheEntry structs must share this common header
21 * (see InvalidateTSCacheCallBack)
22 */
28
29
30typedef struct TSParserCacheEntry
31{
32 /* prsId is the hash lookup key and MUST BE FIRST */
33 Oid prsId; /* OID of the parser */
34 bool isvalid;
35
41
42 /*
43 * Pre-set-up fmgr call of most needed parser's methods
44 */
50
52{
53 /* dictId is the hash lookup key and MUST BE FIRST */
55 bool isvalid;
56
57 /* most frequent fmgr call */
60
61 MemoryContext dictCtx; /* memory context to store private data */
62 void *dictData;
64
65typedef struct
66{
67 int len;
70
71typedef struct
72{
73 /* cfgId is the hash lookup key and MUST BE FIRST */
75 bool isvalid;
76
78
79 int lenmap;
82
83
84/*
85 * GUC variable for current configuration
86 */
87extern PGDLLIMPORT char *TSCurrentConfig;
88
89
93
95
96#endif /* TS_CACHE_H */
#define PGDLLIMPORT
Definition c.h:1334
unsigned int Oid
static int fb(int x)
Oid * dictIds
Definition ts_cache.h:68
ListDictionary * map
Definition ts_cache.h:80
MemoryContext dictCtx
Definition ts_cache.h:61
FmgrInfo prstoken
Definition ts_cache.h:46
FmgrInfo prsstart
Definition ts_cache.h:45
FmgrInfo prsheadline
Definition ts_cache.h:48
FmgrInfo prsend
Definition ts_cache.h:47
Oid getTSCurrentConfig(bool emitError)
Definition ts_cache.c:558
TSConfigCacheEntry * lookup_ts_config_cache(Oid cfgId)
Definition ts_cache.c:387
TSParserCacheEntry * lookup_ts_parser_cache(Oid prsId)
Definition ts_cache.c:113
TSDictionaryCacheEntry * lookup_ts_dictionary_cache(Oid dictId)
Definition ts_cache.c:208
PGDLLIMPORT char * TSCurrentConfig
Definition ts_cache.c:76