miércoles, 13 de enero de 2010

main.h

#include
#include
using namespace std;

#define RESERVADAS 55
#define OPERADORES 37

#define SIMBOLOS 100
#define SINTAXIS 100
#define BUFFER 512

#ifndef MAX_PATH //si no esta definido max_path
#define MAX_PATH 260
#endif

#define VARIABLE 0
#define CADENA 1
#define CONSTANTE 2
#define REAL 3
#define IDENTIFICADOR 4
#define RESERVADA 6
#define CONST_SIMB 5

#define ID_OPERADORES 60
#define ID_RESERVADAS 7
#define ID_SIMBOLOS 100

#define SUMA ID_OPERADORES
#define RESTA ID_OPERADORES+1
#define MULT ID_OPERADORES+2
#define DIVI ID_OPERADORES+3
#define MODU ID_OPERADORES+4
#define INC ID_OPERADORES+5
#define DEC ID_OPERADORES+6
#define IGUAL ID_OPERADORES+7
#define SUMA_A ID_OPERADORES+8
#define RESTA_A ID_OPERADORES+9
#define MULT_A ID_OPERADORES+10
#define DIVI_A ID_OPERADORES+11
#define MODU_A ID_OPERADORES+12
#define PUNTO_A ID_OPERADORES+13
#define NOT ID_OPERADORES+14
#define AND ID_OPERADORES+15
#define OR ID_OPERADORES+16
#define XOR ID_OPERADORES+17
#define O_AND_AND ID_OPERADORES+18
#define O_OR_OR ID_OPERADORES+19
#define IGUAL_IGUAL ID_OPERADORES+20
#define MAYOR_Q ID_OPERADORES+21
#define MENOR_Q ID_OPERADORES+22
#define DIST ID_OPERADORES+23
#define MENOR_IGUAL ID_OPERADORES+24
#define MAYOR_IGUAL ID_OPERADORES+25
#define O_AND ID_OPERADORES+26
#define O_OR ID_OPERADORES+27
#define LLAVE_A ID_OPERADORES+28
#define LLAVE_C ID_OPERADORES+29
#define PAREN_A ID_OPERADORES+30
#define PAREN_C ID_OPERADORES+31
#define CORCH_A ID_OPERADORES+32
#define CORCH_C ID_OPERADORES+33
#define PUNTO ID_OPERADORES+34
#define COMA ID_OPERADORES+35
#define PUNTO_COMA ID_OPERADORES+36

#define R_AND ID_RESERVADAS
#define R_OR ID_RESERVADAS+1
#define R_XOR ID_RESERVADAS+2

#define TOKEN_NO_ENCONTRADO -2
#define TOKEN_INVALIDO -3

typedef struct _TOKEN {
char token[61];
int id;
int tipo;
}TOKEN;

int OperadorArit(char c);
int OperadorRel(char c);
int OperadorLog(char c);
int OperadorOtro(char c);
int OperadorGrupo(char c);

int abrirArchivo(char* nombre);
int AnaSint();
int AnaSem();
int AnaLex(char* token);
int IDOperador(char* token);
int IDReserv(char* token);
int BuscarSimbolo(char* token);
int ModificaTipo(char* token, int tipo);
int ObtieneTipo(char* token);

No hay comentarios:

Publicar un comentario