private static NodePointer doStepPredicatesStandard(
EvalContext context, NodePointer parent,
Step[] steps, int currentStep)
{
Step step = steps[currentStep];
Expression predicates[] = step.getPredicates();
int axis = step.getAxis();
if (axis == Compiler.AXIS_SELF) {
return doPredicate(
context,
parent,
steps,
currentStep,
predicates,
0);
}
Expression predicate = predicates[0];
// Optimize for a single predicate to avoid building a list
// and to allow the direct access to the index'th element
// in the case of a simple subscript predecate
// It is a very common use case, so it deserves individual