00001
00004 #ifndef _LEX_H
00005 #define _LEX_H
00006 #include <stdio.h>
00007 #include <errno.h>
00008 #include <pcre.h>
00009
00011 enum elex {
00012 LEX_RE = 3,
00013 LEX_REOFF = 2,
00014 LEX_SUB = 5,
00015 LEX_TAG = 0,
00016 LEX_ELEMENT = 1,
00017 LEX_PAIRS = 2,
00018 LEX_CONTENT = 3,
00019 LEX_REGOK = 0,
00020 LEX_ERR = EINVAL,
00021 LEX_REGDEF = 0,
00022 LEX_REG = PCRE_CASELESS | PCRE_DOTALL,
00023 LEX_BEGIN = 0,
00024 LEX_END = 1,
00025 LEX_OFFSET = 0
00026 };
00027 int lex(char *, const char *, void (*)(char *));
00028 int lexbuf(char *, const char *, void (*)(char *, char **), char **);
00029 #endif