]>
Commit | Line | Data |
---|---|---|
885824d3 | 1 | /* |
28bf4b0b | 2 | ** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2001. |
885824d3 | 3 | ** See ../LICENSE for license information. |
4 | ** | |
5 | */ | |
6 | /* | |
7 | ** lltok.h | |
8 | */ | |
9 | ||
10 | # ifndef LLTOK_H | |
11 | # define LLTOK_H | |
12 | ||
28bf4b0b | 13 | typedef struct |
885824d3 | 14 | { |
15 | int tok; | |
16 | fileloc loc; | |
17 | } lltok; | |
18 | ||
19 | extern lltok lltok_create (int p_tok, /*@only@*/ fileloc p_loc) /*@modifies nothing@*/ ; | |
20 | extern /*@observer@*/ cstring lltok_unparse (lltok p_tok) /*@*/ ; | |
21 | ||
22 | extern void lltok_release (/*@special@*/ lltok p_t) /*@releases p_t.loc@*/ ; | |
23 | ||
24 | extern /*@dependent@*/ /*@exposed@*/ fileloc lltok_getLoc (lltok p_t) /*@*/ ; | |
28bf4b0b | 25 | extern /*@only@*/ fileloc lltok_stealLoc (lltok p_t) /*@releases p_t.loc@*/ ; |
26 | ||
885824d3 | 27 | extern int lltok_getTok (lltok p_t) /*@*/ ; |
28 | ||
29 | # define lltok_getTok(t) ((t).tok) | |
30 | # define lltok_getLoc(t) ((t).loc) | |
31 | ||
32 | extern bool lltok_isSemi (lltok p_tok); | |
33 | ||
754746a0 | 34 | /* DRL added 10/23/2000 for boolean stuff */ |
28bf4b0b | 35 | extern bool lltok_isEq_Op (lltok p_tok); |
754746a0 | 36 | |
28bf4b0b | 37 | extern bool lltok_isMult (lltok p_tok); |
93307a76 | 38 | |
28bf4b0b | 39 | extern bool lltok_isInc_Op (lltok p_tok); |
93307a76 | 40 | |
28bf4b0b | 41 | extern bool lltok_isAnd_Op (lltok p_tok); |
93307a76 | 42 | |
28bf4b0b | 43 | extern bool lltok_isOr_Op (lltok p_tok); |
93307a76 | 44 | |
28bf4b0b | 45 | extern bool lltok_isNot_Op (lltok p_tok); |
93307a76 | 46 | |
34f0c5e7 | 47 | /*drl7x added this function 11/20/00 */ |
48 | ||
d9a28762 | 49 | extern bool lltok_isLt_Op (lltok p_tok); |
50 | extern bool lltok_isGt_Op (lltok p_tok); | |
51 | extern bool lltok_isGe_Op (lltok p_tok); | |
52 | extern bool lltok_isLe_Op (lltok p_tok); | |
34f0c5e7 | 53 | |
54 | /* end drl7x added */ | |
55 | ||
56 | ||
f5ac53de | 57 | /*drl7x added 11 30 2000*/ |
28bf4b0b | 58 | bool lltok_isPlus_Op (lltok p_tok); |
f5ac53de | 59 | |
28bf4b0b | 60 | bool lltok_isMinus_Op (lltok p_tok); |
f5ac53de | 61 | |
62 | /*end drl added */ | |
63 | ||
ef2aa32a | 64 | /*drl |
65 | added 1/14/2001 | |
66 | */ | |
28bf4b0b | 67 | bool lltok_isDec_Op (lltok p_tok); |
68 | bool lltok_isAmpersand_Op (lltok p_tok); | |
ef2aa32a | 69 | |
28bf4b0b | 70 | extern bool lltok_isExcl_Op (lltok p_tok); |
71 | extern bool lltok_isTilde_Op (lltok p_tok); | |
84c9ffbf | 72 | |
d9a28762 | 73 | extern bool lltok_isEnsures (lltok p_tok); |
74 | extern bool lltok_isRequires (lltok p_tok); | |
75 | ||
885824d3 | 76 | # else |
77 | # error "Multiple include" | |
78 | # endif |