com.github.simy4.xpath.expr.LessThanExpr Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of xpath-to-xml-core Show documentation
Show all versions of xpath-to-xml-core Show documentation
Convenient utility to build XML models by evaluating XPath expressions
package com.github.simy4.xpath.expr;
import com.github.simy4.xpath.XmlBuilderException;
import com.github.simy4.xpath.navigator.Node;
import com.github.simy4.xpath.view.BooleanView;
import com.github.simy4.xpath.view.View;
import com.github.simy4.xpath.view.ViewContext;
public class LessThanExpr extends AbstractOperationExpr {
public LessThanExpr(Expr leftExpr, Expr rightExpr) {
super(leftExpr, rightExpr);
}
@Override
public View resolve(ViewContext context, View left, View right)
throws XmlBuilderException {
final boolean lt = 0 > Double.compare(left.toNumber(), right.toNumber());
if (!lt && context.isGreedy() && !context.hasNext()) {
throw new XmlBuilderException("Can not apply a 'less than' operator to: " + left + " and: " + right);
}
return BooleanView.of(lt);
}
@Override
String operator() {
return "<";
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy