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.


 

Index

NAME
SYNOPSIS
DESCRIPTION
Table Compression:
Debugging:
FILES
Scanner behavior:
Generated code:
Miscellaneous:
SEE ALSO