The Parle\RLexer class
(PECL parle >= 0.5.1)
简介
Multistate lexer class. Lexemes can be defined on the fly. If the particular lexer instance is meant to be used with Parle\RParser, the token IDs need to be taken from there. Otherwise, arbitrary token IDs can be supplied. Note, that Parle\Parser is not compatible with this lexer.
类摘要
Parle\RLexer
{
const
integer
ICASE
= 1
;
public
boolean
$bol
= false
;
public void build
(
void
)
public void consume
(
string $data
)
public void dump
(
void
)
public void insertMacro
(
string $name
,
string $regex
)
public void push
(
string $regex
,
integer $id
)
public void push
(
string $state
,
string $regex
,
integer $id
,
string $newState
)
public void push
(
string $state
,
string $regex
,
string $newState
)
public void reset
(
integer $pos
)
}
预定义常量
Parle\RLexer::ICASE
-
Parle\RLexer::DOT_NOT_LF
-
Parle\RLexer::DOT_NOT_CRLF
-
Parle\RLexer::SKIP_WS
-
Parle\RLexer::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
User Contributed Notes
There are no user contributed notes for this page.