# HG changeset patch # User Masataka Kohagura # Date 1450777691 -32400 # Node ID b9e913030a47b1c34c4c97fc36d328744dbb2358 # Parent cca8bb5aeded013b6bf74f7efa479623261b86be allocate nodeNumber to character and cclist (not allocate nodenumber '+' '*' '|') diff -r cca8bb5aeded -r b9e913030a47 regexParser/node.cc --- a/regexParser/node.cc Tue Dec 22 18:14:17 2015 +0900 +++ b/regexParser/node.cc Tue Dec 22 18:48:11 2015 +0900 @@ -34,8 +34,10 @@ printf("(%lu)\n",n->nodeNumber); } else if (n->tokenType == 'c') { printCharacterClass(n->cc,n->nodeNumber,d); + } else if (n->tokenType == 'a') { + printf("%*c%c(%lu)\n",d*4, ' ',n->tokenType,n->nodeNumber); } else { - printf("%*c%c(%lu)\n",d*4, ' ',n->tokenType,n->nodeNumber); + printf("%*c%c\n",d*4, ' ',n->tokenType); } if (n->right != NULL) { diff -r cca8bb5aeded -r b9e913030a47 regexParser/regexParser.cc --- a/regexParser/regexParser.cc Tue Dec 22 18:14:17 2015 +0900 +++ b/regexParser/regexParser.cc Tue Dec 22 18:48:11 2015 +0900 @@ -33,8 +33,12 @@ n->cc = cc; n->left = left; n->right = right; - n->nodeNumber = ri->nodeNumber; - ri->nodeNumber++; + if (n->tokenType == 'a' || n->tokenType == 'c') { + n->nodeNumber = ri->nodeNumber; + ri->nodeNumber++; + } else { + n->nodeNumber = 0; + } return n; }