名前

flex - 高速な字句解析ジェネレーター

書式

flex [OPTIONS] [FILE]...

説明

対象テキストのパターンマッチングを実現するプログラムを生成します。

テーブル圧縮:

-Ca, --align

より大きなテーブルをあきらめて、メモリ配置を優先します。

-Ce, --ecs

同等クラス (equivalence class) を構築します。

-Cf

テーブルを圧縮しません。-f を利用してください。

-CF

テーブルを圧縮しません。-F を利用してください。

-Cm, --meta-ecs

メタ同等クラス (meta-equivalence class) を構築します。

-Cr, --read

スキャナーの入力として stdio ではなく read() を用います。

-f, --full

高速で大きなスキャナーを生成します。-Cfr と同じです。

-F, --fast

代替テーブル表現 (alternate table representation) を用います。-CFr と同じです。

-Cem

デフォルトの圧縮を用います (--ecs --meta-ecs と同じです)。

デバッグ

-d, --debug

スキャナーにおいてデバッグモードを有効にします。

-b, --backup

バックアップ情報を lex.backup に出力します。

-p, --perf-report

性能報告を stderr に出力します。

-s, --nodefault

マッチしなかったテキストを ECHO するデフォルトルールを省略します。

-T, --trace

flex をトレースモードで実行します。

-w, --nowarn

警告メッセージを生成しません。

-v, --verbose

スキャナーの処理統計に関する概要を stdout に出力します。

--hex

デバッグ出力において 8 進数ではなく 16 進数を用います。

ファイル

-o, --outfile=FILE

出力ファイル名を指定します。

-S, --skel=FILE

スケルトンファイルを指定します。

-t, --stdout

スキャナーを lex.yy.c ではなく stdout に出力します。

--yyclass=NAME

C++ クラス名。

--header-file=FILE

スキャナーに加えて C ヘッダーファイルを生成します。

--tables-file[=FILE] テーブルを FILE に出力します。

スキャナーの動作

-7, --7bit

7 ビットスキャナーを生成します。

-8, --8bit

8 ビットスキャナーを生成します。

-B, --batch

バッチスキャナー (batch scanner) を生成します (逆は -I)。

-i, --case-insensitive

パターンにおいて大文字小文字を区別しません。

-l, --lex-compat

オリジナルの lex と最大限の互換性を保ちます。

-X, --posix-compat

POSIX lex と最大限の互換性を保ちます。

-I, --interactive

対話型スキャナー (interactive scanner) を生成します (逆は -B)。

--yylineno

行数カウントを yylinenoe により行います。

生成コード

-+, --c++

C++ スキャナークラスを生成します。

-Dmacro[=defn]

#define マクロを defn とします (デフォルトの defn は '1' です)。

-L, --noline

スキャナーにおける #line ディレクティブを省略します。

-P, --prefix=STRING

プレフィックスに "yy" ではなく STRING を用います。

-R, --reentrant

リエントラントな (reentrant) C スキャナーを生成します。

--bison-bridge

スキャナーを bison 向けの純粋なパーサーとします。

--bison-locations

yylloc サポートを含めます。

--stdinit

yyin/yyout を stdin/stdout に初期化します。

--nounistd

<unistd.h> をインクルードしません。

--noFUNCTION

特定の FUNCTION を生成しません。

その他

-c

POSIX オプションを処理しません。

-n

POSIX オプションを処理しません。

-?

-h, --help

ヘルプメッセージを表示します。

-V, --version

flex のバージョンを表示します。

関連項目

flex の完全なドキュメントは Texinfo マニュアルとしてメンテナンスされています。infoflex の両プログラムが適切にインストールされていれば、以下のコマンド

info flex

を実行して完全なマニュアルを参照できます。