flexlexer.h File Reference

updated Sun Jan 8 2017
 
Classes | Namespaces | Macros
flexlexer.h File Reference

RE/flex Flex-compatible FlexLexer base class and Lex/Flex-compatible macros. More...

#include "abslexer.h"
Include dependency graph for flexlexer.h:

Classes

class  reflex::FlexLexer< M >
 Flex-compatible FlexLexer abstract base class template derived from reflex::AbstractMatcher for the reflex-generated yyFlexLexer scanner class. More...
 
class  reflex::FlexLexer< M >::Matcher
 Extends reflex::AbstractLexer::Matcher for Flex-compatibility. More...
 

Namespaces

 reflex
 

Macros

#define YY_USER_INIT
 Flex-compatible user-definable macro. More...
 
#define YY_USER_ACTION
 Flex-compatible user-definable macro. More...
 
#define YY_BREAK   break;
 Flex-compatible user-definable macro. More...
 
#define YY_SCANNER   (*this)
 Flex and Bison-compatible option bison generates a global YY_SCANNER scanner object, otherwise we use *this. More...
 
#define YY_BUF_SIZE   (16384)
 Flex-compatible macro: size of default input buffer. More...
 
#define yy_state_type   int
 Flex-compatible macro: the type of a state variable. More...
 
#define yy_size_t   size_t
 Flex-compatible macro: yy_size_t type of yyleng. More...
 
#define yy_buffer_state   reflex::FlexLexer::Matcher
 Flex-compatible macro: the type of the scanner buffer. More...
 
#define YY_BUFFER_STATE   yy_buffer_state*
 Flex-compatible macro: a pointer to the type of the scanner buffer. More...
 
#define ECHO   YY_SCANNER.LexerOutput(YYText(), YYLeng())
 Flex-compatible macro: ECHO action to output the content of yytext. More...
 
#define BEGIN   YY_SCANNER.start_ =
 Flex-compatible macro: BEGIN action to set a start condition. More...
 
#define YYSTATE   YY_SCANNER.start()
 Flex-compatible macro: the current start condition. More...
 
#define YY_START   YY_SCANNER.start()
 Flex-compatible macro: the current start condition. More...
 
#define yy_current_state   YY_SCANNER.start()
 Flex-compatible macro: the current start condition. More...
 
#define YY_CURRENT_BUFFER   YY_SCANNER.matcher()
 Flex-compatible macro: the current matcher buffer (use only when scanner has started). More...
 
#define YY_FLUSH_BUFFER   YY_SCANNER.matcher().flush()
 Flex-compatible macro: the buffer flush action (use only when scanner has started). More...
 
#define yytext   const_cast<char*>(YY_SCANNER.YYText())
 Flex-compatible macro: the matched text. More...
 
#define yyleng   static_cast<yy_size_t>(YY_SCANNER.YYLeng())
 Flex-compatible macro: the matched text length. More...
 
#define yylineno   static_cast<int>(YY_SCANNER.matcher().lineno())
 Flex-compatible macro: the line number of the matched text. More...
 
#define yy_act   YY_SCANNER.matcher().accept()
 Flex-compatible macro: the matched action index (use only when scanner has started). More...
 
#define yyin   YY_SCANNER.in()
 Flex-compatible macro: the current input (reflex::Input can be a stream, file, or string). More...
 
#define yyout   YY_SCANNER.os_
 Flex-compatible macro: the current output stream. More...
 
#define YY_AT_BOL()    YY_SCANNER.matcher().at_bol()
 Flex-compatible macro: at-begin-of-line check (use only when scanner has started). More...
 
#define yy_set_bol(b)    YY_SCANNER.matcher().set_bol(b)
 Flex-compatible macro: a begin-of-line forced set (use only when scanner has started). More...
 
#define yy_set_interactive(b)   YY_SCANNER.matcher().buffer((b) ? 1 : 0)
 Flex-compatible macro: interactive mode on/off (use only when scanner has started). More...
 
#define yy_create_buffer(i, _)   YY_SCANNER.new_matcher(i)
 Flex-compatible macro: create a new buffer. More...
 
#define yy_delete_buffer(b)    YY_SCANNER.del_matcher(b)
 Flex-compatible macro: delete a buffer. More...
 
#define yypush_buffer_state(b)   YY_SCANNER.push_matcher(b)
 Flex-compatible macro: push the current buffer on the stack to use the given buffer. More...
 
#define yypop_buffer_state()    YY_SCANNER.pop_matcher()
 Flex-compatible macro: pop buffer from the stack and delete the current buffer. More...
 
#define yy_switch_to_buffer(b)   YY_SCANNER.matcher(b)
 Flex-compatible macro: switch to another buffer. More...
 
