]>
Commit | Line | Data |
---|---|---|
8c7ebe49 AD |
1 | #ifndef FILES_H_ |
2 | # define FILES_H_ | |
f7d4d87a | 3 | /* File names and variables for bison, |
8c7ebe49 | 4 | Copyright 1984, 1989, 2000 Free Software Foundation, Inc. |
f7d4d87a | 5 | |
a0f6b076 | 6 | This file is part of Bison, the GNU Compiler Compiler. |
f7d4d87a | 7 | |
a0f6b076 AD |
8 | Bison is free software; you can redistribute it and/or modify |
9 | it under the terms of the GNU General Public License as published by | |
10 | the Free Software Foundation; either version 2, or (at your option) | |
11 | any later version. | |
f7d4d87a | 12 | |
a0f6b076 AD |
13 | Bison is distributed in the hope that it will be useful, |
14 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
16 | GNU General Public License for more details. | |
f7d4d87a | 17 | |
a0f6b076 AD |
18 | You should have received a copy of the GNU General Public License |
19 | along with Bison; see the file COPYING. If not, write to | |
20 | the Free Software Foundation, Inc., 59 Temple Place - Suite 330, | |
21 | Boston, MA 02111-1307, USA. */ | |
f7d4d87a | 22 | |
f7d4d87a DM |
23 | /* These two should be pathnames for opening the sample parser files. |
24 | When bison is installed, they should be absolute pathnames. | |
9eceb6c6 | 25 | XPFILE1 and XPFILE2 normally come from config.h. */ |
f7d4d87a | 26 | |
f7d4d87a DM |
27 | /* File name specified with -o for the output file, or 0 if no -o. */ |
28 | extern char *spec_outfile; | |
29 | ||
0dbb648e AD |
30 | /* For -a, from getargs.c */ |
31 | extern char *spec_name_prefix; | |
f7d4d87a DM |
32 | |
33 | /* File name pfx specified with -b, or 0 if no -b. */ | |
34 | extern char *spec_file_prefix; | |
35 | ||
0dbb648e AD |
36 | |
37 | /* Read grammar specifications. */ | |
38 | extern FILE *finput; | |
39 | ||
40 | /* Optionally output messages describing the actions taken. */ | |
41 | extern FILE *foutput; | |
42 | ||
43 | /* If semantic parser, output yyguard, containing all the guard code. */ | |
44 | extern FILE *fguard; | |
45 | ||
0dbb648e | 46 | |
8c7ebe49 AD |
47 | /* Output all the action code; precise form depends on which parser. */ |
48 | extern struct obstack action_obstack; | |
49 | ||
dd60faec AD |
50 | /* If semantic parser, output a .h file that defines YYSTYPE */ |
51 | extern struct obstack attrs_obstack; | |
8c7ebe49 | 52 | |
896fe5c1 AD |
53 | /* Output the tables and the parser and also contains all the %{ |
54 | ... %} definitions. */ | |
55 | extern struct obstack table_obstack; | |
56 | ||
57 | /* optionally output #define's for token numbers. */ | |
58 | extern struct obstack defines_obstack; | |
59 | ||
60 | ||
f7d4d87a | 61 | extern char *infile; |
f7d4d87a DM |
62 | extern char *attrsfile; |
63 | extern char *guardfile; | |
a0f6b076 | 64 | |
8963a27b | 65 | void open_files PARAMS((void)); |
8963a27b | 66 | |
d8880f69 | 67 | void output_files PARAMS((void)); |
ff61dabd AD |
68 | |
69 | FILE *xfopen PARAMS ((const char *name, const char *mode)); | |
70 | int xfclose PARAMS ((FILE *ptr)); | |
71 | ||
72 | const char *skeleton_find PARAMS ((const char *envvar, const char *skeleton)); | |
8c7ebe49 | 73 | #endif /* !FILES_H_ */ |