Mercurial > hg > Applications > Grep
annotate c/regexParser/regexParser.h @ 89:50a146c05192
add NodeNumber in Regex Parser tree
author | Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Fri, 23 Oct 2015 17:20:54 +0900 |
parents | 5072a44ed842 |
children | 912d7bd51f38 |
rev | line source |
---|---|
77
7f53a587bf97
add regexParser.h
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
1 typedef struct charClass { |
7f53a587bf97
add regexParser.h
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
2 unsigned char table[256]; |
7f53a587bf97
add regexParser.h
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
3 struct utf8Range { |
7f53a587bf97
add regexParser.h
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
4 unsigned char *begin; |
7f53a587bf97
add regexParser.h
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
5 unsigned char *end; |
7f53a587bf97
add regexParser.h
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
6 struct utf8Range *next; |
7f53a587bf97
add regexParser.h
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
7 } *rangeList; |
7f53a587bf97
add regexParser.h
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
8 } CharClass, *CharClassPtr; |
7f53a587bf97
add regexParser.h
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
9 |
85 | 10 typedef struct word { |
11 unsigned char *word; | |
12 long length; | |
13 } Word, *WordPtr; | |
14 | |
77
7f53a587bf97
add regexParser.h
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
15 typedef struct node { |
89
50a146c05192
add NodeNumber in Regex Parser tree
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
85
diff
changeset
|
16 unsigned char tokenType; |
50a146c05192
add NodeNumber in Regex Parser tree
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
85
diff
changeset
|
17 int nodeNumber; |
77
7f53a587bf97
add regexParser.h
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
18 union value { |
85 | 19 CharClassPtr cc; |
77
7f53a587bf97
add regexParser.h
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
20 unsigned char character; |
85 | 21 WordPtr w; |
77
7f53a587bf97
add regexParser.h
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
22 } Value, *ValuePtr; |
7f53a587bf97
add regexParser.h
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
23 struct node *self; |
7f53a587bf97
add regexParser.h
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
24 struct node *parent; |
7f53a587bf97
add regexParser.h
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
25 struct node *left; |
7f53a587bf97
add regexParser.h
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
26 struct node *right; |
7f53a587bf97
add regexParser.h
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
27 } Node, *NodePtr; |
81
27883946b2dc
sort function
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
77
diff
changeset
|
28 |
27883946b2dc
sort function
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
77
diff
changeset
|
29 typedef struct regexInfo { |
27883946b2dc
sort function
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
77
diff
changeset
|
30 unsigned char *ptr; |
27883946b2dc
sort function
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
77
diff
changeset
|
31 unsigned char tokenType; |
27883946b2dc
sort function
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
77
diff
changeset
|
32 int tokenValue; |
27883946b2dc
sort function
Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
parents:
77
diff
changeset
|
33 } RegexInfo, *RegexInfoPtr; |