ylang - 어휘 분석 단계 - NFA 기반 토큰 정의
comma -> ,
semicolon -> ;
colon -> :
dot -> .
quotation -> '
double_quotation -> "
left_parenthesis -> (
right_parenthesis -> )
left_brace -> {
right_brace -> }
left_bracket -> [
right_bracket -> ]
plus -> +
minus -> -
star -> *
slash -> /
percent -> %
ampersand -> &
pipe -> |
caret -> ^
not -> !
assign -> =
underscore -> _
greater -> >
less -> <
plusplus -> ++
minusminus -> --
and -> &&
or -> ||
greater_equal -> >=
less_equal -> <=
equal -> ==
notequal -> !=
left_shift -> <<
right_shift -> >>
plus_assign -> +=
minus_assign -> -=
mul_assign -> *=
div_assign -> /=
mod_assign -> %=
and_assign -> &=
or_assign -> |=
xor_assign -> ^=
lshift_assign -> <<=
rshift_assign -> >>=
letter -> [a-zA-Z]
letter_ -> (letter | underscore)
digit -> [0-9]
identifier -> letter_ (letter_ | digit)*
decimal -> digit+ ( dot digit+ )?
hexadecimal = 0 [xX] [0-9a-fA-F]+
octal = 0 [0-7]+