# HG changeset patch # User Masataka Kohagura # Date 1451190078 -32400 # Node ID e6e862e92fdce05dfa7858a5157fbf5bc40e83a1 # Parent e809a2dd0731bbdeebad1ee45be7854516416d07 remove warning and error diff -r e809a2dd0731 -r e6e862e92fdc regexParser/TODO --- a/regexParser/TODO Sat Dec 26 20:03:38 2015 +0900 +++ b/regexParser/TODO Sun Dec 27 13:21:18 2015 +0900 @@ -1,5 +1,5 @@ 2015年 12月26日 土曜日 18時07分00秒 JST - TODO CharClassWalker のテストルーチンを作成する - TODO CharClassMerge のテストルーチンを作成する - TODO serchBit のテストルーチンを作成する - TODO subsetConstraction のテストルーチンを作成する + TODO CharClassWalker の routine test を作成する + TODO CharClassMerge の routine test を作成する + TODO serchBit の routine test を作成する + TODO subsetConstraction の routine test を作成する diff -r e809a2dd0731 -r e6e862e92fdc regexParser/subsetConstraction.cc --- a/regexParser/subsetConstraction.cc Sat Dec 26 20:03:38 2015 +0900 +++ b/regexParser/subsetConstraction.cc Sun Dec 27 13:21:18 2015 +0900 @@ -205,7 +205,7 @@ */ StatePtr createState(TGValue tgv,NodePtr n) { StatePtr s = NEW(State); - s->stateNum = n->stateNum = ++tgv.tg->stateMax; + s->stateNum = n->stateNum = ++tgv.tg->totalStateCount; s->next = tgv.tg->stateList; tgv.tg->stateList = s; s->node = n; @@ -301,7 +301,7 @@ TransitionGeneratorPtr createTransitionGenerator() { TransitionGeneratorPtr tg = NEW(TransitionGenerator); - tg->stateMax = -1; + tg->totalStateCount = -1; tg->stack = NULL; tg->stateArray = NULL; tg->stateList = NULL; @@ -318,10 +318,10 @@ NodePtr eof = createNode(NULL,'e',NULL,NULL,NULL); StatePtr endState = tgv.endState = createState(tgv,eof); tgv = stateAllocate(n,tgv); - if (tg->stateMax > BITBLOCK) { + if (tg->totalStateCount > BITBLOCK) { errorMassege("StateMax > BITBLOCK",__LINE__,__FILE__); } - BitVector bi = createBitVector(tg->stateMax); + BitVector bi = createBitVector(tg->totalStateCount); tgv.tg->stateArray = (StatePtr*)calloc(bi.bitContainer*2,sizeof(StatePtr*)); tgv.tg->stateArray[startState->bitState.bitContainer] = startState; tgv.tg->stateArray[endState->bitState.bitContainer] = endState; @@ -381,11 +381,11 @@ */ SCValue subsetConstraction(SCValue scv) { for (;scv.stateTop;scv.stateTop = scv.stateTop->next) { - CharClassWalker cw = createCharClassWalker(scv.stateTop->cc); + CharClassWalkerPtr cw = createCharClassWalker(scv.stateTop->cc); while (hasNext(cw)) { CharClassPtr cc = getNext(cw); - unsigned long bi = cc->nextState.bitContainer; - if (scv.stateArray[bi]) continue; + BitVector bi = cc->nextState; + if (scv.stateArray[bi.bitContainer]) continue; scv = createState(scv,bi); StatePtr s = scv.stateEnd; for (;bi.bitContainer;) { @@ -399,8 +399,8 @@ CharClassPtr merge = mergeTransition(s,base->cc); s->cc = merge; } - scv.stateArray[bi] = s; + scv.stateArray[bi.bitContainer] = s; } } - return; + return scv; }