FLEX
Section: Programming (1)
Updated: January 2021
Page Index
NAME
flex - the fast lexical analyser generator
SYNOPSIS
flex
[
,OPTIONS/] [
,FILE/]...
DESCRIPTION
Generates programs that perform pattern-matching on text.
Table Compression:
- -Ca, --align
-
trade off larger tables for better memory alignment
- -Ce, --ecs
-
construct equivalence classes
- -Cf
-
do not compress tables; use -f representation
- -CF
-
do not compress tables; use -F representation
- -Cm, --meta-ecs
-
construct meta-equivalence classes
- -Cr, --read
-
use read() instead of stdio for scanner input
- -f, --full
-
generate fast, large scanner. Same as -Cfr
- -F, --fast
-
use alternate table representation. Same as -CFr
- -Cem
-
default compression (same as --ecs --meta-ecs)
Debugging:
- -d, --debug
-
enable debug mode in scanner
- -b, --backup
-
write backing-up information to lex.backup
- -p, --perf-report
-
write performance report to stderr
- -s, --nodefault
-
suppress default rule to ECHO unmatched text
- -T, --trace
-
flex should run in trace mode
- -w, --nowarn
-
do not generate warnings
- -v, --verbose
-
write summary of scanner statistics to stdout
- --hex
-
use hexadecimal numbers instead of octal in debug outputs
FILES
- -o, --outfile=,FILE/
-
specify output filename
- -S, --skel=,FILE/
-
specify skeleton file
- -t, --stdout
-
write scanner on stdout instead of lex.yy.c
- --yyclass=,NAME/
-
name of C++ class
- --header-file=,FILE/
-
create a C header file in addition to the scanner
-
--tables-file[=,FILE/] write tables to FILE
Scanner behavior:
- -7, --7bit
-
- generate 7-bit scanner
- -8, --8bit
-
generate 8-bit scanner
- -B, --batch
-
generate batch scanner (opposite of -I)
- -i, --case-insensitive
-
ignore case in patterns
- -l, --lex-compat
-
maximal compatibility with original lex
- -X, --posix-compat
-
maximal compatibility with POSIX lex
- -I, --interactive
-
generate interactive scanner (opposite of -B)
- --yylineno
-
track line count in yylineno
Generated code:
- -+, --c++
-
generate C++ scanner class
- -Dmacro[=,defn/]
-
#define macro defn (default defn is '1')
- -L, --noline
-
suppress #line directives in scanner
- -P, --prefix=,STRING/
-
use STRING as prefix instead of "yy"
- -R, --reentrant
-
generate a reentrant C scanner
- --bison-bridge
-
scanner for bison pure parser.
- --bison-locations
-
include yylloc support.
- --stdinit
-
initialize yyin/yyout to stdin/stdout
- --nounistd
-
do not include <unistd.h>
- --noFUNCTION
-
do not generate a particular FUNCTION
Miscellaneous:
- -c
-
do-nothing POSIX option
- -n
-
do-nothing POSIX option
-
-?
- -h, --help
-
- produce this help message
- -V, --version
-
report flex version
SEE ALSO
The full documentation for
flex
is maintained as a Texinfo manual. If the
info
and
flex
programs are properly installed at your site, the command
-
info flex
should give you access to the complete manual.