Small cleanup for the XPath lexer.
This commit is contained in:
parent
b6512afef2
commit
2f5c61b3eb
|
@ -186,6 +186,8 @@ module Oga
|
||||||
rparen = ')' @{ add_token(:T_RPAREN) };
|
rparen = ')' @{ add_token(:T_RPAREN) };
|
||||||
comma = ',' @{ add_token(:T_COMMA) };
|
comma = ',' @{ add_token(:T_COMMA) };
|
||||||
colon = ':' @{ add_token(:T_COLON) };
|
colon = ':' @{ add_token(:T_COLON) };
|
||||||
|
lbrack = '[' @{ add_token(:T_LBRACK) };
|
||||||
|
rbrack = ']' @{ add_token(:T_RBRACK) };
|
||||||
|
|
||||||
# Identifiers
|
# Identifiers
|
||||||
#
|
#
|
||||||
|
@ -337,7 +339,12 @@ module Oga
|
||||||
#
|
#
|
||||||
# See http://www.w3.org/TR/xpath/#NT-NodeType for more information.
|
# See http://www.w3.org/TR/xpath/#NT-NodeType for more information.
|
||||||
|
|
||||||
type_test = 'comment' | 'text' | 'processing-instruction' | 'node';
|
type_test = (
|
||||||
|
'comment' |
|
||||||
|
'text' |
|
||||||
|
'processing-instruction' |
|
||||||
|
'node'
|
||||||
|
) '()';
|
||||||
|
|
||||||
action emit_type_test {
|
action emit_type_test {
|
||||||
emit(:T_TYPE_TEST, ts, te - 2)
|
emit(:T_TYPE_TEST, ts, te - 2)
|
||||||
|
@ -358,13 +365,9 @@ module Oga
|
||||||
|
|
||||||
main := |*
|
main := |*
|
||||||
operator;
|
operator;
|
||||||
whitespace | slash | lparen | rparen | comma | colon;
|
whitespace | slash | lparen | rparen | comma | colon | lbrack | rbrack;
|
||||||
|
|
||||||
type_test '()' => emit_type_test;
|
|
||||||
|
|
||||||
'[' => { add_token(:T_LBRACK) };
|
|
||||||
']' => { add_token(:T_RBRACK) };
|
|
||||||
|
|
||||||
|
type_test => emit_type_test;
|
||||||
var => emit_variable;
|
var => emit_variable;
|
||||||
string => emit_string;
|
string => emit_string;
|
||||||
integer => emit_integer;
|
integer => emit_integer;
|
||||||
|
|
Loading…
Reference in New Issue