lexerActionFactory method
LexerAction
lexerActionFactory(
- LexerActionType type,
- int data1,
- int data2
)
Implementation
LexerAction lexerActionFactory(LexerActionType type, int data1, int data2) {
switch (type) {
case LexerActionType.CHANNEL:
return LexerChannelAction(data1);
case LexerActionType.CUSTOM:
return LexerCustomAction(data1, data2);
case LexerActionType.MODE:
return LexerModeAction(data1);
case LexerActionType.MORE:
return LexerMoreAction.INSTANCE;
case LexerActionType.POP_MODE:
return LexerPopModeAction.INSTANCE;
case LexerActionType.PUSH_MODE:
return LexerPushModeAction(data1);
case LexerActionType.SKIP:
return LexerSkipAction.INSTANCE;
case LexerActionType.TYPE:
return LexerTypeAction(data1);
default:
throw ArgumentError.value(type, 'lexer action type', 'not valid.');
}
}