1 /*
2 ** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2003.
3 ** See ../LICENSE for license information.
4 **
5 */
6 /*
7 ** cscannerHelp.h
8 */
9 
10 # ifndef CSCANNERHELP_H
11 # define CSCANNERHELP_H
12 
13 extern void cscannerHelp_swallowMacro (void) ;
14 extern bool cscannerHelp_processMacro (void) ;
15 extern void cscannerHelp_handleMacro (void) ;
16 
17 extern void cscannerHelp_exitSpecPart (void) /*@modifies internalState@*/ ;
18 
19 extern void cscannerHelp_setContinueLine (void) /*@modifies internalState@*/ ;
20 
21 extern int cscannerHelp_returnToken (int p_t)
22    /*@modifies g_currentloc, internalState@*/ ;
23 
24 extern int cscannerHelp_returnTokenLength (int p_t, int p_length)
25    /*@modifies g_currentloc, internalState@*/ ;
26 
27 extern int cscannerHelp_returnString (/*@only@*/ cstring p_s)
28    /*@modifies g_currentloc, internalState@*/ ;
29 
30 extern int cscannerHelp_returnInt (ctype p_ct, long p_val)
31    /*@modifies g_currentloc, internalState@*/ ;
32 
33 extern int cscannerHelp_returnFloat (ctype p_ct, double p_f)
34    /*@modifies g_currentloc, internalState@*/ ;
35 
36 extern int cscannerHelp_returnChar (char p_c)
37    /*@modifies g_currentloc, internalState@*/ ;
38 
39 extern int cscannerHelp_returnType (int p_tok, ctype p_ct)
40    /*@modifies g_currentloc, internalState@*/ ;
41 
42 extern int cscannerHelp_returnExpr (/*@only@*/ exprNode p_e)
43    /*@modifies g_currentloc, internalState@*/ ;
44 
45 extern void cscannerHelp_setTokLength (int) /*@modifies g_currentloc, internalState@*/ ;
46 extern void cscannerHelp_setTokLengthT (size_t) /*@modifies g_currentloc, internalState@*/ ;
47 extern void cscannerHelp_advanceLine (void) /*@modifies g_currentloc, internalState@*/ ;
48 
49 extern /*@observer@*/ cstring cscannerHelp_observeLastIdentifier (void) ;
50 extern int cscannerHelp_handleLlSpecial (void) /*@modifies g_currentloc, internalState@*/ ;
51 extern bool cscannerHelp_handleSpecial (char *) /*@modifies g_currentloc, internalState@*/ ;
52 extern /*@only@*/ cstring cscannerHelp_makeIdentifier (char *);
53 
54 extern bool cscannerHelp_isConstraintToken (int p_tok) /*@*/ ;
55 
56 extern int cscannerHelp_handleNewLine (void) /*@modifies g_currentloc, internalState@*/ ;
57 
58 extern int cscannerHelp_processTextIdentifier (char *) /*@modifies internalState@*/ ;
59 extern int cscannerHelp_processIdentifier (/*@only@*/ cstring) /*@modifies internalState@*/ ;
60 extern bool cscannerHelp_processHashIdentifier (/*@only@*/ cstring) /*@modifies internalState@*/ ;
61 
62 extern int cscannerHelp_processSpec (int p_tok) /*@modifies internalState@*/ ;
63 extern char cscannerHelp_processChar (void) /*@modifies internalState@*/ ;
64 extern double cscannerHelp_processFloat (void) /*@modifies internalState@*/ ;
65 extern /*@only@*/ exprNode cscannerHelp_processString (void)  /*@modifies internalState@*/ ;
66 extern /*@only@*/ exprNode cscannerHelp_processWideString (void)  /*@modifies internalState@*/ ;
67 extern long cscannerHelp_processDec (void) /*@modifies internalState@*/ ;
68 extern long cscannerHelp_processHex (void) /*@modifies internalState@*/ ;
69 extern long cscannerHelp_processOctal (void) /*@modifies internalState@*/ ;
70 
71 extern void cscannerHelp_expectingMetaStateName (void)
72    /*@modifies internalState@*/ ;
73 
74 extern void cscannerHelp_clearExpectingMetaStateName (void)
75    /*@modifies internalState@*/ ;
76 
77 extern /*@observer@*/ uentry cscannerHelp_coerceId (cstring p_cn);
78 extern /*@observer@*/ uentry cscannerHelp_coerceIterId (cstring p_cn);
79 
80 extern void cscannerHelp_setExpectingTypeName (void) /*@modifies internalState@*/ ;
81 extern void cscannerHelp_clearExpectingTypeName (void) /*@modifies internalState@*/ ;
82 extern bool cscannerHelp_isExpectingTypeName (void) /*@globals internalState@*/ ;
83 
84 extern int cscannerHelp_ninput (void) /*@modifies internalState, g_currentloc@*/;
85 
86 # else
87 # error "Multiple include."
88 # endif
89 
90 
91