scan method

  1. @override
bool scan(
  1. HaskellExternalScannerState state,
  2. TreeSitterExternalLexer lexer,
  3. List<bool> validSymbols
)
override

Implementation

@override
bool scan(
  HaskellExternalScannerState state,
  TreeSitterExternalLexer lexer,
  List<bool> validSymbols,
) {
  final context = _Context(state, lexer, validSymbols);
  final result = _scanAll(context);
  final symbol = result.symbol;
  if (result.finished && symbol != null) {
    lexer.setResultSymbol(symbols[symbol.index]);
    return true;
  }
  return false;
}