/usr/include/wngrind.h is in wordnet-dev 1:3.0-33.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 | /*
grind.h - grinder include file
*/
/* $Id: wngrind.h,v 1.1 2005/02/01 17:58:21 wn Rel $ */
#ifndef _GRIND_
#include "wn.h"
#ifndef NULL
#define NULL 0
#endif
#define FALSE 0
#define TRUE 1
/* Bit positions for legalptrs[] */
#define P_NOUN 1
#define P_VERB 2
#define P_ADJ 4
#define P_ADV 8
/* Pointer status values */
#define UNRESOLVED 0
#define RESOLVED 1
#define DUPLICATE 2
#define SELF_REF 3
#define ALLWORDS (short)0
#define NOSENSE (unsigned char)0xff
#ifdef FOOP
#define HASHSIZE 100003 /* some large prime # */
#endif
#define HASHSIZE 500009 /* some large prime # */
#define ptrkind(p) arraypos(ptrsymbols, p)
/* Structure for representing a synset */
typedef struct synset {
struct synset *ssnext; /* next synset */
struct synset *fans; /* if adjective cluster head, list of fans
if fan, pointer to cluster head */
struct synonym *syns; /* list of synonyms in synset */
struct pointer *ptrs; /* list of pointers from this synset */
struct framelist *frames; /* for verbs - list of framelists */
char *defn; /* textual gloss (optional) */
unsigned int key; /* unique synset key */
unsigned char part; /* part of speech */
unsigned char isfanss; /* TRUE - synset is fan synset */
unsigned char filenum; /* file number (from cmdline) synset is in */
int clusnum; /* cluster # if synset is part of cluster */
int lineno; /* line number in file of synset */
long filepos; /* byte offset of synset in output file */
} G_Ss, *G_Synset; /* Grinder Synset */
/* A pointer from one synset to another */
typedef struct pointer {
struct pointer *pnext; /* next pointer from synset */
struct symbol *pword; /* word used to identify target synset */
struct symbol *pslite; /* label of satellite pointed to (optional) */
struct synset *psynset; /* target synset */
unsigned char pfilenum; /* file containing target synset */
unsigned char psensenum; /* sense number of word */
unsigned char pslite_sense; /* sense number of satellite (optional) */
unsigned char phead; /* TRUE - pointer is to cluster head word */
unsigned char ptype; /* pointer type */
unsigned char status; /* status of pointer */
short fromwdnum; /* word number in this synset ptr is from */
short towdnum; /* word number in target synset ptr is to */
} Ptr, *Pointer;
/* Verb frame list */
typedef struct framelist {
struct framelist *fnext; /* next framelist */
unsigned long frames[(NUMFRAMES/32) + 1]; /* bits for verb frames */
unsigned char frwdnum; /* word number that frame list is for */
} Fr, *Framelist;
/* A word in a synset */
typedef struct synonym {
struct synonym *synnext; /* next word in synset */
struct synset *ss; /* synset this synonym is in */
struct symbol *word; /* symbol table entry for word string */
short sswdnum; /* word number in synset ( <0, headword ) */
short tagcnt; /* num times sense is tagged in concordance */
unsigned char wnsensenum; /* sense number in wn database */
unsigned char sensenum; /* sense number in lexicographer's file */
unsigned char adjclass; /* adjective class of word */
unsigned char infanss; /* TRUE - synonym is in fan synset */
/* FALSE - synonym is not in fan */
char *label; /* only used if string is not lowercase
if lowercase, use word->label */
} Syn, *Synonym;
/* Structure for storing word strings */
typedef struct symbol {
struct symbol *symnext; /* next symbol in this slot */
struct synlist *syns; /* uses of this word as a synonym */
unsigned char sensecnt[NUMPARTS + 1]; /* senses for all parts of speech */
char *label; /* word */
} Sym, *Symbol;
/* List of use of this word as a synonym */
typedef struct synlist {
struct synlist *snext; /* next item on synonym list */
struct synonym *psyn; /* pointer to synonym structure */
} Synl, *SynList;
typedef struct flist {
char *fname; /* file name */
int present; /* file entered on command line? */
} Flist;
extern Flist filelist[];
extern int yylineno;
extern G_Synset headss;
extern int pcount;
extern int errcount;
extern int verifyflag;
extern int nowarn;
extern int ordersenses;
extern int synsetkeys;
extern char *ptrsymbols[];
extern char *legalptrs;
extern char *legalptrsets[];
extern char *ptrreflects[];
extern char **Argv;
extern int Argc;
extern FILE *logfile;
extern char partprefix[];
extern char partseen[];
extern char *adjclass[];
extern Symbol hashtab[];
/* External functions */
extern int arraypos(char **, char *);
extern int filenum(char *);
extern char *strclone(char *);
extern char *strupper(char *);
extern char *strlower(char *);
extern char *PrintFileName(int);
extern char *PrintPointer(Pointer);
extern char *PrintSynonym(Synonym);
extern char *NextFile();
extern int filemode();
extern G_Synset CreateSynset(unsigned char, Synonym, Pointer,
Framelist, char *, unsigned int, int, unsigned char);
extern Pointer CreatePointer(Symbol, Symbol, unsigned char,
unsigned char, unsigned char, unsigned char,
short, short);
extern Synonym CreateSynonym(Symbol, unsigned char, short,
unsigned char, char *);
extern Framelist CreateFramelist(int);
extern Symbol CreateSymbol(char *);
extern Symbol FindSymbol(char *);
extern void ResolvePointers();
extern void FindOffsets();
extern void DumpData();
extern void DumpIndex();
extern void DumpSenseIndex();
extern void ReadCntlist();
#endif /* _GRIND_ */
|