You are viewing a plain text version of this content. The canonical link for it is here.
Posted to embperl-cvs@perl.apache.org by ri...@apache.org on 2001/10/25 16:49:02 UTC
cvs commit: embperl epdom.c test.pl
richter 01/10/25 07:49:02
Modified: . Tag: Embperl2c epdom.c test.pl
Log:
Embperl 2 - tree structure rewrite
Revision Changes Path
No revision
No revision
1.4.2.58 +23 -7 embperl/Attic/epdom.c
Index: epdom.c
===================================================================
RCS file: /home/cvs/embperl/Attic/epdom.c,v
retrieving revision 1.4.2.57
retrieving revision 1.4.2.58
diff -u -r1.4.2.57 -r1.4.2.58
--- epdom.c 2001/10/25 08:26:02 1.4.2.57
+++ epdom.c 2001/10/25 14:49:01 1.4.2.58
@@ -9,7 +9,7 @@
# IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
# WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
#
-# $Id: epdom.c,v 1.4.2.57 2001/10/25 08:26:02 richter Exp $
+# $Id: epdom.c,v 1.4.2.58 2001/10/25 14:49:01 richter Exp $
#
###################################################################################*/
@@ -1127,10 +1127,15 @@
tNodeData * pCompileNode = Node_selfLevel (pDomTree, pCheckpoints[nCompileCheckpoint].xNode, r -> nCurrRepeatLevel) ;
tNodeData * pPrevNode = Node_selfPreviousSibling (pDomTree, pCompileNode, r -> nCurrRepeatLevel) ;
- if (pPrevNode && pPrevNode -> xNext != pCompileNode -> xNext)
+ if (pPrevNode && pPrevNode -> xNext != pCompileNode -> xNdx)
{
pPrevNode = Node_selfCondCloneNode (pDomTree, pPrevNode, r -> nCurrRepeatLevel) ;
pPrevNode -> xNext = pCompileNode -> xNdx ;
+ if (pCurrReq -> bDebug & dbgCheckpoint)
+ lprintf (pCurrReq, "[%d]Checkpoint: end of loop DomTree=%d Index=%d Node=%d(%d) RepeatLevel=%d Line=%d -> Index=%d Node=%d(%d) Line=%d SVs=%d\n",
+ pCurrReq -> nPid, r -> xCurrDomTree,
+ nCompileCheckpoint, pPrevNode -> xNdx, xNode_selfLevelNull(pDomTree,pPrevNode), r -> nCurrRepeatLevel, pPrevNode -> nLinenumber,
+ nRunCheckpoint, pCompileNode -> xNdx, xNode_selfLevelNull(pDomTree,pCompileNode), pCompileNode -> nLinenumber, sv_count) ;
}
}
@@ -1241,7 +1246,7 @@
if (pCompileParent -> xNdx == pRunParent -> xNdx)
{
r -> nCurrRepeatLevel++ ;
- Node_selfForceLevel (pDomTree, pPrevNode -> xNdx, r -> nCurrRepeatLevel) ; /* make sure we have a node that points out of the loop */
+ //Node_selfForceLevel (pDomTree, pPrevNode -> xNdx, r -> nCurrRepeatLevel) ; /* make sure we have a node that points out of the loop */
pRunNode = Node_selfCondCloneNode (pDomTree, pRunNode, r -> nCurrRepeatLevel) ;
pRunNode -> xPrev = pPrevNode -> xNdx ;
@@ -1253,11 +1258,22 @@
}
else if (xNode_selfLevelNull(pDomTree,pPrevNode) == xNode_selfLevelNull(pDomTree,pRunParent))
{
- pRunNode = Node_selfLastChild (pDomTree, pRunParent, r -> nCurrRepeatLevel) ;
- r -> nCurrRepeatLevel++ ;
+ if (pCurrReq -> bDebug & dbgCheckpoint)
+ lprintf (pCurrReq, "[%d]Checkpoint: jump backward2 DomTree=%d Index=%d Node=%d(%d),%d(%d) Line=%d -> Index=%d Node=%d(%d),%d(%d) Line=%d SVs=%d\n",
+ pCurrReq -> nPid, r -> xCurrDomTree,
+ nCompileCheckpoint, pPrevNode -> xNdx, xNode_selfLevelNull(pDomTree,pPrevNode),
+ pCompileParent -> xNdx, xNode_selfLevelNull(pDomTree,pCompileParent),
+ pPrevNode -> nLinenumber,
+ nRunCheckpoint, pRunNode -> xNdx, xNode_selfLevelNull(pDomTree,pRunNode),
+ pRunParent -> xNdx, xNode_selfLevelNull(pDomTree,pRunParent),
+ pRunNode -> nLinenumber, sv_count) ;
+ pPrevNode = Node_selfLastChild (pDomTree, pPrevNode, r -> nCurrRepeatLevel) ;
//Node_selfForceLevel (pDomTree, pPrevNode -> xNdx, r -> nCurrRepeatLevel) ; /* make sure we have a node that points out of the loop */
- pRunNode = Node_selfCondCloneNode (pDomTree, pRunNode, r -> nCurrRepeatLevel) ;
+ pPrevNode = Node_selfCondCloneNode (pDomTree, pPrevNode, r -> nCurrRepeatLevel) ;
+ r -> nCurrRepeatLevel++ ;
+
+ pRunNode = Node_selfCondCloneNode (pDomTree, pRunNode, r -> nCurrRepeatLevel) ;
pRunNode -> xPrev = pPrevNode -> xNdx ;
pPrevNode -> xNext = pRunNode -> xNdx ;
@@ -2831,7 +2847,7 @@
#endif
if (pCurrReq -> bDebug & dbgOutput)
- lprintf (r, "[%d]toString: Node=%d RepeatLevel=%d type=%d flags=%x text=>%s<= (#%d) SVs=%d\n", r -> nPid, pNode -> xNdx, nRepeatLevel, pNode -> nType, pNode -> bFlags, Ndx2String (pNode -> nText), pNode -> nText, sv_count) ;
+ lprintf (r, "[%d]toString: Node=%d(%d) RepeatLevel=%d type=%d flags=%x text=>%s<= (#%d) SVs=%d\n", r -> nPid, pNode -> xNdx, xNode_selfLevelNull(pDomTree,pNode), nRepeatLevel, pNode -> nType, pNode -> bFlags, Ndx2String (pNode -> nText), pNode -> nText, sv_count) ;
if (pNode -> bFlags & nflgIgnore)
;
1.70.4.81 +2 -2 embperl/test.pl
Index: test.pl
===================================================================
RCS file: /home/cvs/embperl/test.pl,v
retrieving revision 1.70.4.80
retrieving revision 1.70.4.81
diff -u -r1.70.4.80 -r1.70.4.81
--- test.pl 2001/10/25 08:26:03 1.70.4.80
+++ test.pl 2001/10/25 14:49:01 1.70.4.81
@@ -11,7 +11,7 @@
# IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
# WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
#
-# $Id: test.pl,v 1.70.4.80 2001/10/25 08:26:03 richter Exp $
+# $Id: test.pl,v 1.70.4.81 2001/10/25 14:49:01 richter Exp $
#
###################################################################################
@@ -860,7 +860,7 @@
print "\nloading... ";
- $defaultdebug = 0xfffc5ffd ;
+ $defaultdebug = 0xfffedffd ;
#$defaultdebug = 1 ;
#### setup paths #####
---------------------------------------------------------------------
To unsubscribe, e-mail: embperl-cvs-unsubscribe@perl.apache.org
For additional commands, e-mail: embperl-cvs-help@perl.apache.org