# HG changeset patch # User Masataka Kohagura # Date 1447156679 -32400 # Node ID 1e5b56e8263bebc4ef7dc4fb31f96ed3b37579b7 # Parent d0d2262d4edf1fb8f01e9174e3c799f816198768 remove some variable diff -r d0d2262d4edf -r 1e5b56e8263b c/regexParser/bitVector.h --- a/c/regexParser/bitVector.h Tue Nov 10 18:08:53 2015 +0900 +++ b/c/regexParser/bitVector.h Tue Nov 10 20:57:59 2015 +0900 @@ -6,5 +6,6 @@ typedef struct bitVectorList { bitVectorList *self; BitVectorPtr bi; + bitVectorList* initBvl; bitVectorList* next[256]; }BitVectorList, *BitVectorListPtr; diff -r d0d2262d4edf -r 1e5b56e8263b c/regexParser/createBitVectorList.cc --- a/c/regexParser/createBitVectorList.cc Tue Nov 10 18:08:53 2015 +0900 +++ b/c/regexParser/createBitVectorList.cc Tue Nov 10 20:57:59 2015 +0900 @@ -8,13 +8,14 @@ BitVectorListPtr createBitVector(NodePtr); BitVectorListPtr descendTreeNode(NodePtr,BitVectorListPtr); -int bvlIndex; +BitVectorListPtr initBvl; BitVectorListPtr createBitVector(NodePtr n,BitVectorListPtr bvl) { BitVectorListPtr nextBvl = bvl->next[(int)n->Value.character] = (BitVectorListPtr)malloc(sizeof(BitVectorList)); + nextBvl->self = bvl->next[(int)n->Value.character]; nextBvl->bi = (BitVectorPtr)malloc(sizeof(BitVector)); nextBvl->bi = bitSet(n->nodeNumber); - nextBvl->self = bvl->next[(int)n->Value.character]; + nextBvl->initBvl = initBvl; puts("-----"); printf(" state : "); bitPrint(bvl->bi); @@ -30,7 +31,7 @@ BitVectorListPtr initBitVector() { BitVectorListPtr bvl = (BitVectorListPtr)malloc(sizeof(BitVectorList)); - bvl->self = bvl; + bvl->initBvl = bvl->self = initBvl = bvl; bvl->bi = (BitVectorPtr)malloc(sizeof(BitVector)); bvl->bi = bitSet(0); return bvl; @@ -54,7 +55,6 @@ } BitVectorListPtr createBitVectorList(NodePtr n) { - bvlIndex = 0; BitVectorListPtr bvl = initBitVector(); descendTreeNode(n,bvl); diff -r d0d2262d4edf -r 1e5b56e8263b c/regexParser/createRegexParser.cc --- a/c/regexParser/createRegexParser.cc Tue Nov 10 18:08:53 2015 +0900 +++ b/c/regexParser/createRegexParser.cc Tue Nov 10 20:57:59 2015 +0900 @@ -23,7 +23,9 @@ n->left = left; n->right = right; - if (ri->tokenType != 'a') { + if (ri->tokenType == '*') { + n->left->parent = n->self; + } else if (ri->tokenType != 'a') { n->right = right; n->left->parent = n->right->parent = n->self; }