14 lines
362 B
Plaintext
14 lines
362 B
Plaintext
|
|
possible lexer states:
|
||
|
|
STATE_NORMAL
|
||
|
|
STATE_STRING
|
||
|
|
STATE_FSTRING
|
||
|
|
STATE_INTERPOLATION
|
||
|
|
|
||
|
|
|
||
|
|
state transitions:
|
||
|
|
STATE_NORMAL + " -> push STATE_STRING
|
||
|
|
STATE_NORMAL + ' -> push STATE_FSTRING
|
||
|
|
STATE_STRING + " -> pop
|
||
|
|
STATE_FSTRING + { -> push STATE_INTERPOLATION, record brace depth
|
||
|
|
STATE_FSTRING + ' -> pop
|
||
|
|
STATE_INTERPOLATION + } (at recorded brace depth) -> pop
|