/** * Allocate a SequenceOutputter. Used from generated bytecode. * * @param context dynamic XPath context * @param hostLang host language (XSLT/XQuery) * @return the allocated SequenceOutputter * @see com.saxonica.ee.bytecode.util.CompilerService */ /*@Nullable*/ public static SequenceOutputter allocateSequenceOutputter(XPathContext context, int hostLang) { Controller controller = context.getController(); SequenceOutputter seq = controller.allocateSequenceOutputter(20); seq.getPipelineConfiguration().setHostLanguage(hostLang); return seq; }
/** * Allocate a SequenceOutputter. Used from generated bytecode. * * @param context dynamic XPath context * @param hostLang host language (XSLT/XQuery) * @return the allocated SequenceOutputter * @see com.saxonica.ee.bytecode.util.CompilerService */ /*@Nullable*/ public static SequenceOutputter allocateSequenceOutputter(XPathContext context, int hostLang) { Controller controller = context.getController(); SequenceOutputter seq = controller.allocateSequenceOutputter(20); seq.getPipelineConfiguration().setHostLanguage(hostLang); return seq; }
/** * Evaluate as an expression. We rely on the fact that when these instructions * are generated by XQuery, there will always be a valueExpression to evaluate * the content */ public Item evaluateItem(XPathContext context) throws XPathException { Controller controller = context.getController(); Receiver saved = context.getReceiver(); SequenceOutputter seq = controller.allocateSequenceOutputter(1); seq.getPipelineConfiguration().setHostLanguage(getPackageData().getHostLanguage()); context.setReceiver(seq); process(context); seq.close(); context.setReceiver(saved); Item item = seq.getFirstItem(); seq.reset(); return item; }
@Override public Sequence<?> evaluate(Expression expr, XPathContext context) throws XPathException { Controller controller = context.getController(); Receiver saved = context.getReceiver(); SequenceOutputter seq = controller.allocateSequenceOutputter(20); seq.getPipelineConfiguration().setHostLanguage(expr.getPackageData().getHostLanguage()); context.setReceiver(seq); seq.open(); expr.process(context); seq.close(); context.setReceiver(saved); Sequence<?> val = seq.getSequence(); seq.reset(); return val; }
/** * Helper method to construct an iterator over the results of the expression when all that * the expression itself offers is a process() method. This builds the entire results of the * expression as a sequence in memory and then iterates over it. * * @param context the dynamic evaluation context * @return an iterator over the results of the expression * @throws XPathException if a dynamic error occurs */ public static SequenceIterator<?> getIteratorFromProcessMethod( Expression exp, XPathContext context) throws XPathException { Controller controller = context.getController(); assert controller != null; Receiver saved = context.getReceiver(); SequenceOutputter seq = controller.allocateSequenceOutputter(20); seq.getPipelineConfiguration().setHostLanguage(exp.getPackageData().getHostLanguage()); context.setReceiver(seq); exp.process(context); context.setReceiver(saved); seq.close(); return seq.iterate(); }
@Override public Sequence<?> evaluate(Expression expr, XPathContext context) throws XPathException { Controller controller = context.getController(); Receiver saved = context.getReceiver(); SequenceOutputter seq = controller.allocateSequenceOutputter(20); seq.getPipelineConfiguration().setHostLanguage(expr.getPackageData().getHostLanguage()); context.setReceiver(seq); seq.open(); expr.process(context); seq.close(); context.setReceiver(saved); Sequence<?> val = seq.getSequence(); seq.reset(); return val; }
/** * Helper method to construct an iterator over the results of the expression when all that * the expression itself offers is a process() method. This builds the entire results of the * expression as a sequence in memory and then iterates over it. * * @param context the dynamic evaluation context * @return an iterator over the results of the expression * @throws XPathException if a dynamic error occurs */ public static SequenceIterator<?> getIteratorFromProcessMethod( Expression exp, XPathContext context) throws XPathException { Controller controller = context.getController(); assert controller != null; Receiver saved = context.getReceiver(); SequenceOutputter seq = controller.allocateSequenceOutputter(20); seq.getPipelineConfiguration().setHostLanguage(exp.getPackageData().getHostLanguage()); context.setReceiver(seq); exp.process(context); context.setReceiver(saved); seq.close(); return seq.iterate(); }
/** * Evaluate as an expression. We rely on the fact that when these instructions * are generated by XQuery, there will always be a valueExpression to evaluate * the content */ public Item evaluateItem(XPathContext context) throws XPathException { Controller controller = context.getController(); Receiver saved = context.getReceiver(); SequenceOutputter seq = controller.allocateSequenceOutputter(1); seq.getPipelineConfiguration().setHostLanguage(getPackageData().getHostLanguage()); context.setReceiver(seq); process(context); seq.close(); context.setReceiver(saved); Item item = seq.getFirstItem(); seq.reset(); return item; }
/** * Helper method to construct an item representing the results of the expression when all that * the expression itself offers is a process() method. * * @param context the dynamic evaluation context * @return an iterator over the results of the expression * @throws XPathException if a dynamic error occurs */ public static Item getItemFromProcessMethod(Expression exp, XPathContext context) throws XPathException { Controller controller = context.getController(); assert controller != null; Receiver saved = context.getReceiver(); SequenceOutputter seq = controller.allocateSequenceOutputter(1); seq.getPipelineConfiguration().setHostLanguage(exp.getPackageData().getHostLanguage()); context.setReceiver(seq); exp.process(context); context.setReceiver(saved); seq.close(); Item result = seq.getFirstItem(); seq.reset(); return result; }
/** * Helper method to construct an item representing the results of the expression when all that * the expression itself offers is a process() method. * * @param context the dynamic evaluation context * @return an iterator over the results of the expression * @throws XPathException if a dynamic error occurs */ public static Item getItemFromProcessMethod(Expression exp, XPathContext context) throws XPathException { Controller controller = context.getController(); assert controller != null; Receiver saved = context.getReceiver(); SequenceOutputter seq = controller.allocateSequenceOutputter(1); seq.getPipelineConfiguration().setHostLanguage(exp.getPackageData().getHostLanguage()); context.setReceiver(seq); exp.process(context); context.setReceiver(saved); seq.close(); Item result = seq.getFirstItem(); seq.reset(); return result; }
Receiver saved = context.getReceiver(); SequenceOutputter seq = controller.allocateSequenceOutputter(1); seq.getPipelineConfiguration().setHostLanguage(getPackageData().getHostLanguage()); } else { TreeReceiver tr = new TreeReceiver(validator); tr.setPipelineConfiguration(seq.getPipelineConfiguration()); context.setReceiver(tr); ini = tr;
Receiver saved = context.getReceiver(); SequenceOutputter seq = controller.allocateSequenceOutputter(1); seq.getPipelineConfiguration().setHostLanguage(getPackageData().getHostLanguage()); } else { TreeReceiver tr = new TreeReceiver(validator); tr.setPipelineConfiguration(seq.getPipelineConfiguration()); context.setReceiver(tr); ini = tr;
} else { TreeReceiver tr = new TreeReceiver(validator); tr.setPipelineConfiguration(seq.getPipelineConfiguration()); c2.setReceiver(tr); ini = tr;
} else { TreeReceiver tr = new TreeReceiver(validator); tr.setPipelineConfiguration(seq.getPipelineConfiguration()); c2.setReceiver(tr); ini = tr;