static AxesWalker loadWalkers(
          WalkingIterator lpi, Compiler compiler, int stepOpCodePos, int stepIndex)
            throws javax.xml.transform.TransformerException
  {

    int stepType;
    AxesWalker firstWalker = null;
    AxesWalker walker, prevWalker = null;

    int analysis = analyze(compiler, stepOpCodePos, stepIndex);

    while (OpCodes.ENDOP != (stepType = compiler.getOp(stepOpCodePos)))
    {
      walker = createDefaultWalker(compiler, stepOpCodePos, lpi, analysis);

      walker.init(compiler, stepOpCodePos, stepType);
      walker.exprSetParent(lpi);

      // walker.setAnalysis(analysis);
      if (null == firstWalker)
      {
        firstWalker = walker;
      }
      else
      {
        prevWalker.setNextWalker(walker);
        walker.setPrevWalker(prevWalker);
      }

      prevWalker = walker;
      stepOpCodePos = compiler.getNextStepPos(stepOpCodePos);

      if (stepOpCodePos < 0)
        break;
    }

    return firstWalker;
  }
static AxesWalker loadWalkers ( WalkingIterator lpi , Compiler compiler , int stepOpCodePos , int stepIndex ) throws javax . xml . transform . TransformerException { int stepType ; AxesWalker firstWalker = null ; AxesWalker walker , prevWalker = null ; int analysis = analyze ( compiler , stepOpCodePos , stepIndex ) ; while ( OpCodes . ENDOP != ( stepType = compiler . getOp ( stepOpCodePos ) ) ) { walker = createDefaultWalker ( compiler , stepOpCodePos , lpi , analysis ) ; walker . init ( compiler , stepOpCodePos , stepType ) ; walker . exprSetParent ( lpi ) ; if ( null == firstWalker ) { firstWalker = walker ; } else { prevWalker . setNextWalker ( walker ) ; walker . setPrevWalker ( prevWalker ) ; } prevWalker = walker ; stepOpCodePos = compiler . getNextStepPos ( stepOpCodePos ) ; if ( stepOpCodePos < 0 ) break ; } return firstWalker ; }
This method is for building an array of possible levels
where the target element(s) could be found for a match.
@param lpi The owning location path iterator object.
@param compiler non-null reference to compiler object that has processed
the XPath operations into an opcode map.
@param stepOpCodePos The opcode position for the step.
@param stepIndex The top-level step index withing the iterator.

@return non-null AxesWalker derivative.

@throws javax.xml.transform.TransformerException
@xsl.usage advanced