bison - generator parserów w wersji GNU (zastępuje program yacc)
bison [
OPCJA]...
PLIK
bison jest generatorem parserów w stylu programu
yacc(1) i
powinien być zgodny z plikami wejściowymi stworzonym dla tego
programu.
Pliki wejściowe powinny mieć rozszerzenie
.y zgodnie z
konwencją programu
yacc. W przeciwieństwie do
plików tworzonych przez program
yacc, pliki wyjściowe nie
mają stałego przedrostka nazw, lecz używają
przedrostka nazwy pliku wejściowego. Na przykład, plik z opisem
gramatyki o nazwie
parse.y posłuży do stworzenia parsera
w pliku o nazwie
parse.tab.c, zamiast
y.tab.c, jak w programie
yacc.
Ten opis opcji rozpoznawanych przez program
bison został
zaadaptowany z rozdziału
Invocation pochodzącego z opisu
bison.texi, który powinien być traktowany jako
autorytatywne źródło informacji.
bison rozpoznaje zarówno tradycyjne, jednoliterowe opcje, jak i
łatwe do zapamiętania, długie nazwy opcji. Długie
nazwy opcji rozpoczynają się od
--, zamiast
-.
Mogą być one skracane do takiej długości, aby
nadal były unikalne. Jeżeli po długiej opcji musi
nastepować jej parametr, musi on być połączony z
nazwą opcji znakiem
=.
Tworzy deterministyczny analizator składni LR lub uogólniony LR
(GLR) używając tablic
LALR(1),
IELR(1) lub kanonicznej
LR(1).
Argumenty, które są obowiązkowe dla długich opcji,
są również obowiązkowe dla krótkich. To
samo dotyczy argumentów opcjonalnych.
-
-h, --help
- wyświetla ten tekst i kończy
pracę
-
-V, --version
- wyświetla informacje o wersji i kończy
działanie
- --print-localedir
- wyświetla katalog z danymi dotyczącymi
lokalizacji i kończy pracę
- --print-datadir
- wyświetla katalog zawierający szkielety i
XSLT i kończy pracę
-
-u, --update
- nanosi poprawki w pliku źródłowym
gramatyki i kończy pracę
-
-f, --feature[=FUNKCJE]
- aktywuje różne funkcje programu
- caret, diagnostics-show-caret
- błędy ze wskazaniami
- fixit, diagnostics-parseable-fixits
- poprawki czytelne dla maszyny
- syntax-only
- bez generowania żadnego pliku
- all
- wszystkie powyższe
- none
- wyłączenie wszystkich powyższych
-
-W, --warnings[=KATEGORIA]
- zgłasza ostrzeżenia dotyczące danej
kategorii
-
--color[=KIEDY]
- określa czy kolorować informacje
diagnostyczne
-
--style=PLIK
- określa PLIK CSS do kolorowania diagnostyki
- conflicts-sr
- konflikty S/R (włączone
domyślnie)
- conflicts-rr
- konflikty R/R (włączone
domyślnie)
- counterexamples, cex
- generowanie kontrprzykładów
konfliktów
- dangling-alias
- aliasy łańcuchów nie
przywiązane do symbolu
- deprecated
- przestarzałe konstrukcje
- empty-rule
- puste reguły bez %empty
- midrule-values
- nie ustawione lub nie użyte wartości
pośrednie
- precedence
- bezużyteczne pierwszeństwo i asocjacja
- yacc
- niezgodność z POSIX Yacc
- other
- wszystkie pozostałe ostrzeżenia
(włączone domyślnie)
- all
- wszystkie ostrzeżenia oprócz
'counterexamples', 'dangling-alias' i 'yacc'
- no-KATEGORIA
- wyłączenie ostrzeżeń z
KATEGORII
- none
- wyłączenie wszystkich
ostrzeżeń
- error[=KATEGORIA]
- traktowanie ostrzeżeń jako
błędów
- always, yes
- kolorowanie wyjścia
- never, no
- bez kolorowania wyjścia
- auto, tty
- kolorowanie, jeśli urządzeniem
wyjściowym jest tty
-
-L, --language=JĘZYK
- używa wyjściowy język
programowania
-
-S, --skeleton=PLIK
- używa podanego szkieletu
-
-t, --debug
- produkuje analizator do śledzenia to samo, co
'-Dparse.trace'
- --locations
- włącza obliczanie lokacji
-
-D,
--define=NAZWA[=WARTOŚĆ]
- podobnie jak '%define NAZWA WARTOŚĆ'
-
-F,
--force-define=NAZWA[=WARTOŚĆ]
- nadpisuje '%define NAZWA WARTOŚĆ'
-
-p, --name-prefix=PREFIKS
- dopisuje początkowy PREFIKS do zewnętrznych
symboli zastąpione przez '-Dapi.prefix={PREFIKS}'
-
-l, --no-lines
- zabrania tworzenia dyrektyw '#line'
-
-k, --token-table
- dołącza tablicę nazw symboli
leksykalnych
-
-y, --yacc
- emuluje POSIX Yacc
-
-H, --header=[PLIK]
- produkuje także plik nagłówkowy
- -d
- podobnie, ale bez podania PLIKU (dla POSIX Yacc)
-
-r, --report=LISTA
- produkuje także szczegóły na temat
automatu
-
--report-file=PLIK
- zapisuje raport do PLIKU
-
-v, --verbose
- to samo co '--report=state'
-
-b, --file-prefix=PREFIKS
- ustaw PREFIKS dla plików wyjściowych
-
-o, --output=PLIK
- przekierowuje wyjście do PLIKU
-
-g, --graph[=PLIK]
- produkuje także graf automatu
-
--html[=PLIK]
- produkuje także raport HTML na temat automatu
-
-x, --xml[=PLIK]
- produkuje także raport XML na temat automatu
-
-M, --file-prefix-map=STARY=NOWY
podmiana prefiksu STARY na NOWY przy zapisie ścieżek
- w plikach wyjściowych
- states
- opis stanów
- itemsets
- uzupełnienie zbiorów elementów
podstawowych ich domknięciem
- lookaheads
- bezpośrednie wiązanie wyszukiwanych symboli
leksykalnych z elementami
- solved
- opis rozwiązywania konfliktów
przesunięcie/redukcja
- counterexamples, cex
- generowanie kontrprzykładów
konfliktów
- all
- dołączenie wszystkich powyższych
informacji
- none
- wyłączenie raportu
Napisany przez Roberta Corbetta i Richarda Stallmana.
O błędach programu poinformuj <
[email protected]>.
Strona internetowa GNU Bison: <
https://www.gnu.org/software/bison/>.
Ogólna pomoc dotycząca oprogramowania GNU:
<
https://www.gnu.org/gethelp/>.
O błędach tłumaczenia poinformuj
<
https://translationproject.org/team/pl.html>.
Dla pełnej dokumentacji, uruchom: info bison.
Copyright © 2021 Free Software Foundation, Inc.
Jest to wolne oprogramowanie; warunki rozpowszechniania znajdują
się w źródle programu. NIE ma gwarancji, nawet
PRZYDATNOŚCI HANDLOWEJ czy PRZYDATNOŚCI DO
OKREŚLONEGO CELU.
lex(1),
flex(1),
yacc(1).
Pełna dokumentacja dla programu
bison jest utrzymywana jako
podręcznik Texinfo. Jeśli programy
info oraz
bison
są właściwie zainstalowane, polecenie
- info bison
powinno dać dostęp do pełnego podręcznika.
Autorami polskiego tłumaczenia niniejszej strony podręcznika
są: Łukasz Kowalczyk <
[email protected]> i
Robert Luberda <
[email protected]>
Niniejsze tłumaczenie jest wolną dokumentacją.
Bliższe informacje o warunkach licencji można uzyskać
zapoznając się z
GNU
General Public License w wersji 3 lub nowszej. Nie przyjmuje się
ŻADNEJ ODPOWIEDZIALNOŚCI.
Błędy w tłumaczeniu strony podręcznika prosimy
zgłaszać na adres listy dyskusyjnej
[email protected]