#define yyrestart(i)    YY_SCANNER.in(i)
 Flex-compatible macro: restart from the given input source. More...
 
#define yyterminate()    return 0
 Flex-compatible macro: the terminating action. More...
 
#define yyinput()    YY_SCANNER.input()
 Flex-compatible macro: read one character, returns zero when EOF. More...
 
#define yyunput(c)    YY_SCANNER.unput(c)
 Flex-compatible macro: put one character back onto the input stream to be read again. More...
 
#define yyoutput(c)    YY_SCANNER.output(c)
 Flex-compatible macro: output one character. More...
 
#define yymore()    YY_SCANNER.matcher().more()
 Flex-compatible macro: append the next matched text to the currently matched text (use only when scanner has started). More...
 
#define yyless(n)    YY_SCANNER.matcher().less(n)
 Flex-compatible macro: truncate the yytext length of the match to n characters in length and reposition for next match (use only when scanner has started). More...
 
#define yy_flex_debug   YY_SCANNER.debug_;
 Flex-compatible macro: the debug flag. More...
 
#define yyscanner   this
 Flex-compatible macro: reentrant use of yyscanner. More...
 
#define yyget_text(s)    static_cast<FlexLexer*>(s)->YYText()
 Flex-compatible macro: the text accessor for reentrant scanner. More...
 
#define yyget_leng(s)    static_cast<FlexLexer*>(s)->YYLeng()
 Flex-compatible macro: the leng accessor for reentrant scanner. More...
 
#define yyget_lineno(s)    static_cast<FlexLexer*>(s)->lineno()
 Flex-compatible macro: the lineno accessor for reentrant scanner. More...
 
#define yyget_in(s)    static_cast<FlexLexer*>(s)->in()
 Flex-compatible macro: the in accessor for reentrant scanner. More...
 
#define yyget_out(s)    static_cast<FlexLexer*>(s)->os_
 Flex-compatible macro: the out accessor for reentrant scanner. More...
 
#define yyset_in(i, s)    static_cast<FlexLexer*>(s)->in(i)
 Flex-compatible macro: the in accessor for reentrant scanner. More...
 
#define yyset_out(o, s)    (static_cast<FlexLexer*>(s)->os_ = o)
 Flex-compatible macro: the out accessor for reentrant scanner. More...
 
#define YY_EXTRA_TYPE   void*
 Flex-compatible macro: the extra type for reentrant scanner. More...
 
#define yyget_extra(s)    static_cast<FlexLexer*>(s)->yyextra
 Flex-compatible macro: yyget_extra() for reentrant scanner. More...
 
#define yyset_extra(x, s)    (static_cast<FlexLexer*>(s)->yyextra = x)
 Flex-compatible macro: yyset_extra() for reentrant scanner. More...
 

Detailed Description

RE/flex Flex-compatible FlexLexer base class and Lex/Flex-compatible macros.

Author
Robert van Engelen - engel.nosp@m.en@g.nosp@m.enivi.nosp@m.a.co.nosp@m.m

Macro Definition Documentation

#define BEGIN   YY_SCANNER.start_ =

Flex-compatible macro: BEGIN action to set a start condition.

#define ECHO   YY_SCANNER.LexerOutput(YYText(), YYLeng())

Flex-compatible macro: ECHO action to output the content of yytext.

#define yy_act   YY_SCANNER.matcher().accept()

Flex-compatible macro: the matched action index (use only when scanner has started).

#define YY_AT_BOL ( )    YY_SCANNER.matcher().at_bol()

Flex-compatible macro: at-begin-of-line check (use only when scanner has started).

#define YY_BREAK   break;

Flex-compatible user-definable macro.

#define YY_BUF_SIZE   (16384)

Flex-compatible macro: size of default input buffer.

#define yy_buffer_state   reflex::FlexLexer::Matcher

Flex-compatible macro: the type of the scanner buffer.

#define YY_BUFFER_STATE   yy_buffer_state*

Flex-compatible macro: a pointer to the type of the scanner buffer.

#define yy_create_buffer (   i,
 
)    YY_SCANNER.new_matcher(i)

Flex-compatible macro: create a new buffer.

#define YY_CURRENT_BUFFER   YY_SCANNER.matcher()

Flex-compatible macro: the current matcher buffer (use only when scanner has started).

#define yy_current_state   YY_SCANNER.start()

Flex-compatible macro: the current start condition.

#define yy_delete_buffer (   b)    YY_SCANNER.del_matcher(b)

Flex-compatible macro: delete a buffer.

#define YY_EXTRA_TYPE   void*

Flex-compatible macro: the extra type for reentrant scanner.

