Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 160 lines (119 sloc) 5.069 kB
f2b12f9 @bagder fcpp: initial code import
authored
1 /******************************************************************************
2 * FREXXWARE
3 * ----------------------------------------------------------------------------
4 *
5 * Project: Frexx C Preprocessor
6 * $Source: /home/user/start/cpp/RCS/fpp.h,v $
7 * $Revision: 1.5 $
8 * $Date: 1994/01/24 09:38:45 $
9 * $Author: start $
10 * $State: Exp $
11 * $Locker: start $
12 *
13 * ----------------------------------------------------------------------------
14 * $Log: fpp.h,v $
15 * Revision 1.5 1994/01/24 09:38:45 start
16 * Added FPPTAG_RIGHTCONCAT.
17 *
18 * Revision 1.4 1993/12/06 13:51:20 start
19 * A lot of new stuff (too much to mention)
20 *
21 * Revision 1.3 1993/11/29 14:01:13 start
22 * New features added
23 *
24 * Revision 1.2 1993/11/11 07:16:39 start
25 * New stuff
26 *
27 * Revision 1.1 1993/11/03 09:15:59 start
28 * Initial revision
29 *
30 *
31 *****************************************************************************/
32 /**********************************************************************
33 *
34 * fpp.h
35 *
36 */
37
38
39 struct fppTag {
40 int tag;
41 void *data;
42 };
43
44 #ifndef TRUE
45 #define TRUE 1
46 #endif
47
48 #ifndef FALSE
49 #define FALSE 0
50 #endif
51
52 #define NFLAG_BUILTIN 1
53 #define NFLAG_PREDEFINE 2
54
55 /* end of taglist: */
56 #define FPPTAG_END 0
57
58 /* To make the preprocessed output keep the comments: */
59 #define FPPTAG_KEEPCOMMENTS 1 /* data is TRUE or FALSE */
60
61 /* To define symbols to the preprocessor: */
62 #define FPPTAG_DEFINE 2 /* data is the string "symbol" or "symbol=<value>" */
63
64 /* To make the preprocessor ignore all non-fatal errors: */
65 #define FPPTAG_IGNORE_NONFATAL 3 /* data is TRUE or FALSE */
66
67 /* To add an include directory to the include directory list: */
68 #define FPPTAG_INCLUDE_DIR 4 /* data is directory name ending with a '/' (on
69 amiga a ':' is also valid) */
70
71 /* To define all machine specific built-in #defines, default is TRUE: */
72 #define FPPTAG_BUILTINS 5 /* data is TRUE or FALSE */
73
74 /* To define predefines like __LINE__, __DATE__, etc. default is TRUE: */
75 #define FPPTAG_PREDEFINES 6 /* data is TRUE or FALSE */
76
77 /* To make fpp leave C++ comments in the output: */
78 #define FPPTAG_IGNORE_CPLUSPLUS 7 /* data is TRUE or FALSE */
79
80 /* To define new sizes to #if sizeof: */
81 #define FPPTAG_SIZEOF_TABLE 8 /* data is sizeof table string */
82
83 /* To undefine symbols: */
84 #define FPPTAG_UNDEFINE 9 /* data is symbol name */
85
86 /* Output all #defines: */
87 #define FPPTAG_OUTPUT_DEFINES 10 /* data is TRUE or FALSE */
88
89 /* Initial input file name: */
90 #define FPPTAG_INPUT_NAME 11 /* data is string */
91
92 /* Input function: */
93 #define FPPTAG_INPUT 12 /* data is an input funtion */
94
95 /* Output function: */
96 #define FPPTAG_OUTPUT 13 /* data is an output function */
97
98 /* User data, sent in the last argument to the input function: */
99 #define FPPTAG_USERDATA 14 /* data is user data */
100
101 /* Whether to exclude #line instructions in the output, default is FALSE */
102 #define FPPTAG_LINE 15 /* data is TRUE or FALSE */
103
104 /* Error function. This is called when FPP finds any warning/error/fatal: */
105 #define FPPTAG_ERROR 16 /* data is function pointer to a
106 "void (*)(void *, char *, va_list)" */
107
108 /* Whether to warn for illegal cpp instructions */
109 #define FPPTAG_WARNILLEGALCPP 17 /* data is boolean, default is FALSE */
110
111 /* Output the 'line' keyword on #line-lines? */
112 #define FPPTAG_OUTPUTLINE 18 /* data is boolean, default is TRUE */
113
114 /* Do not output the version information string */
115 #define FPPTAG_IGNOREVERSION 19 /* data is boolean, default is FALSE */
116
117 /* Output all included file names to stderr */
118 #define FPPTAG_OUTPUTINCLUDES 20 /* data is boolean, default is FALSE */
119
120 /* Display warning if there is any brace, bracket or parentheses unbalance */
121 #define FPPTAG_OUTPUTBALANCE 21 /* data is boolean, default is FALSE */
122
123 /* Display all whitespaces in the source */
124 #define FPPTAG_OUTPUTSPACE 22 /* data is boolean, default is FALSE */
125
126 /* Allow nested comments */
127 #define FPPTAG_NESTED_COMMENTS 23 /* data is boolean, default is FALSE */
128
129 /* Enable warnings at nested comments */
130 #define FPPTAG_WARN_NESTED_COMMENTS 24 /* data is boolean, default is FALSE */
131
132 /* Enable warnings at missing includes */
133 #define FPPTAG_WARNMISSINCLUDE 25 /* data is boolean, default is TRUE */
134
135 /* Output the main file */
136 #define FPPTAG_OUTPUTMAIN 26 /* data is boolean, default is TRUE */
137
138 /* Include file */
139 #define FPPTAG_INCLUDE_FILE 27 /* data is char pointer */
140
141 /* Include macro file */
142 #define FPPTAG_INCLUDE_MACRO_FILE 28 /* data is char pointer */
143
144 /* Evaluate the right part of a concatenate before the concat */
145 #define FPPTAG_RIGHTCONCAT 29 /* data is boolean, default is FALSE */
146
147 /* Include the specified file at the beginning of each function */
148 #define FPPTAG_INITFUNC 30 /* data is char pointer or NULL */
149
150 /* Define function to be excluded from the "beginning-function-addings" */
151 #define FPPTAG_EXCLFUNC 31 /* data is char pointer */
152
153 /* Enable output of all function names defined in the source */
154 #define FPPTAG_DISPLAYFUNCTIONS 32
155
156 /* Switch on WWW-mode */
157 #define FPPTAG_WEBMODE 33
158
159 int PREFIX fppPreProcess(REG(a0) struct fppTag *);
Something went wrong with that request. Please try again.