Mercurial > hg > Applications > Grep
comparison regexParser/main.cc @ 178:5e8c6857934c pairPro
implement charClassMerge
author | Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Wed, 23 Dec 2015 19:17:36 +0900 |
parents | 3bf2c6d6d53e |
children | d97bcab546e8 |
comparison
equal
deleted
inserted
replaced
177:8de9a33f6ae5 | 178:5e8c6857934c |
---|---|
6 extern NodePtr regex(RegexInfoPtr); | 6 extern NodePtr regex(RegexInfoPtr); |
7 extern void printTree(NodePtr); | 7 extern void printTree(NodePtr); |
8 | 8 |
9 int main(int argc, char **argv) | 9 int main(int argc, char **argv) |
10 { | 10 { |
11 RegexInfoPtr ri = (RegexInfoPtr)malloc(sizeof(RegexInfo)); | 11 RegexInfo ri; |
12 ri->nodeNumber = 1; | 12 ri.stateNumber = 1; |
13 | 13 ri.asterisk = false; |
14 ri.current = NEW(State); | |
15 ri.current->bitState.bitContainer = 0 | |
16 bitSet(ri.current->bitState,ri.stateNumber); | |
17 ri.current->next = NULL; | |
18 ri.current->cc = NULL; | |
19 ri.current->node = NULL; | |
20 ri.states = ri.current; | |
14 for (int i = 1; i < argc; i++) { | 21 for (int i = 1; i < argc; i++) { |
15 if (strcmp(argv[i],"-regex") == 0) { | 22 if (strcmp(argv[i],"-regex") == 0) { |
16 ri->ptr = (unsigned char*)argv[i+1]; i++; | 23 ri.ptr = (unsigned char*)argv[i+1]; i++; |
17 } | 24 } |
18 } | 25 } |
19 | 26 printf("regex : %s\n",ri.ptr); |
20 printf("regex : %s\n",ri->ptr); | 27 NodePtr n = regex(&ri); |
21 NodePtr n = regex(ri); | |
22 printTree(n); | 28 printTree(n); |
23 return 0; | 29 return 0; |
24 } | 30 } |