This file is indexed.

/usr/include/wngrind.h is in wordnet-dev 1:3.0-33+b1.

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_ */