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