subcodex
Version:
Lenguaje de programación en español simple, educativo y brutal: SubCodeX 0.0.4 versión estable
94 lines • 3.69 kB
JavaScript
import { createToken, Lexer } from "chevrotain";
export const Espacio = createToken({
name: "Espacio",
pattern: /[ \t\r]+/,
group: Lexer.SKIPPED,
});
export const NuevaLinea = createToken({
name: "NuevaLinea",
pattern: /\n+/,
group: Lexer.SKIPPED,
});
export const Comentario = createToken({
name: "Comentario",
pattern: /#.*/,
group: Lexer.SKIPPED,
});
export const Sino = createToken({ name: "Sino", pattern: /sino/ });
export const Si = createToken({ name: "Si", pattern: /si/ });
export const VariableKeyword = createToken({ name: "VariableKeyword", pattern: /variable/ });
export const Constante = createToken({ name: "Constante", pattern: /constante/ });
export const Decir = createToken({ name: "Decir", pattern: /decir/ });
export const Entonces = createToken({ name: "Entonces", pattern: /entonces/ });
export const Fin = createToken({ name: "Fin", pattern: /fin/ });
export const Esperar = createToken({ name: "Esperar", pattern: /esperar/ });
export const Segundos = createToken({ name: "Segundos", pattern: /segundos?/ });
export const Repetir = createToken({ name: "Repetir", pattern: /repetir/ });
export const Preguntar = createToken({ name: "Preguntar", pattern: /preguntar/ });
export const Funcion = createToken({ name: "Funcion", pattern: /funcion/ });
export const Llamar = createToken({ name: "Llamar", pattern: /llamar/ });
export const Retornar = createToken({ name: "Retornar", pattern: /retornar/ });
export const ListaNueva = createToken({ name: "ListaNueva", pattern: /lista\.nueva/ });
export const ListaAgregar = createToken({ name: "ListaAgregar", pattern: /lista\.agregar/ });
export const ListaEliminar = createToken({ name: "ListaEliminar", pattern: /lista\.eliminar/ });
export const Mayusculas = createToken({ name: "Mayusculas", pattern: /mayusculas/ });
export const Minusculas = createToken({ name: "Minusculas", pattern: /minusculas/ });
export const Concatenar = createToken({ name: "Concatenar", pattern: /concatenar/ });
export const Longitud = createToken({ name: "Longitud", pattern: /longitud/ });
export const Sumar = createToken({ name: "Sumar", pattern: /sumar/ });
export const Restar = createToken({ name: "Restar", pattern: /restar/ });
export const Multiplicar = createToken({ name: "Multiplicar", pattern: /multiplicar/ });
export const Dividir = createToken({ name: "Dividir", pattern: /dividir/ });
export const ModoDios = createToken({ name: "ModoDios", pattern: /modoDios/ });
export const Igual = createToken({ name: "Igual", pattern: /==/ });
export const Asignacion = createToken({ name: "Asignacion", pattern: /=/ });
export const Mas = createToken({ name: "Mas", pattern: /\+/ });
export const Menor = createToken({ name: "Menor", pattern: /</ });
export const Mayor = createToken({ name: "Mayor", pattern: />/ });
export const Numero = createToken({ name: "Numero", pattern: /[0-9]+/ });
export const Cadena = createToken({ name: "Cadena", pattern: /"[^"\n]*"/ });
export const Identificador = createToken({
name: "Identificador",
pattern: /[a-zA-Z_][a-zA-Z0-9_]*/,
});
export const allTokens = [
Espacio,
NuevaLinea,
Comentario,
Igual,
Asignacion,
Mas,
Menor,
Mayor,
Sino,
Si,
VariableKeyword,
Constante,
Decir,
Entonces,
Fin,
Esperar,
Segundos,
Repetir,
Preguntar,
Funcion,
Llamar,
Retornar,
ListaNueva,
ListaAgregar,
ListaEliminar,
Mayusculas,
Minusculas,
Concatenar,
Longitud,
Sumar,
Restar,
Multiplicar,
Dividir,
ModoDios,
Numero,
Cadena,
Identificador
];
export const SubLexer = new Lexer(allTokens);
//# sourceMappingURL=lexer.js.map