]>
Commit | Line | Data |
---|---|---|
1 | /* | |
2 | ** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2001. | |
3 | ** See ../LICENSE for license information. | |
4 | ** | |
5 | */ | |
6 | /* | |
7 | ** flag_codes.h | |
8 | */ | |
9 | ||
10 | # ifndef FLAGCODES_H | |
11 | # define FLAGCODES_H | |
12 | ||
13 | /* | |
14 | ** attempt to keep order consistent with that in flags.c | |
15 | */ | |
16 | ||
17 | typedef enum | |
18 | { | |
19 | MODENAME_FLAG = -3, | |
20 | SKIP_FLAG = -2, | |
21 | INVALID_FLAG = -1, | |
22 | # include "flag_codes.gen" | |
23 | LAST_FLAG | |
24 | } flagcode; | |
25 | ||
26 | /*@constant flagcode NUMFLAGS; @*/ | |
27 | # define NUMFLAGS (LAST_FLAG) | |
28 | ||
29 | /*@constant int NUMVALUEFLAGS; @*/ | |
30 | # define NUMVALUEFLAGS 14 | |
31 | ||
32 | /*@constant int NUMSTRINGFLAGS; @*/ | |
33 | # define NUMSTRINGFLAGS 27 | |
34 | ||
35 | /*@iter allFlagCodes (yield flagcode f); @*/ | |
36 | # define allFlagCodes(m_code) \ | |
37 | { /*@+enumint@*/ flagcode m_code; for (m_code = 0; m_code < NUMFLAGS; m_code++) \ | |
38 | /*@=enumint@*/ { | |
39 | ||
40 | # define end_allFlagCodes }} | |
41 | ||
42 | # else | |
43 | # error "Multiple include" | |
44 | # endif |