UNPKG

esther-medina-quintero-parser-nearley

Version:
29 lines (23 loc) 661 B
const SPACE = /(?<SPACE>\s+|#.*|\/[*](?:.|\n)*?[*]\/)/; SPACE.skip = true; const NUMBER = /(?<NUMBER>[-+]?\d+\.?\d*(?:[eE][-+]?\d+)?)/; NUMBER.value = x => Number(x); const STRING = /(?<STRING>"(?:[^"\\]|\\.)*")/; const WORD = /(?<WORD>[^\s(),"]+)/; const LP = /(?<LP>\()/; const RP = /(?<RP>\))/; const COMMA = /(?<COMMA>,)/; const ARRAY = /(?<ARRAY>\[)/; /** Tokens object: definitions */ const tokens = [ SPACE, NUMBER, STRING, WORD, LP, RP, COMMA, ARRAY, ]; const { nearleyLexer } = require("@ull-esit-pl-2324/lexer-generator-solution-esther-medina-quintero"); let lexer = nearleyLexer(tokens); debugger; module.exports = { lexer };