| 1 | This is flex.info, produced by makeinfo version 4.5 from flex.texi.
|
|---|
| 2 |
|
|---|
| 3 | INFO-DIR-SECTION Programming
|
|---|
| 4 | START-INFO-DIR-ENTRY
|
|---|
| 5 | * flex: (flex). Fast lexical analyzer generator (lex replacement).
|
|---|
| 6 | END-INFO-DIR-ENTRY
|
|---|
| 7 |
|
|---|
| 8 |
|
|---|
| 9 | The flex manual is placed under the same licensing conditions as the
|
|---|
| 10 | rest of flex:
|
|---|
| 11 |
|
|---|
| 12 | Copyright (C) 1990, 1997 The Regents of the University of California.
|
|---|
| 13 | All rights reserved.
|
|---|
| 14 |
|
|---|
| 15 | This code is derived from software contributed to Berkeley by Vern
|
|---|
| 16 | Paxson.
|
|---|
| 17 |
|
|---|
| 18 | The United States Government has rights in this work pursuant to
|
|---|
| 19 | contract no. DE-AC03-76SF00098 between the United States Department of
|
|---|
| 20 | Energy and the University of California.
|
|---|
| 21 |
|
|---|
| 22 | Redistribution and use in source and binary forms, with or without
|
|---|
| 23 | modification, are permitted provided that the following conditions are
|
|---|
| 24 | met:
|
|---|
| 25 |
|
|---|
| 26 | 1. Redistributions of source code must retain the above copyright
|
|---|
| 27 | notice, this list of conditions and the following disclaimer.
|
|---|
| 28 |
|
|---|
| 29 | 2. Redistributions in binary form must reproduce the above copyright
|
|---|
| 30 | notice, this list of conditions and the following disclaimer in the
|
|---|
| 31 | documentation and/or other materials provided with the
|
|---|
| 32 | distribution.
|
|---|
| 33 | Neither the name of the University nor the names of its contributors
|
|---|
| 34 | may be used to endorse or promote products derived from this software
|
|---|
| 35 | without specific prior written permission.
|
|---|
| 36 |
|
|---|
| 37 | THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED
|
|---|
| 38 | WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
|
|---|
| 39 | MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
|---|
| 40 |
|
|---|
| 41 | Indirect:
|
|---|
| 42 | flex.info-1: 1542
|
|---|
| 43 | flex.info-2: 44385
|
|---|
| 44 | flex.info-3: 94974
|
|---|
| 45 | flex.info-4: 144097
|
|---|
| 46 | flex.info-5: 193935
|
|---|
| 47 | flex.info-6: 243586
|
|---|
| 48 | flex.info-7: 281964
|
|---|
| 49 |
|
|---|
| 50 | Tag Table:
|
|---|
| 51 | (Indirect)
|
|---|
| 52 | Node: Top1542
|
|---|
| 53 | Node: Copyright7508
|
|---|
| 54 | Node: Reporting Bugs8942
|
|---|
| 55 | Node: Introduction9238
|
|---|
| 56 | Node: Simple Examples10065
|
|---|
| 57 | Node: Format13454
|
|---|
| 58 | Node: Definitions Section13867
|
|---|
| 59 | Ref: Definitions Section-Footnote-116125
|
|---|
| 60 | Node: Rules Section16193
|
|---|
| 61 | Node: User Code Section17346
|
|---|
| 62 | Node: Comments in the Input17779
|
|---|
| 63 | Node: Patterns19148
|
|---|
| 64 | Ref: case and character ranges24406
|
|---|
| 65 | Node: Matching27081
|
|---|
| 66 | Node: Actions30366
|
|---|
| 67 | Node: Generated Scanner39368
|
|---|
| 68 | Node: Start Conditions44385
|
|---|
| 69 | Node: Multiple Input Buffers55097
|
|---|
| 70 | Ref: Scanning Strings61715
|
|---|
| 71 | Node: EOF63331
|
|---|
| 72 | Node: Misc Macros64926
|
|---|
| 73 | Node: User Values67778
|
|---|
| 74 | Node: Yacc70106
|
|---|
| 75 | Node: Scanner Options71009
|
|---|
| 76 | Node: Options for Specifing Filenames73769
|
|---|
| 77 | Ref: option-header73982
|
|---|
| 78 | Ref: option-outfile74694
|
|---|
| 79 | Ref: option-stdout75019
|
|---|
| 80 | Node: Options Affecting Scanner Behavior76001
|
|---|
| 81 | Ref: option-case-insensitive76231
|
|---|
| 82 | Ref: option-lex-compat76664
|
|---|
| 83 | Ref: option-batch77196
|
|---|
| 84 | Ref: option-interactive77720
|
|---|
| 85 | Ref: option-7bit79074
|
|---|
| 86 | Ref: option-8bit80378
|
|---|
| 87 | Ref: option-default80790
|
|---|
| 88 | Ref: option-always-interactive80854
|
|---|
| 89 | Ref: option-posix81458
|
|---|
| 90 | Ref: option-stack82605
|
|---|
| 91 | Ref: option-stdinit82713
|
|---|
| 92 | Ref: option-yylineno83191
|
|---|
| 93 | Ref: option-yywrap83634
|
|---|
| 94 | Node: Code-Level And API Options83902
|
|---|
| 95 | Ref: option-ansi-definitions84119
|
|---|
| 96 | Ref: option-ansi-prototypes84371
|
|---|
| 97 | Ref: option-bison-bridge84618
|
|---|
| 98 | Ref: option-bison-locations84957
|
|---|
| 99 | Ref: option-noline85217
|
|---|
| 100 | Ref: option-reentrant85731
|
|---|
| 101 | Ref: option-c++86342
|
|---|
| 102 | Ref: option-array86468
|
|---|
| 103 | Ref: option-pointer86566
|
|---|
| 104 | Ref: option-prefix86694
|
|---|
| 105 | Ref: option-main88223
|
|---|
| 106 | Ref: option-nounistd88407
|
|---|
| 107 | Ref: option-yyclass88915
|
|---|
| 108 | Node: Options for Scanner Speed and Size89395
|
|---|
| 109 | Ref: option-align89934
|
|---|
| 110 | Ref: option-ecs90435
|
|---|
| 111 | Ref: option-meta-ecs91471
|
|---|
| 112 | Ref: option-read91958
|
|---|
| 113 | Ref: option-full93841
|
|---|
| 114 | Ref: option-fast94036
|
|---|
| 115 | Node: Debugging Options94974
|
|---|
| 116 | Ref: option-backup95151
|
|---|
| 117 | Ref: option-debug95696
|
|---|
| 118 | Ref: option-perf-report96419
|
|---|
| 119 | Ref: option-nodefault97045
|
|---|
| 120 | Ref: option-trace97363
|
|---|
| 121 | Ref: option-nowarn97654
|
|---|
| 122 | Ref: option-verbose97722
|
|---|
| 123 | Ref: option-warn98151
|
|---|
| 124 | Node: Miscellaneous Options98370
|
|---|
| 125 | Node: Performance98844
|
|---|
| 126 | Node: Cxx109181
|
|---|
| 127 | Node: Reentrant116780
|
|---|
| 128 | Node: Reentrant Uses117454
|
|---|
| 129 | Node: Reentrant Overview119055
|
|---|
| 130 | Node: Reentrant Example119847
|
|---|
| 131 | Node: Reentrant Detail120604
|
|---|
| 132 | Node: Specify Reentrant121030
|
|---|
| 133 | Node: Extra Reentrant Argument121666
|
|---|
| 134 | Node: Global Replacement122907
|
|---|
| 135 | Node: Init and Destroy Functions124125
|
|---|
| 136 | Node: Accessor Methods126278
|
|---|
| 137 | Node: Extra Data127611
|
|---|
| 138 | Node: About yyscan_t129782
|
|---|
| 139 | Node: Reentrant Functions130167
|
|---|
| 140 | Ref: bison-functions131649
|
|---|
| 141 | Node: Lex and Posix132390
|
|---|
| 142 | Node: Memory Management139771
|
|---|
| 143 | Ref: memory-management139911
|
|---|
| 144 | Node: The Default Memory Management140142
|
|---|
| 145 | Ref: The Default Memory Management-Footnote-1143944
|
|---|
| 146 | Node: Overriding The Default Memory Management144097
|
|---|
| 147 | Ref: Overriding The Default Memory Management-Footnote-1146535
|
|---|
| 148 | Node: A Note About yytext And Memory146699
|
|---|
| 149 | Node: Serialized Tables147925
|
|---|
| 150 | Ref: serialization148063
|
|---|
| 151 | Node: Creating Serialized Tables148831
|
|---|
| 152 | Node: Loading and Unloading Serialized Tables150434
|
|---|
| 153 | Node: Tables File Format152193
|
|---|
| 154 | Node: Diagnostics159202
|
|---|
| 155 | Node: Limitations162610
|
|---|
| 156 | Node: Bibliography164555
|
|---|
| 157 | Node: FAQ165225
|
|---|
| 158 | Node: When was flex born?169457
|
|---|
| 159 | Node: How do I expand \ escape sequences in C-style quoted strings?169829
|
|---|
| 160 | Node: Why do flex scanners call fileno if it is not ANSI compatible?171112
|
|---|
| 161 | Node: Does flex support recursive pattern definitions?171902
|
|---|
| 162 | Node: How do I skip huge chunks of input (tens of megabytes) while using flex?172752
|
|---|
| 163 | Node: Flex is not matching my patterns in the same order that I defined them.173222
|
|---|
| 164 | Node: My actions are executing out of order or sometimes not at all.174971
|
|---|
| 165 | Node: How can I have multiple input sources feed into the same scanner at the same time?175759
|
|---|
| 166 | Node: Can I build nested parsers that work with the same input file?177750
|
|---|
| 167 | Node: How can I match text only at the end of a file?178759
|
|---|
| 168 | Node: How can I make REJECT cascade across start condition boundaries?179567
|
|---|
| 169 | Node: Why cant I use fast or full tables with interactive mode?180586
|
|---|
| 170 | Node: How much faster is -F or -f than -C?181848
|
|---|
| 171 | Node: If I have a simple grammar cant I just parse it with flex?182163
|
|---|
| 172 | Node: Why doesnt yyrestart() set the start state back to INITIAL?182646
|
|---|
| 173 | Node: How can I match C-style comments?183275
|
|---|
| 174 | Node: The period isnt working the way I expected.184090
|
|---|
| 175 | Node: Can I get the flex manual in another format?185339
|
|---|
| 176 | Node: Does there exist a "faster" NDFA->DFA algorithm?185830
|
|---|
| 177 | Node: How does flex compile the DFA so quickly?186342
|
|---|
| 178 | Node: How can I use more than 8192 rules?187312
|
|---|
| 179 | Node: How do I abandon a file in the middle of a scan and switch to a new file?188726
|
|---|
| 180 | Node: How do I execute code only during initialization (only before the first scan)?189282
|
|---|
| 181 | Node: How do I execute code at termination?190044
|
|---|
| 182 | Node: Where else can I find help?190373
|
|---|
| 183 | Node: Can I include comments in the "rules" section of the file?190749
|
|---|
| 184 | Node: I get an error about undefined yywrap().191131
|
|---|
| 185 | Node: How can I change the matching pattern at run time?191611
|
|---|
| 186 | Node: How can I expand macros in the input?191976
|
|---|
| 187 | Node: How can I build a two-pass scanner?193017
|
|---|
| 188 | Node: How do I match any string not matched in the preceding rules?193935
|
|---|
| 189 | Node: I am trying to port code from AT&T lex that uses yysptr and yysbuf.194848
|
|---|
| 190 | Node: Is there a way to make flex treat NULL like a regular character?195646
|
|---|
| 191 | Node: Whenever flex can not match the input it says "flex scanner jammed".196170
|
|---|
| 192 | Node: Why doesnt flex have non-greedy operators like perl does?196821
|
|---|
| 193 | Node: Memory leak - 16386 bytes allocated by malloc.198176
|
|---|
| 194 | Ref: faq-memory-leak198473
|
|---|
| 195 | Node: How do I track the byte offset for lseek()?199444
|
|---|
| 196 | Node: How do I use my own I/O classes in a C++ scanner?200955
|
|---|
| 197 | Node: How do I skip as many chars as possible?201801
|
|---|
| 198 | Node: deleteme00202881
|
|---|
| 199 | Node: Are certain equivalent patterns faster than others?203327
|
|---|
| 200 | Node: Is backing up a big deal?206816
|
|---|
| 201 | Node: Can I fake multi-byte character support?208788
|
|---|
| 202 | Node: deleteme01210265
|
|---|
| 203 | Node: Can you discuss some flex internals?211390
|
|---|
| 204 | Node: unput() messes up yy_at_bol213680
|
|---|
| 205 | Node: The | operator is not doing what I want214818
|
|---|
| 206 | Node: Why can't flex understand this variable trailing context pattern?216410
|
|---|
| 207 | Node: The ^ operator isn't working217675
|
|---|
| 208 | Node: Trailing context is getting confused with trailing optional patterns218946
|
|---|
| 209 | Node: Is flex GNU or not?220215
|
|---|
| 210 | Node: ERASEME53221929
|
|---|
| 211 | Node: I need to scan if-then-else blocks and while loops222725
|
|---|
| 212 | Node: ERASEME55223945
|
|---|
| 213 | Node: ERASEME56225059
|
|---|
| 214 | Node: ERASEME57226453
|
|---|
| 215 | Node: Is there a repository for flex scanners?227487
|
|---|
| 216 | Node: How can I conditionally compile or preprocess my flex input file?227805
|
|---|
| 217 | Node: Where can I find grammars for lex and yacc?228281
|
|---|
| 218 | Node: I get an end-of-buffer message for each character scanned.228631
|
|---|
| 219 | Node: unnamed-faq-62229229
|
|---|
| 220 | Node: unnamed-faq-63230278
|
|---|
| 221 | Node: unnamed-faq-64231591
|
|---|
| 222 | Node: unnamed-faq-65232593
|
|---|
| 223 | Node: unnamed-faq-66233395
|
|---|
| 224 | Node: unnamed-faq-67234526
|
|---|
| 225 | Node: unnamed-faq-68235529
|
|---|
| 226 | Node: unnamed-faq-69236687
|
|---|
| 227 | Node: unnamed-faq-70237421
|
|---|
| 228 | Node: unnamed-faq-71238198
|
|---|
| 229 | Node: unnamed-faq-72239428
|
|---|
| 230 | Node: unnamed-faq-73240497
|
|---|
| 231 | Node: unnamed-faq-74241442
|
|---|
| 232 | Node: unnamed-faq-75242413
|
|---|
| 233 | Node: unnamed-faq-76243586
|
|---|
| 234 | Node: unnamed-faq-77244308
|
|---|
| 235 | Node: unnamed-faq-78245217
|
|---|
| 236 | Node: unnamed-faq-79246231
|
|---|
| 237 | Node: unnamed-faq-80247967
|
|---|
| 238 | Node: unnamed-faq-81249311
|
|---|
| 239 | Node: unnamed-faq-82252152
|
|---|
| 240 | Node: unnamed-faq-83253135
|
|---|
| 241 | Node: unnamed-faq-84254941
|
|---|
| 242 | Node: unnamed-faq-85256060
|
|---|
| 243 | Node: unnamed-faq-86257108
|
|---|
| 244 | Node: unnamed-faq-87258082
|
|---|
| 245 | Node: unnamed-faq-88258744
|
|---|
| 246 | Node: unnamed-faq-90259601
|
|---|
| 247 | Node: unnamed-faq-91260900
|
|---|
| 248 | Node: unnamed-faq-92263384
|
|---|
| 249 | Node: unnamed-faq-93263899
|
|---|
| 250 | Node: unnamed-faq-94264842
|
|---|
| 251 | Node: unnamed-faq-95266285
|
|---|
| 252 | Node: unnamed-faq-96267819
|
|---|
| 253 | Node: unnamed-faq-97268604
|
|---|
| 254 | Node: unnamed-faq-98269287
|
|---|
| 255 | Node: unnamed-faq-99269978
|
|---|
| 256 | Node: unnamed-faq-100270938
|
|---|
| 257 | Node: unnamed-faq-101271664
|
|---|
| 258 | Node: What is the difference between YYLEX_PARAM and YY_DECL?272498
|
|---|
| 259 | Node: Why do I get "conflicting types for yylex" error?273023
|
|---|
| 260 | Node: How do I access the values set in a Flex action from within a Bison action?273556
|
|---|
| 261 | Node: Appendices273990
|
|---|
| 262 | Node: Makefiles and Flex274157
|
|---|
| 263 | Ref: Makefiles and Flex-Footnote-1277374
|
|---|
| 264 | Ref: Makefiles and Flex-Footnote-2277491
|
|---|
| 265 | Node: Bison Bridge277542
|
|---|
| 266 | Ref: Bison Bridge-Footnote-1280216
|
|---|
| 267 | Node: M4 Dependency280408
|
|---|
| 268 | Ref: M4 Dependency-Footnote-1281591
|
|---|
| 269 | Node: Indices281726
|
|---|
| 270 | Node: Concept Index281964
|
|---|
| 271 | Node: Index of Functions and Macros298838
|
|---|
| 272 | Node: Index of Variables302057
|
|---|
| 273 | Node: Index of Data Types303284
|
|---|
| 274 | Node: Index of Hooks303888
|
|---|
| 275 | Node: Index of Scanner Options304390
|
|---|
| 276 |
|
|---|
| 277 | End Tag Table
|
|---|