The Parle\Lexer class
(PECL parle >= 0.5.1)
简介
Single state lexer class. Lexemes can be defined on the fly. If the particular lexer instance is meant to be used with Parle\Parser, the token IDs need to be taken from there. Otherwise, arbitrary token IDs can be supplied. This lexer can give a certain performance advantage over Parle\RLexer, if no multiple states are required. Note, that Parle\RParser is not compatible with this lexer.
类摘要
Parle\Lexer {
/* Constants */
/* 属性 */
/* 方法 */
}
预定义常量
-
Parle\Lexer::ICASE
-
Parle\Lexer::DOT_NOT_LF
-
Parle\Lexer::DOT_NOT_CRLF
-
Parle\Lexer::SKIP_WS
-
Parle\Lexer::MATCH_ZERO_LEN
属性
- bol
-
Start of input flag.
- flags
-
Lexer flags.
- state
-
Current lexer state, readonly.
- marker
-
Position of the latest token match, readonly.
- cursor
-
Current input offset, readonly.
Table of Contents
- Parle\Lexer::advance — Process next lexer rule
- Parle\Lexer::build — Finalize the lexer rule set
- Parle\Lexer::callout — Define token callback
- Parle\Lexer::consume — Pass the data for processing
- Parle\Lexer::dump — Dump the state machine
- Parle\Lexer::getToken — Retrieve the current token
- Parle\Lexer::insertMacro — Insert regex macro
- Parle\Lexer::push — Add a lexer rule
- Parle\Lexer::reset — Reset lexer