]> git.pld-linux.org Git - packages/bison.git/blob - bison.1.pl
- touch all files, to avoid running missing --autoheader by make
[packages/bison.git] / bison.1.pl
1 .\" {PTM/LK/0.1/29-09-1998/"generator parserów"}
2 .\" T³umaczenie: 29-09-1998 £ukasz Kowalczyk (lukow@tempac.okwf.fuw.edu.pl)
3 .TH bison 1 local
4 .SH NAZWA
5 bison \- generator parserów w wersji GNU (zastêpuje program yacc)
6 .SH SK£ADNIA
7 .B bison
8 [
9 .BI \-b  " przedrostek-nazwy-pliku"
10 ] [
11 .BI \-\-file-prefix= przedrostek-nazwy-pliku
12 ] [
13 .B \-d
14 ] [
15 .B \-\-defines
16 ] [
17 .B \-k
18 ] [
19 .B \-\-token-table
20 ] [
21 .B \-l
22 ] [
23 .B \-\-no-lines
24 ] [
25 .B \-n
26 ] [
27 .B \-\-no-parser
28 ] [
29 .BI \-o " plik-wyj¶ciowy"
30 ] [
31 .BI \-\-output-file= plik-wuj¶ciowy
32 ] [
33 .BI \-p " przedrostek"
34 ] [
35 .BI \-\-name-prefix= przedrostek
36 ] [
37 .B \-r
38 ] [
39 .B \-\-raw
40 ] [
41 .B \-t
42 ] [
43 .B \-\-debug
44 ] [
45 .B \-v
46 ] [
47 .B \-\-verbose
48 ] [
49 .B \-V
50 ] [
51 .B \-\-version
52 ] [
53 .B \-y
54 ] [
55 .B \-\-yacc
56 ] [
57 .B \-h
58 ] [
59 .B \-\-help
60 ] [
61 .B \-\-fixed-output-files
62 ]
63 plik
64 .SH OPIS
65 .I bison
66 jest generatorem parserów w stylu programu
67 .IR yacc (1)
68 i powinien byæ zgodny z plikami wej¶ciowymi stworzonym dla tego programu.
69 .PP
70 Pliki wej¶ciowe powinny mieæ rozszerzenie 
71 .B .y
72 zgodnie z konwencj± programu
73 .IR yacc .
74 W przeciwieñstwie do plików tworzonych przez program
75 .IR yacc ,
76 pliki wuj¶ciwe nie maj± sta³ego przedrostka nazw, lecz u¿ywaj± przedrostka 
77 nazwy pliku wej¶ciowego. Na przyk³ad, plik z opisem gramatyki o nazwie
78 .B parse.y
79 pos³u¿y do stworzenia parsera w pliku o nazwie
80 .BR parse.tab.c ,
81 zamiast
82 .BR y.tab.c ,
83 jak w programie
84 .IR yacc .
85 .PP
86 Ten opis opcji rozpoznawanych przez program
87 .I bison
88 zosta³ zaadaptowany z rozdzia³u
89 .B Invocation
90 pochodz±cego z opisu
91 .BR bison.texinfo ,
92 który powinien byæ traktowany jako autorytatywne ¼ród³o informacji.
93 .PP
94 .I bison
95 rozpoznaje zarówno tradycyjne, jednoliterowe opcje, jak i ³atwe do
96 zapamiêtania, d³ugie nazwy opcji.
97 D³ugie nazwy opcji rozpoczynaj± siê od
98 .BR \-\- ,
99 zamiast
100 .BR \- .
101 Mog± byæ one skracane do takiej d³ugo¶ci, aby nadal by³y
102 unikalne. Je¿eli po d³ugiej opcji musi nastepowaæ jej parametr, musi on byæ
103 po³±czony z nazw± opcji znakiem
104 .BR = .
105 .SS OPCJE
106 .TP
107 .BI \-b " przedrostek-pliku"
108 .br
109 .ns
110 .TP
111 .BI \-\-file-prefix= "przedrostek pliku"
112 Okre¶la przedrostek nazwy pliku stosowany do wszystkich plików wyj¶ciowych.
113 Nazwy s± tworzone zgodnie z nastêpuj±cym wzorem:
114 \fIfile-prefix\fB.c\fR.
115 .TP
116 .B \-d
117 .br
118 .ns
119 .TP
120 .B \-\-defines
121 Utwórz dodatkowy plik z definicjami makrointrukcji dla nazw symboli
122 terminalnych zdefiniowanych w pliku gramatyki oraz z definicj± typu warto¶ci
123 semantycznej
124 .BR YYSTYPE ,
125 jak równie¿ z deklaracjami zmiennych zewnêtrznych.
126 .sp
127 Je¿eli plik z parserem nosi nazwê \fInazwa\fB.c\fR, to plik z definicjami 
128 zostanie nazwany \fInazwa\fB.h\fR.
129 .sp
130 Ten plik jest niezbêdny, je¿eli chcesz umie¶ciæ definicjê funkcji
131 .B yylex
132 w oddzielnym pliku ¼ród³owym, poniewa¿ funkcja
133 .B yylex
134 musi mieæ dostêp do kodów symboli terminalnych oraz do zmiennej
135 .BR yylval .
136 .TP
137 .B \-r
138 .br
139 .ns
140 .TP
141 .B \-\-raw
142 Numery symboli terminalnych znajduj±ce siê w pliku \fInazwa\fB.h\fR s±
143 zazwyczaj kompatybilne z programem Yacc. Je¿eli podana zostanie ta opcja,
144 u¿yta zostanie numeracja charakterystyczna dla programu Bison. (numeracja
145 programu Yacc rozpoczyna siê od 257, z wyj±tkiem symboli jednoznakowych;
146 Bison numeruje wszystkie symbole po kolei poczynaj±c od liczby 3).
147 .TP
148 .B \-k
149 .br
150 .ns
151 .TP
152 .B \-\-token-table
153 Ta opcja powoduje, ¿e w pliku \fIname\fB.tab.c\fR znajdzie siê lista symboli
154 terminalnych posortowana pod wzglêdem warto¶ci symboli (nie nazw); jest to
155 zdefiniowane w tablicy 
156 .IR yytname .
157 W pliku znajd± siê równie¿ definicje sta³ych
158 .IR YYNTOKENS ,
159 .IR YYNNTS ,
160 .IR YYNRULES ,
161
162 .IR YYNSTATES .
163 .TP
164 .B \-l
165 .br
166 .ns
167 .TP
168 .B \-\-no-lines
169 Nie umieszczaj w pliku z parserem poleceñ 
170 .B #line 
171 dla preprocesora. Normalnie 
172 .I bison
173 umieszcza je w tym pliku, aby kompilator oraz debuggery wykazywa³y b³êdy w
174 kontek¶cie twojego pliku ¼ród³owego z gramatyk±. Ta opcja powoduje, ¿e b³êdy
175 bêd± wykazywane w kontek¶cie pliku zawieraj±cego parser, traktuj±c go jak
176 niezale¿ny plik na równych prawach.
177 .TP
178 .B \-n
179 .br
180 .ns
181 .TP
182 .B \-\-no-parser
183 Nie generuj kodu parsera; generuj tylko deklaracje. Utworzony plik
184 \fIname\fB.tab.c\fR bêdzie zawiera³ wy³±cznie deklaracje sta³ych. Dodatkowo,
185 w pliku \fIname\fB.act\fR znajdzie siê wyra¿enie switch zawieraj±ce
186 wszystkie przet³umaczone definicje akcji.
187 .TP
188 .BI \-o " plik-wyj¶ciowy"
189 .br
190 .ns
191 .TP
192 .BI \-\-output-file= plik-wyj¶ciowy
193 Okre¶l nazwê 
194 .I "pliku wyj¶ciowego" 
195 zawieraj±cego definicjê parsera.
196 .sp
197 Nazwy pozosta³ych plików s± tworzone z nazwy
198 .I "pliku wej¶ciowego"
199 zgodnie z zasadami opisanymi przy opcjach
200 .B \-v
201 i
202 .BR \-d .
203
204 .TP
205 .BI \-p " przedrostek"
206 .br
207 .ns
208 .TP
209 .BI \-\-name-prefix= przedrostek
210 Przedrostek nazw zewnêtrznych symboli u¿ywanych przez parser. Zastêpuje
211 standardowy przedrostek
212 .BR yy .
213 Symbole, których nazwy ulegn± zmianie, to
214 .BR yyparse ,
215 .BR yylex ,
216 .BR yyerror ,
217 .BR yylval ,
218 .BR yychar , 
219 i
220 .BR yydebug .
221 .sp
222 Na przyk³ad, je¿eli u¿yjesz opcji
223 .BR "\-p c" ,
224 wówczas powy¿sze nazwy bêd± mia³y postaæ
225 .BR cparse ,
226 .BR clex ,
227 itd.
228 .TP
229 .B \-t
230 .br
231 .ns
232 .TP
233 .B \-\-debug
234 Umie¶æ w pliku z parserem makrodefinicjê
235 .B YYDEBUG
236 aby skompilowany zosta³ kod pomagaj±cy diagnozowaæ problemy (debug code).
237 .TP
238 .B \-v
239 .br
240 .ns
241 .TP
242 .B \-\-verbose
243 Utwórz dodatkowy plik z dok³adnym opisami stanów parsera i akcji
244 podejmowanych dla ka¿dego kolejnego symbolu w tych stanach.
245 .sp
246 Ten plik opisuje równie¿ wszystkie konflikty; zarówno te rozwik³ane przez
247 nastêpstwo operatorów, jak i te nierozwik³ane.
248 .sp
249 Nazwa pliku z opisem jest tworzona przez usuniêcie
250 .B .tab.c
251 lub
252 .B .c
253 z nazwy pliku zawieraj±cego parser i dodanie
254 .BR .output .
255 .sp
256 Na przyk³ad, je¿eli plikiem wej¶ciowym jest
257 .BR foo.y ,
258 wówczas plik zawierj±cy parser nosi nazwê
259 .BR foo.tab.c .
260 Plik z opisem stanów bêdzie nazwany
261 .BR foo.output .
262 .TP
263 .B \-V
264 .br
265 .ns
266 .TP
267 .B \-\-version
268 Wypisz numer wersji i zakoñcz dzia³anie programu
269 .TP
270 .B \-h
271 .br
272 .ns
273 .TP
274 .B \-\-help
275 Wypisz spis opcji i zakoñcz dzia³anie programu.
276 .TP
277 .B \-y
278 .br
279 .ns
280 .TP
281 .B \-\-yacc
282 .br
283 .ns
284 .TP
285 .B \-\-fixed-output-files
286 Ma to samo dzia³anie, co opcja
287 .BR "\-o y.tab.c" ;
288 Plik zawieraj±cy parser nosi nazwê
289 .BR y.tab.c ,
290 a pozosta³e pliki
291 .B y.output
292 i
293 .BR y.tab.h .
294 Ta opcja powoduje na¶ladowanie konwencji programu 
295 .I yacc
296 nazywania plików.
297 Poni¿szy skrypt mo¿e byc u¿ywany jako program
298 .IR yacc :
299 .sp
300 .RS
301 .ft B
302 bison \-y $*
303 .ft R
304 .sp
305 .RE
306 .PP
307 D³ugie nazwy opcji mog± byæ równie¿ poprzedzane przez
308 `+' zamiast `\-\-', ze wzglêdu na kompatybilno¶æ z poprzednimi wersjami.
309 W przysz³o¶ci ta mo¿liwo¶æ ma byæ usuniêta, poniewa¿ jest niekompatybilna ze
310 standardem POSIX.2
311 .SH PLIKI
312 /usr/share/bison/bison.simple   prosty parser
313 .br
314 /usr/share/bison/bison.hairy    skomplikowany parser
315 .SH ZOBACZ TAK¯E
316 .IR yacc (1)
317 .br
318 Opis
319 .IR "Bison Reference Manual" ,
320 zawarty w pliku
321 .B bison.texinfo
322 w dystrybucji ¼ród³owej programu
323 .I bison
324 .SH DIAGNOSTYKA
325 Wszystkiego mo¿na siê ³atwo domy¶liæ.
This page took 0.123584 seconds and 3 git commands to generate.