| Index Entry | | Section |
|
$ | | |
| $ as normal character in patterns: | | Patterns |
|
% | | |
| %array, advantages of: | | Matching |
| %array, use of: | | Matching |
| %array, with C++: | | Matching |
| %option noyywrapp: | | Generated Scanner |
| %pointer, and unput(): | | Actions |
| %pointer, use of: | | Matching |
| %top: | | Definitions Section |
| %{ and %}, in Definitions Section: | | Definitions Section |
| %{ and %}, in Rules Section: | | Actions |
|
< | | |
| <<EOF>>, use of: | | EOF |
|
[ | | |
| [] in patterns: | | Patterns |
|
^ | | |
| ^ as non-special character in patterns: | | Patterns |
|
| | | |
| |, in actions: | | Actions |
| |, use of: | | Actions |
|
A | | |
| accessor functions, use of: | | Accessor Methods |
| actions: | | Actions |
| actions, embedded C strings: | | Actions |
| actions, redefining YY_BREAK: | | Misc Macros |
| actions, use of { and }: | | Actions |
| aliases, how to define: | | Definitions Section |
| arguments, command-line: | | Scanner Options |
| array, default size for yytext: | | User Values |
|
B | | |
| backing up, eliminating: | | Performance |
| backing up, eliminating by adding error rules: | | Performance |
| backing up, eliminating with catch-all rule: | | Performance |
| backing up, example of eliminating: | | Performance |
| BEGIN: | | Actions |
| BEGIN, explanation: | | Start Conditions |
| beginning of line, in patterns: | | Patterns |
| bison, bridging with flex: | | Bison Bridge |
| bison, parser: | | Bison Bridge |
| bison, scanner to be called from bison: | | Bison Bridge |
| BOL, checking the BOL flag: | | Misc Macros |
| BOL, in patterns: | | Patterns |
| BOL, setting it: | | Misc Macros |
| braces in patterns: | | Patterns |
| bugs, reporting: | | Reporting Bugs |
|
C | | |
| C code in flex input: | | Definitions Section |
| C++: | | Cxx |
| C++ and %array: | | User Values |
| C++ I/O, customizing: | | How do I use my own I/O classes in a C++ scanner? |
| C++ scanners, including multiple scanners: | | Cxx |
| C++ scanners, use of: | | Cxx |
| c++, experimental form of scanner class: | | Cxx |
| C++, multiple different scanners: | | Cxx |
| C-strings, in actions: | | Actions |
| case-insensitive, effect on character classes: | | Patterns |
| character classes in patterns: | | Patterns |
| character classes in patterns, syntax of: | | Patterns |
| character classes, equivalence of: | | Patterns |
| clearing an input buffer: | | Multiple Input Buffers |
| command-line options: | | Scanner Options |
| comments in flex input: | | Definitions Section |
| comments in the input: | | Comments in the Input |
| comments, discarding: | | Actions |
| comments, example of scanning C comments: | | Start Conditions |
| comments, in actions: | | Actions |
| comments, in rules section: | | Comments in the Input |
| comments, syntax of: | | Comments in the Input |
| comments, valid uses of: | | Comments in the Input |
| compressing whitespace: | | Actions |
| concatenation, in patterns: | | Patterns |
| copyright of flex: | | Copyright |
| counting characters and lines: | | Simple Examples |
| customizing I/O in C++ scanners: | | How do I use my own I/O classes in a C++ scanner? |
|
D | | |
| default rule: | | Simple Examples |
| default rule: | | Matching |
| defining pattern aliases: | | Definitions Section |
| Definitions, in flex input: | | Definitions Section |
| deleting lines from input: | | Actions |
| discarding C comments: | | Actions |
| distributing flex: | | Copyright |
|
E | | |
| ECHO: | | Actions |
| ECHO, and yyout: | | Generated Scanner |
| embedding C code in flex input: | | Definitions Section |
| end of file, in patterns: | | Patterns |
| end of line, in negated character classes: | | Patterns |
| end of line, in patterns: | | Patterns |
| end-of-file, and yyrestart(): | | Generated Scanner |
| EOF and yyrestart(): | | Generated Scanner |
| EOF in patterns, syntax of: | | Patterns |
| EOF, example using multiple input buffers: | | Multiple Input Buffers |
| EOF, explanation: | | EOF |
| EOF, pushing back: | | Actions |
| EOL, in negated character classes: | | Patterns |
| EOL, in patterns: | | Patterns |
| error messages, end of buffer missed: | | Lex and Posix |
| error reporting, diagnostic messages: | | Diagnostics |
| error reporting, in C++: | | Cxx |
| error rules, to eliminate backing up: | | Performance |
| escape sequences in patterns, syntax of: | | Patterns |
| exiting with yyterminate(): | | Actions |
| experimental form of c++ scanner class: | | Cxx |
| extended scope of start conditions: | | Start Conditions |
|
F | | |
| file format: | | Format |
| file format, serialized tables: | | Tables File Format |
| flushing an input buffer: | | Multiple Input Buffers |
| flushing the internal buffer: | | Actions |
| format of flex input: | | Format |
| format of input file: | | Format |
| freeing tables: | | Loading and Unloading Serialized Tables |
|
G | | |
| getting current start state with YY_START: | | Start Conditions |
|
H | | |
| halting with yyterminate(): | | Actions |
| handling include files with multiple input buffers: | | Multiple Input Buffers |
| handling include files with multiple input buffers: | | Multiple Input Buffers |
| header files, with C++: | | Cxx |
|
I | | |
| include files, with C++: | | Cxx |
| input file, Definitions section: | | Definitions Section |
| input file, Rules Section: | | Rules Section |
| input file, user code Section: | | User Code Section |
| input(): | | Actions |
| input(), and C++: | | Actions |
| input, format of: | | Format |
| input, matching: | | Matching |
|
K | | |
| keywords, for performance: | | Performance |
|
L | | |
| lex (traditional) and POSIX: | | Lex and Posix |
| LexerInput, overriding: | | How do I use my own I/O classes in a C++ scanner? |
| LexerOutput, overriding: | | How do I use my own I/O classes in a C++ scanner? |
| limitations of flex: | | Limitations |
| literal text in patterns, syntax of: | | Patterns |
| loading tables at runtime: | | Loading and Unloading Serialized Tables |
|
M | | |
| m4: | | M4 Dependency |
| Makefile, example of implicit rules: | | Makefiles and Flex |
| Makefile, explicit example: | | Makefiles and Flex |
| Makefile, syntax: | | Makefiles and Flex |
| matching C-style double-quoted strings: | | Start Conditions |
| matching, and trailing context: | | Matching |
| matching, length of: | | Matching |
| matching, multiple matches: | | Matching |
| member functions, C++: | | Cxx |
| memory management: | | Memory Management |
| memory, allocating input buffers: | | Multiple Input Buffers |
| memory, considerations for reentrant scanners: | | Init and Destroy Functions |
| memory, deleting input buffers: | | Multiple Input Buffers |
| memory, for start condition stacks: | | Start Conditions |
| memory, serialized tables: | | Serialized Tables |
| memory, serialized tables: | | Loading and Unloading Serialized Tables |
| methods, c++: | | Cxx |
| minimal scanner: | | Matching |
| multiple input streams: | | Multiple Input Buffers |
|
N | | |
| name definitions, not POSIX: | | Lex and Posix |
| negating ranges in patterns: | | Patterns |
| newline, matching in patterns: | | Patterns |
| non-POSIX features of flex: | | Lex and Posix |
| noyywrap, %option: | | Generated Scanner |
| NULL character in patterns, syntax of: | | Patterns |
|
O | | |
| octal characters in patterns: | | Patterns |
| options, command-line: | | Scanner Options |
| overriding LexerInput: | | How do I use my own I/O classes in a C++ scanner? |
| overriding LexerOutput: | | How do I use my own I/O classes in a C++ scanner? |
| overriding the memory routines: | | Overriding The Default Memory Management |
|
P | | |
| Pascal-like language: | | Simple Examples |
| pattern aliases, defining: | | Definitions Section |
| pattern aliases, expansion of: | | Patterns |
| pattern aliases, how to define: | | Definitions Section |
| pattern aliases, use of: | | Definitions Section |
| patterns and actions on different lines: | | Lex and Posix |
| patterns, character class equivalence: | | Patterns |
| patterns, common: | | Common Patterns |
| patterns, end of line: | | Patterns |
| patterns, grouping and precedence: | | Patterns |
| patterns, in rules section: | | Patterns |
| patterns, invalid trailing context: | | Patterns |
| patterns, matching: | | Matching |
| patterns, precedence of operators: | | Patterns |
| patterns, repetitions with grouping: | | Patterns |
| patterns, special characters treated as non-special: | | Patterns |
| patterns, syntax: | | Patterns |
| patterns, syntax: | | Patterns |
| patterns, tuning for performance: | | Performance |
| patterns, valid character classes: | | Patterns |
| performance optimization, matching longer tokens: | | Performance |
| performance optimization, recognizing keywords: | | Performance |
| performance, backing up: | | Performance |
| performance, considerations: | | Performance |
| performance, using keywords: | | Performance |
| popping an input buffer: | | Multiple Input Buffers |
| POSIX and lex: | | Lex and Posix |
| POSIX comp;compliance: | | Lex and Posix |
| POSIX, character classes in patterns, syntax of: | | Patterns |
| preprocessor macros, for use in actions: | | Actions |
| pushing an input buffer: | | Multiple Input Buffers |
| pushing back characters with unput: | | Actions |
| pushing back characters with unput(): | | Actions |
| pushing back characters with yyless: | | Actions |
| pushing back EOF: | | Actions |
|
R | | |
| ranges in patterns: | | Patterns |
| ranges in patterns, negating: | | Patterns |
| recognizing C comments: | | Start Conditions |
| reentrant scanners, multiple interleaved scanners: | | Reentrant Uses |
| reentrant scanners, recursive invocation: | | Reentrant Uses |
| reentrant, accessing flex variables: | | Global Replacement |
| reentrant, accessor functions: | | Accessor Methods |
| reentrant, API explanation: | | Reentrant Overview |
| reentrant, calling functions: | | Extra Reentrant Argument |
| reentrant, example of: | | Reentrant Example |
| reentrant, explanation: | | Reentrant |
| reentrant, extra data: | | Extra Data |
| reentrant, initialization: | | Init and Destroy Functions |
| regular expressions, in patterns: | | Patterns |
| REJECT: | | Actions |
| REJECT, calling multiple times: | | Actions |
| REJECT, performance costs: | | Performance |
| reporting bugs: | | Reporting Bugs |
| restarting the scanner: | | Lex and Posix |
| RETURN, within actions: | | Generated Scanner |
| rules, default: | | Simple Examples |
| rules, in flex input: | | Rules Section |
|
S | | |
| scanner, definition of: | | Introduction |
| sections of flex input: | | Format |
| serialization: | | Serialized Tables |
| serialization of tables: | | Creating Serialized Tables |
| serialized tables, multiple scanners: | | Creating Serialized Tables |
| stack, input buffer pop: | | Multiple Input Buffers |
| stack, input buffer push: | | Multiple Input Buffers |
| stacks, routines for manipulating: | | Start Conditions |
| start condition, applying to multiple patterns: | | Start Conditions |
| start conditions: | | Start Conditions |
| start conditions, behavior of default rule: | | Start Conditions |
| start conditions, exclusive: | | Start Conditions |
| start conditions, for different interpretations of same input: | | Start Conditions |
| start conditions, in patterns: | | Patterns |
| start conditions, inclusive: | | Start Conditions |
| start conditions, inclusive v.s. exclusive: | | Start Conditions |
| start conditions, integer values: | | Start Conditions |
| start conditions, multiple: | | Start Conditions |
| start conditions, special wildcard condition: | | Start Conditions |
| start conditions, use of a stack: | | Start Conditions |
| start conditions, use of wildcard condition (<*>): | | Start Conditions |
| start conditions, using BEGIN: | | Start Conditions |
| stdin, default for yyin: | | Generated Scanner |
| stdout, as default for yyout: | | Generated Scanner |
| strings, scanning strings instead of files: | | Multiple Input Buffers |
|
T | | |
| tables, creating serialized: | | Creating Serialized Tables |
| tables, file format: | | Tables File Format |
| tables, freeing: | | Loading and Unloading Serialized Tables |
| tables, loading and unloading: | | Loading and Unloading Serialized Tables |
| terminating with yyterminate(): | | Actions |
| token: | | Matching |
| trailing context, in patterns: | | Patterns |
| trailing context, limits of: | | Patterns |
| trailing context, matching: | | Matching |
| trailing context, performance costs: | | Performance |
| trailing context, variable length: | | Performance |
|
U | | |
| unput(): | | Actions |
| unput(), and %pointer: | | Actions |
| unput(), pushing back characters: | | Actions |
| user code, in flex input: | | User Code Section |
| username expansion: | | Simple Examples |
| using integer values of start condition names: | | Start Conditions |
|
V | | |
| verbatim text in patterns, syntax of: | | Patterns |
|
W | | |
| warning, dangerous trailing context: | | Limitations |
| warning, rule cannot be matched: | | Diagnostics |
| warnings, diagnostic messages: | | Diagnostics |
| whitespace, compressing: | | Actions |
|
Y | | |
| yacc interface: | | Yacc |
| yacc, interface: | | Yacc |
| yyalloc, overriding: | | Overriding The Default Memory Management |
| yyfree, overriding: | | Overriding The Default Memory Management |
| yyin: | | Generated Scanner |
| yyinput(): | | Actions |
| yyleng: | | Matching |
| yyleng, modification of: | | Actions |
| yyless(): | | Actions |
| yyless(), pushing back characters: | | Actions |
| yylex(), in generated scanner: | | Generated Scanner |
| yylex(), overriding: | | Generated Scanner |
| yylex, overriding the prototype of: | | Generated Scanner |
| yylineno, in a reentrant scanner: | | Reentrant Functions |
| yylineno, performance costs: | | Performance |
| yymore(): | | Actions |
| yymore() to append token to previous token: | | Actions |
| yymore(), mega-kludge: | | Actions |
| yymore, and yyleng: | | Actions |
| yymore, performance penalty of: | | Actions |
| yyout: | | Generated Scanner |
| yyrealloc, overriding: | | Overriding The Default Memory Management |
| yyrestart(): | | Generated Scanner |
| yyterminate(): | | Actions |
| yytext: | | Matching |
| yytext, default array size: | | User Values |
| yytext, memory considerations: | | A Note About yytext And Memory |
| yytext, modification of: | | Actions |
| yytext, two types of: | | Matching |
| yywrap(): | | Generated Scanner |
| yywrap, default for: | | Generated Scanner |
| YY_CURRENT_BUFFER, and multiple buffers Finally, the macro: | | Multiple Input Buffers |
| YY_EXTRA_TYPE, defining your own type: | | Extra Data |
| YY_FLUSH_BUFFER: | | Actions |
| YY_INPUT: | | Generated Scanner |
| YY_INPUT, overriding: | | Generated Scanner |
| YY_START, example: | | Start Conditions |
| YY_USER_ACTION to track each time a rule is matched: | | Misc Macros |
|