]> andersk Git - splint.git/blob - src/Headers/scanline.h
Added va_copy to standard.h.
[splint.git] / src / Headers / scanline.h
1 /*
2 ** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2003.
3 ** See ../LICENSE for license information.
4 **
5 */
6 /*
7 ** scanline.h
8 */
9
10 # ifndef SCANLINE_H
11 # define SCANLINE_H
12
13 /*@constant int LASTCHAR; @*/
14 # define LASTCHAR 255
15
16 /*@constant char CHAREXTENDER; @*/
17 # define CHAREXTENDER '\\'
18
19 typedef enum {
20     CHC_NULL,
21     IDCHAR,
22     OPCHAR,
23     SLASHCHAR,
24     WHITECHAR,
25     CHC_EXTENSION,
26     SINGLECHAR,
27     PERMCHAR
28 } charCode;
29
30 typedef struct {
31   charCode code;
32   bool endCommentChar;
33 } charClassData;
34
35 extern void lscanLine (char *);
36 extern ltoken LSLScanEofToken (void);
37 extern void LSLReportEolTokens (bool p_setting);
38
39 extern void lscanLineInit (void);
40 extern void lscanLineReset (void);
41 extern void lscanLineCleanup (void);
42
43 /* 
44 ** The following function prototypes are for use by lslinit.c, which
45 ** customizes subsequent actions of scanline.c.
46 */
47
48 extern charCode lscanCharClass (char p_c);
49 extern bool LSLIsEndComment (char p_c);
50 extern void lsetCharClass (char p_c, charCode p_cod);
51 extern void lsetEndCommentChar (char p_c, bool p_flag);
52
53 /*@constant int MAXLINE;@*/
54 # define MAXLINE 1000           
55
56 # else
57 # error "Multiple include"
58 # endif
This page took 1.154254 seconds and 5 git commands to generate.