Extra generic handle for the character mapping routines.
[idzebra-moved-to-github.git] / dfa / dfap.h
index d58d9f4..c7798c1 100644 (file)
@@ -1,10 +1,28 @@
 /*
- * Copyright (C) 1994, Index Data I/S 
+ * Copyright (C) 1994-1997, Index Data I/S 
  * All rights reserved.
  * Sebastian Hammer, Adam Dickmeiss
  *
  * $Log: dfap.h,v $
- * Revision 1.1  1995-01-24 16:02:53  adam
+ * Revision 1.6  1997-09-18 08:59:17  adam
+ * Extra generic handle for the character mapping routines.
+ *
+ * Revision 1.5  1997/09/05 15:29:58  adam
+ * Changed prototype for chr_map_input - added const.
+ * Added support for C++, headers uses extern "C" for public definitions.
+ *
+ * Revision 1.4  1996/06/04 10:20:03  adam
+ * Added support for character mapping.
+ *
+ * Revision 1.3  1996/01/08  09:09:19  adam
+ * Function dfa_parse got 'const' string argument.
+ * New functions to define char mappings made public.
+ *
+ * Revision 1.2  1995/01/25  11:30:50  adam
+ * Simple error reporting when parsing regular expressions.
+ * Memory usage reduced.
+ *
+ * Revision 1.1  1995/01/24  16:02:53  adam
  * New private header file in dfa module (dfap.h).
  * Module no longer uses yacc to parse regular expressions.
  *
@@ -17,7 +35,6 @@
 
 struct DFA_parse {
     struct Tnode *root;       /* root of regular syntax tree */
-    struct Tnode *top;        /* regular tree top (returned by parse_dfa) */
     int position;             /* no of positions so far */
     int rule;                 /* no of rules so far */
     BSetHandle *charset;      /* character set type */
@@ -26,6 +43,10 @@ struct DFA_parse {
     int max_Tnode;            /* allocated Tnodes */
     struct Tblock *start;     /* start block of Tnodes */
     struct Tblock *end;       /* end block of Tnodes */
+    int *charMap;
+    int charMapSize;
+    void *cmap_data;
+    const char **(*cmap)(void *vp, const char **from, int len);
 };
 
 typedef struct DFA_stateb_ {