/*
- * Copyright (C) 1994, Index Data I/S
+ * Copyright (C) 1994-1999, Index Data
* All rights reserved.
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: lexer.c,v $
- * Revision 1.3 1994-10-03 17:22:19 adam
+ * Revision 1.11 1999-02-02 14:50:10 adam
+ * Updated WIN32 code specific sections. Changed header.
+ *
+ * Revision 1.10 1996/10/29 13:57:27 adam
+ * Include of zebrautl.h instead of alexutil.h.
+ *
+ * Revision 1.9 1996/05/14 11:33:41 adam
+ * MEMDEBUG turned off by default.
+ *
+ * Revision 1.8 1995/09/28 09:18:54 adam
+ * Removed various preprocessor defines.
+ *
+ * Revision 1.7 1995/09/04 12:33:27 adam
+ * Various cleanup. YAZ util used instead.
+ *
+ * Revision 1.6 1995/01/25 11:30:51 adam
+ * Simple error reporting when parsing regular expressions.
+ * Memory usage reduced.
+ *
+ * Revision 1.5 1995/01/24 16:00:22 adam
+ * Added -ansi to CFLAGS.
+ * Some changes to the dfa module.
+ *
+ * Revision 1.4 1994/10/04 17:46:44 adam
+ * Function options now returns arg with error option.
+ *
+ * Revision 1.3 1994/10/03 17:22:19 adam
* Optimization of grepper.
*
* Revision 1.2 1994/09/27 16:31:20 adam
#include <string.h>
#include <stdarg.h>
-#include <util.h>
+#include <zebrautl.h>
#include <dfa.h>
#include "imalloc.h"
#include "lexer.h"
exit (1);
}
-#ifdef YACC
-extern int yydebug;
-#else
-extern int alexdebug;
-#endif
int ccluse = 0;
static int lexer_options (int argc, char **argv)
case 's':
dfa_verbose = 1;
continue;
- case 't':
-#ifdef YACC
- yydebug = 1;
-#else
- alexdebug = 1;
-#endif
- continue;
case 'c':
ccluse = 1;
continue;
int main (int argc, char **argv)
{
int i, no = 0;
- DFA *dfa;
- DFA_states *dfas;
+ struct DFA *dfa;
prog = *argv;
-#ifdef YACC
- yydebug = 0;
-#else
- alexdebug = 0;
-#endif
+ dfa = dfa_init ();
i = lexer_options (argc, argv);
if (i)
return i;
return 1;
}
else while (--argc > 0)
- if (**++argv != '-' && **argv)
- {
- ++no;
- i = read_file (*argv, &dfa);
- if (i)
- return i;
- dfas = mk_dfas (dfa, 2000);
- rm_dfa (&dfa);
- rm_dfas (&dfas);
- }
-#ifdef MEMDEBUG
+ if (**++argv != '-' && **argv)
+ {
+ ++no;
+
+ i = read_file (*argv, dfa);
+ if (i)
+ return i;
+ dfa_mkstate (dfa);
+
+#if MEMDEBUG
+ imemstat();
+#endif
+ }
+ dfa_delete (&dfa);
+#if MEMDEBUG
imemstat();
#endif
if (!no)