numberState function

Function numberState(
  1. Lexer lexer
)

Implementation

Function numberState(Lexer lexer) {
  lexer.take(["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "."]);

  switch (lexer.peek()) {
    case "f":
    case "F":
      lexer.emit(TokenType.Fail);
      break;
    case "r":
    case "R":
      lexer.emit(TokenType.Rep);
      break;
    case "s":
    case "S":
      lexer.emit(TokenType.Set);
      break;
    default:
      lexer.emit(TokenType.Load);
  }

  lexer.take(["f", "F", "r", "R", "s", "S"]);
  lexer.ignore();

  return idleState;
}