В JavaCC, например, в состоянии DEFAULT
, я хочу выполнить переключение состояния, если следующий токен <A>
, я хочу переключиться в состояние STATE_A
, в противном случае я хочу переключиться в состояние STATE_B
.
Я пытался использовать что-то вроде следующего кода с ""
в качестве подстановочного знака:
TOKEN:
{
<A: "aa"> : STATE_A
| <NOT_A: ""> : STATE_B
}
Но это не работает, когда символ, который не может быть уменьшен доA
выполнено, функция немедленно возвращается и не переключается на STATE_B
, поэтому ""
, похоже, не в состоянии выполнить эту работу.
У вас есть какие-либо предложения?Спасибо.