#ifndef LEXER_H #define LEXER_H typedef enum atom atom; typedef struct lexeme lexeme; enum atom { ATOM_LBRACK, ATOM_RBRACK, ATOM_SLASH, ATOM_PLUS, ATOM_MINUS, ATOM_ASTR, ATOM_PRCNT, ATOM_AMPR, ATOM_PIPE, ATOM_CARROT, ATOM_HASH, ATOM_COL, ATOM_SCOL, ATOM_SPACE, ATOM_USCORE, ATOM_EQUAL, ATOM_DOT, ATOM_QMARK, ATOM_BANG, ATOM_LT, ATOM_GT, ATOM_PERCENT, ATOM_COMMA, ATOM_BSLASH, ATOM_QUOTE, ATOM_SQUOTE, ATOM_TAB, ATOM_NLINE, ATOM_ALPHA, ATOM_NUM, ATOM_NONE, NUM_ATOMS }; struct lexeme { }; extern int lex(char *str, int dbg); #endif