Analex
Páginas: 2 (372 palabras)
Publicado: 21 de octubre de 2011
// Analizador Léxico //
//////////////////////////////////
class Analex extends Lexer;
options{
// Importación del vocabulario de tokens desdeel analizador
// sintáctico (Anasint.g)
importVocab=Anasint;
// Por defecto no se activa la comprobación de literales
// declarados en la sección tokens
testLiterals=true;
//2símbolos de anticipación para tomar decisiones
//(los tokens DP y ASIG justifican su necesidad)
k=2;
//todos los caracteres
charVocabulary='\3'..'\377';
}
tokens{
// Palabras reservas(unidad de programa)
MODULO="modulo";
//Palabra reservada para la creación de objetos
CREAR="crear";
//Palabra reservada para imprimir por pantalla
ESCRIBIR="escribir";
//funcionespredefinidas.
ENTERO_A_REAL="enteroareal";
REAL_A_ENTERO="realaentero";
//Palabra reservada para utilizar un elemento declarado en la clase.
OBJETO="objeto";
// Palabras reservadas(instrucciones compuestas)
// palabras reservadas en condicionales
SI="si";
ENTONCES="entonces";
SINO="sino";
FINSI="finsi";
// palabras reservadas en iteraciones
MIENTRAS="mientras";HACER="hacer";
FINMIENTRAS="finmientras";
// Palabras reservadas (devolución resultado)
DEV="dev";
// Palabras reservadas (visibilidad)
OCULTO="oculto";
// Palabras reservadas (claseinstanciable)
INST="inst";
// Palabras reservas (tipos predefinidos simples)
ENTERO="entero";
REAL="real";
LOGICO="logico";
CARACTER="caracter";
// Palabras reservas (tipospredefinidos compuestos)
FORMACION="formacion";
// Palabras reservas (tipos no predefinidos)
CLASE="clase";
// Palabras reservadas (literales lógicos)
CIERTO="cierto";
FALSO="falso";//Palabra reservada (para objetos nulos)
NULO="nulo";
// Palabras reservadas (operadores lógicos)
Y="y";
O="o";
NO="no";
}
//Tokens inútiles para el análisis sintáctico
//(B)lancos...
Leer documento completo
Regístrate para leer el documento completo.