NAZWA

flex - szybki generator analizatora leksykalnego

SKŁADNIA

flex [OPCJE] [PLIK]...

OPIS

Generowanie programów wykonujących na tekście dopasowywanie wzorców.

Komprecja tablic:

-Ca, --align
użycie większych tablic dla lepszego wyrównania pamięci
-Ce, --ecs
konstruowanie klas równoważności
-Cf
nie kompresowanie tablic; użycie reprezentacji -f
-CF
nie kompresowanie tablic; użycie reprezentacji -F
-Cm, --meta-ecs
konstruowanie klas meta-równoważności
-Cr, --read
użycie read() zamiast stdio dla wejścia skanera
-f, --full
wygenerowanie szybkiego, wielkiego skanera. To samo co -Cfr
-F, --fast
użycie alternatywnej reprezentacji tablic. To samo co -CFr
-Cem
domyślne kompresowanie (to samo co --ecs --meta-ecs)

Diagnostyka:

-d, --debug
włączenie trybu diagnostycznego (debug) w skanerze
-b, --backup
zapisanie informacji o zapamiętywaniu do lex.backup
-p, --perf-report
wypisanie raportu o wydajności na stderr
-s, --nodefault
pominięcie domyślnej reguły ECHO dla niedopasowanego tekstu
-T, --trace
flex powinien działać w trybie śledzenia
-w, --nowarn
nie generowanie ostrzeżeń
-v, --verbose
wypisanie podsumowania statystyk skanera na stdout
--hex
używa liczb szesnastkowych zamiast ósemkowych w wynikach debugowania

PLIKI

-o, --outfile=PLIK
podanie nazwy pliku wyjściowego
-S, --skel=PLIK
podanie pliku szablonu
-t, --stdout
zapis wyjścia skanera na stdout zamiast lex.yy.c
--yyclass=NAZWA
nazwa klasy C++
--header-file=PLIK
utworzenie pliku nagłówkowego C oprócz skanera
--tables-file[=PLIK] zapisanie tablic do PLIKU
--backup-file=PLIK
zapisanie informacji o zapamiętywaniu do PLIKU

Zachowanie skanera:

-7, --7bit
wygenerowanie skanera 7-bitowego
-8, --8bit
wygenerowanie skanera 8-bitowego
-B, --batch
wygenerowanie skanera wsadowego (przeciwieństwo -I)
-i, --case-insensitive
ignorowanie wielkości liter we wzorcach
-l, --lex-compat
maksymalna kompatybilność z oryginalnym leksem
-X, --posix-compat
maksymalna kompatybilność z leksem POSIX
-I, --interactive
wygenerowanie skanera interaktywnego (przeciwieństwo -B)
--yylineno
śledzenie liczby linii w yylineno

Generowany kod:

-+, --c++
generowana klasa skanera C++
-Dmacro[=defn]
#define makro defn (domyślne defn to '1')
-L, --noline
pominięcie dyrektyw #line w skanerze
-P, --prefix=ŁAŃCUCH
użycie jako prefiksu ŁAŃCUCHA zamiast "yy"
-R, --reentrant
wygenerowanie wielobieżnego skanera w C
--bison-bridge
skaner dla czystego analizatora w bisonie
--bison-locations
dodanie obsługi yylloc
--stdinit
zainicjowanie yyin/yyout na stdin/stdout
--nounistd
nie dołączanie <unistd.h>
--noFUNKCJA
nie generowanie podanej FUNKCJI

Różne:

-c
nic nie robiąca opcja POSIX
-n
nic nie robiąca opcja POSIX
-?
-h, --help
wyświetlenie tego pomocnego opisu
-V, --version
podanie wersji programu flex

ZOBACZ TAKŻE

Pełna dokumentacja dla programu flex jest utrzymywana jako podręcznik Texinfo. Jeśli programy info oraz flex są właściwie zainstalowane, polecenie
info flex
powinno dać dostęp do pełnego podręcznika.

TŁUMACZENIE

Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Przemek Borys <[email protected]> i Michał Kułach <[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]