comparison regexParser/subsetConstruction.cc @ 244:a3cddb32b87f

change condition in generateTransition
author Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp>
date Thu, 21 Jan 2016 18:11:59 +0900
parents 7189d24dd45e
children 2b1fbfb92d54
comparison
equal deleted inserted replaced
243:7189d24dd45e 244:a3cddb32b87f
266 } else { 266 } else {
267 int nextState = tgv.endState->stateNum; 267 int nextState = tgv.endState->stateNum;
268 n->nextStateNum = nextState; 268 n->nextStateNum = nextState;
269 n->nextState = tgv.endState; 269 n->nextState = tgv.endState;
270 BitVector bi = createBitVector(nextState); 270 BitVector bi = createBitVector(nextState);
271 if (n->nextState->accept) bi = bitSet(bi,1); 271 if (n->nextState->accept && n->nextState->node->tokenType == '*') bi = bitSet(bi,1);
272 setState(n->cc,bi); 272 setState(n->cc,bi);
273 tgv1.startState->cc = mergeTransition(tgv1.startState,n->cc); 273 tgv1.startState->cc = mergeTransition(tgv1.startState,n->cc);
274 } 274 }
275 return tgv1; 275 return tgv1;
276 } else { 276 } else {