comparison regexParser/subsetConstruction.cc @ 238:5d66672e5029

recover to previous version
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Wed, 20 Jan 2016 08:58:35 +0900
parents 399380ad95b7
children f5931151d70c
comparison
equal deleted inserted replaced
237:b809e7b62986 238:5d66672e5029
248 TGValue tgv1 = generateTransition(n->left,tgv,pass); 248 TGValue tgv1 = generateTransition(n->left,tgv,pass);
249 TGValue tgv2 = generateTransition(n->right,tgv1,pass); 249 TGValue tgv2 = generateTransition(n->right,tgv1,pass);
250 return tgv2; 250 return tgv2;
251 } else if (n->tokenType == '*') { 251 } else if (n->tokenType == '*') {
252 TGValue tgvAstah = tgv; 252 TGValue tgvAstah = tgv;
253 if (tgvAstah.endState->bitState.bitContainer & 2) { 253 tgvAstah.endState = tgvAstah.startState;
254 tgvAstah.endState = tgvAstah.startState;
255 tgvAstah.endState->bitState = bitSet(tgvAstah.endState->bitState,1);
256 } else {
257 tgvAstah.endState = tgvAstah.startState;
258 }
259 tgvAstah = generateTransition(n->left,tgvAstah,pass); 254 tgvAstah = generateTransition(n->left,tgvAstah,pass);
260 tgvAstah.asterisk = tgvAstah.endState; 255 tgvAstah.asterisk = tgvAstah.startState;
261 return tgvAstah; 256 return tgvAstah;
262 } else if (n->tokenType == 'c' || n->tokenType == 'a'){ 257 } else if (n->tokenType == 'c' || n->tokenType == 'a'){
263 TGValue tgv1 = tgv; 258 TGValue tgv1 = tgv;
264 if (pass==1) { 259 if (pass==1) {
265 n->stateNum = tgv.startState->stateNum; 260 n->stateNum = tgv.startState->stateNum;