comparison regexParser/subsetConstraction.h @ 184:1da1b2eacb84 pairPro

gather struct
author Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
date Thu, 24 Dec 2015 20:09:21 +0900
parents 7ae0a3070647
children 109d22faf7b5
comparison
equal deleted inserted replaced
183:7ae0a3070647 184:1da1b2eacb84
1 #include "transition.h" 1 #include "transition.h"
2 #define INIT_STATE_BIT 0 2 #define INIT_STATE_BIT 0
3 #define END_STATE_BIT 63 3 #define END_STATE_BIT 63
4 typedef struct stateStack {
5 BitVector state;
6 struct stateStack *next;
7 } StateStack, *StateStackPtr;
8
9 typedef struct transitionGenerator {
10 long stateMax;
11 StateStack stack;
12 StatePtr state;
13 StatePtr stateArray;
14 StatePtr stateArrayLast;
15 StatePtr currentState;
16 StatePtr nextState;
17 } TransitionGenerator, *TransitionGeneratorPtr;
18
19 typedef struct tgValue {
20 bool asterisk;
21 int stateBegin;
22 int stateEnd;
23 StatePtr state;
24 TransitionGeneratorPtr tg;
25 } TGValue, *TGValuePtr;
26
27 enum charClassStackState {
28 LEFT,
29 SELF,
30 RIGHT
31 };
32
33 typedef struct charClassStack {
34 charClassStackState turn;
35 CharClassPtr cc;
36 struct charClassStack *next;
37 } CharClassStack, *CharClassStackPtr;
38
39 typedef struct charClassWalker {
40 CharClassStackPtr stack;
41 CharClassPtr next;
42 } CharClassWalker, *CharClassWalkerPtr;
43
44 CharClassPtr charClassMerge(CharClassPtr cc,unsigned long begin, unsigned long end, BitVector nextState); 4 CharClassPtr charClassMerge(CharClassPtr cc,unsigned long begin, unsigned long end, BitVector nextState);