#define yy_flex_debug   YY_SCANNER.debug_;

Flex-compatible macro: the debug flag.

#define YY_FLUSH_BUFFER   YY_SCANNER.matcher().flush()

Flex-compatible macro: the buffer flush action (use only when scanner has started).

#define YY_SCANNER   (*this)

Flex and Bison-compatible option bison generates a global YY_SCANNER scanner object, otherwise we use *this.

#define yy_set_bol (   b)    YY_SCANNER.matcher().set_bol(b)

Flex-compatible macro: a begin-of-line forced set (use only when scanner has started).

#define yy_set_interactive (   b)    YY_SCANNER.matcher().buffer((b) ? 1 : 0)

Flex-compatible macro: interactive mode on/off (use only when scanner has started).

#define yy_size_t   size_t

Flex-compatible macro: yy_size_t type of yyleng.

#define YY_START   YY_SCANNER.start()

Flex-compatible macro: the current start condition.

#define yy_state_type   int

Flex-compatible macro: the type of a state variable.

#define yy_switch_to_buffer (   b)    YY_SCANNER.matcher(b)

Flex-compatible macro: switch to another buffer.

#define YY_USER_ACTION

Flex-compatible user-definable macro.

#define YY_USER_INIT

Flex-compatible user-definable macro.

#define yyget_extra (   s)    static_cast<FlexLexer*>(s)->yyextra

Flex-compatible macro: yyget_extra() for reentrant scanner.

#define yyget_in (   s)    static_cast<FlexLexer*>(s)->in()

Flex-compatible macro: the in accessor for reentrant scanner.

#define yyget_leng (   s)    static_cast<FlexLexer*>(s)->YYLeng()

Flex-compatible macro: the leng accessor for reentrant scanner.

#define yyget_lineno (   s)    static_cast<FlexLexer*>(s)->lineno()

Flex-compatible macro: the lineno accessor for reentrant scanner.

#define yyget_out (   s)    static_cast<FlexLexer*>(s)->os_

Flex-compatible macro: the out accessor for reentrant scanner.

#define yyget_text (   s)    static_cast<FlexLexer*>(s)->YYText()

Flex-compatible macro: the text accessor for reentrant scanner.

#define yyin   YY_SCANNER.in()

Flex-compatible macro: the current input (reflex::Input can be a stream, file, or string).

#define yyinput ( )    YY_SCANNER.input()

Flex-compatible macro: read one character, returns zero when EOF.

#define yyleng   static_cast<yy_size_t>(YY_SCANNER.YYLeng())

Flex-compatible macro: the matched text length.

#define yyless (   n)    YY_SCANNER.matcher().less(n)

Flex-compatible macro: truncate the yytext length of the match to n characters in length and reposition for next match (use only when scanner has started).

#define yylineno   static_cast<int>(YY_SCANNER.matcher().lineno())

Flex-compatible macro: the line number of the matched text.

#define yymore ( )    YY_SCANNER.matcher().more()

Flex-compatible macro: append the next matched text to the currently matched text (use only when scanner has started).

#define yyout   YY_SCANNER.os_

Flex-compatible macro: the current output stream.

#define yyoutput (   c)    YY_SCANNER.output(c)

Flex-compatible macro: output one character.

#define yypop_buffer_state ( )    YY_SCANNER.pop_matcher()

Flex-compatible macro: pop buffer from the stack and delete the current buffer.

#define yypush_buffer_state (   b)    YY_SCANNER.push_matcher(b)

Flex-compatible macro: push the current buffer on the stack to use the given buffer.

#define yyrestart (   i)    YY_SCANNER.in(i)

Flex-compatible macro: restart from the given input source.

#define yyscanner   this

Flex-compatible macro: reentrant use of yyscanner.

#define yyset_extra (   x,
 
)    (static_cast<FlexLexer*>(s)->yyextra = x)

Flex-compatible macro: yyset_extra() for reentrant scanner.

#define yyset_in (   i,
 
)    static_cast<FlexLexer*>(s)->in(i)

Flex-compatible macro: the in accessor for reentrant scanner.

#define yyset_out (   o,
 
)    (static_cast<FlexLexer*>(s)->os_ = o)

Flex-compatible macro: the out accessor for reentrant scanner.

#define YYSTATE   YY_SCANNER.start()

Flex-compatible macro: the current start condition.

#define yyterminate ( )    return 0

Flex-compatible macro: the terminating action.

#define yytext   const_cast<char*>(YY_SCANNER.YYText())

Flex-compatible macro: the matched text.

#define yyunput (   c)    YY_SCANNER.unput(c)

Flex-compatible macro: put one character back onto the input stream to be read again.