00001 /*------------------------------------------------------------------------- 00002 * 00003 * pg_ts_template.h 00004 * definition of dictionary templates for tsearch 00005 * 00006 * 00007 * Portions Copyright (c) 1996-2013, PostgreSQL Global Development Group 00008 * Portions Copyright (c) 1994, Regents of the University of California 00009 * 00010 * src/include/catalog/pg_ts_template.h 00011 * 00012 * NOTES 00013 * the genbki.pl script reads this file and generates .bki 00014 * information from the DATA() statements. 00015 * 00016 * XXX do NOT break up DATA() statements into multiple lines! 00017 * the scripts are not as smart as you might think... 00018 * 00019 *------------------------------------------------------------------------- 00020 */ 00021 #ifndef PG_TS_TEMPLATE_H 00022 #define PG_TS_TEMPLATE_H 00023 00024 #include "catalog/genbki.h" 00025 00026 /* ---------------- 00027 * pg_ts_template definition. cpp turns this into 00028 * typedef struct FormData_pg_ts_template 00029 * ---------------- 00030 */ 00031 #define TSTemplateRelationId 3764 00032 00033 CATALOG(pg_ts_template,3764) 00034 { 00035 NameData tmplname; /* template name */ 00036 Oid tmplnamespace; /* name space */ 00037 regproc tmplinit; /* initialization method of dict (may be 0) */ 00038 regproc tmpllexize; /* base method of dictionary */ 00039 } FormData_pg_ts_template; 00040 00041 typedef FormData_pg_ts_template *Form_pg_ts_template; 00042 00043 /* ---------------- 00044 * compiler constants for pg_ts_template 00045 * ---------------- 00046 */ 00047 #define Natts_pg_ts_template 4 00048 #define Anum_pg_ts_template_tmplname 1 00049 #define Anum_pg_ts_template_tmplnamespace 2 00050 #define Anum_pg_ts_template_tmplinit 3 00051 #define Anum_pg_ts_template_tmpllexize 4 00052 00053 /* ---------------- 00054 * initial contents of pg_ts_template 00055 * ---------------- 00056 */ 00057 00058 DATA(insert OID = 3727 ( "simple" PGNSP dsimple_init dsimple_lexize )); 00059 DESCR("simple dictionary: just lower case and check for stopword"); 00060 DATA(insert OID = 3730 ( "synonym" PGNSP dsynonym_init dsynonym_lexize )); 00061 DESCR("synonym dictionary: replace word by its synonym"); 00062 DATA(insert OID = 3733 ( "ispell" PGNSP dispell_init dispell_lexize )); 00063 DESCR("ispell dictionary"); 00064 DATA(insert OID = 3742 ( "thesaurus" PGNSP thesaurus_init thesaurus_lexize )); 00065 DESCR("thesaurus dictionary: phrase by phrase substitution"); 00066 00067 #endif /* PG_TS_TEMPLATE_H */