Differences between version 2 and previous revision of flex(1).
Other diffs: Previous Major Revision, Previous Author, or view the Annotated Edit History
Newer page: | version 2 | Last edited on Monday, June 3, 2002 6:50:13 pm | by perry | Revert |
Older page: | version 1 | Last edited on Monday, June 3, 2002 6:50:13 pm | by perry | Revert |
@@ -1739,9 +1739,9 @@
is equivalent to __-PXYZ.__ Finally,
%option yyclass=
-only applies when generating a C++ scanner ( __-+__ option). It informs ''flex'' that you have derived __foo__ as a subclass of __yyFlexLexer,__ so ''flex'' will place your actions in the member function __foo::yylex()__ instead of __yyFlexLexer::yylex().__ It also generates a __yyFlexLexer::yylex()__ member function that emits a run-time error (by invoking __yyFlexLexer::LexerError())__ if called. See Generating C++ Scanners, below, for additional information.
+only applies when generating a C++ scanner ( __-+__ option). It informs ''flex'' that you have derived __foo__ as a subclass of __yyFlexLexer,__ so ''flex'' will place your actions in the member function __foo::yylex()__ instead of __yyFlexLexer::yylex().__ It also generates a __yyFlexLexer::yylex()__ member function that emits a run-time error (by invoking __yyFlexLexer::!
LexerError())__ if called. See Generating C++ Scanners, below, for additional information.
A number of options are available for lint purists who want
to suppress the appearance of unneeded routines in the
@@ -2001,13 +2001,13 @@
name of the flex executable ends in a '+', such as
''flex++.'' When using this option, flex defaults to
generating the scanner to the file __lex.yy.cc__ instead
of __lex.yy.c.__ The generated scanner includes the
-header file ''FlexLexer.h,'' which defines the interface
+header file ''!
FlexLexer.h,'' which defines the interface
to two C++ classes.
-The first class, __FlexLexer,__ provides an abstract base
+The first class, __!
FlexLexer,__ provides an abstract base
class defining the general scanner class interface. It
provides the following member functions:
@@ -2057,10 +2057,10 @@
__yyrestart()__ (again, the first argument is a
__istream*__ object pointer).
-The second class defined in ''FlexLexer.h'' is
-__yyFlexLexer,__ which is derived from __FlexLexer.__
+The second class defined in ''!
FlexLexer.h'' is
+__yyFlexLexer,__ which is derived from __!
FlexLexer.__
It defines the following additional member
functions:
@@ -2088,9 +2088,9 @@
In this case, rather than generating
__yyFlexLexer::yylex(),__ ''flex'' generates
__S::yylex()__ (and also generates a dummy
__yyFlexLexer::yylex()__ that calls
-__yyFlexLexer::LexerError()__ if called).
+__yyFlexLexer::!
LexerError()__ if called).
__virtual void switch_streams(istream* new_in =
0,__
@@ -2115,33 +2115,33 @@
protected virtual functions which you can redefine in
derived classes to tailor the scanner:
-__virtual int LexerInput( char* buf, int max_size
+__virtual int !
LexerInput( char* buf, int max_size
)__
reads up to __max_size__ characters into __buf__ and
returns the number of characters read. To indicate
end-of-input, return 0 characters. Note that
__-B__ and
__-I__ flags) define the macro __YY_INTERACTIVE.__ If
-you redefine __LexerInput()__ and need to take different
+you redefine __!
LexerInput()__ and need to take different
actions depending on whether or not the scanner might be
scanning an interactive input source, you can test for the
presence of this name via __#ifdef.__
-__virtual void LexerOutput( const char* buf, int size
+__virtual void !
LexerOutput( const char* buf, int size
)__
writes out __size__ characters from the buffer
__buf,__ which, while NUL-terminated, may also contain
__
-__virtual void LexerError( const char* msg
+__virtual void !
LexerError( const char* msg
)__
reports a fatal error message. The default version of this
@@ -2534,9 +2534,9 @@
''''
header file defining the C++ scanner base class,
-__FlexLexer,__ and its derived class,
+__!
FlexLexer,__ and its derived class,
__yyFlexLexer.__
''flex.skl''