Search in sources :

Example 41 with Expr

use of org.apache.jena.sparql.expr.Expr in project jena by apache.

the class ApplyElementTransformVisitor method visit.

@Override
public void visit(ElementAssign el) {
    Var v = el.getVar();
    Var v1 = TransformElementLib.applyVar(v, exprTransform);
    Expr expr = el.getExpr();
    Expr expr1 = ExprTransformer.transform(exprTransform, expr);
    Element el2 = transform.transform(el, v1, expr1);
    push(el2);
}
Also used : Expr(org.apache.jena.sparql.expr.Expr) Var(org.apache.jena.sparql.core.Var)

Example 42 with Expr

use of org.apache.jena.sparql.expr.Expr in project jena by apache.

the class QueryTransformOps method transformExprList.

// ** Mutates the List
private static void transformExprList(List<Expr> exprList, ExprTransform exprTransform) {
    for (int i = 0; i < exprList.size(); i++) {
        Expr e1 = exprList.get(0);
        Expr e2 = ExprTransformer.transform(exprTransform, e1);
        if (e2 == null || e2 == e1)
            continue;
        exprList.set(i, e2);
    }
}
Also used : Expr(org.apache.jena.sparql.expr.Expr)

Example 43 with Expr

use of org.apache.jena.sparql.expr.Expr in project jena by apache.

the class QueryTransformOps method transformSortConditions.

private static void transformSortConditions(List<SortCondition> conditions, ExprTransform exprTransform) {
    for (int i = 0; i < conditions.size(); i++) {
        SortCondition s1 = conditions.get(i);
        Expr e = ExprTransformer.transform(exprTransform, s1.expression);
        if (e == null || s1.expression.equals(e))
            continue;
        conditions.set(i, new SortCondition(e, s1.direction));
    }
}
Also used : SortCondition(org.apache.jena.query.SortCondition) Expr(org.apache.jena.sparql.expr.Expr)

Example 44 with Expr

use of org.apache.jena.sparql.expr.Expr in project jena by apache.

the class TransformElementLib method applyVar.

public static Var applyVar(Var v, ExprTransform exprTransform) {
    if (exprTransform == null)
        return v;
    ExprVar expr = new ExprVar(v);
    Expr e = exprTransform.transform(expr);
    if (e instanceof ExprVar)
        return ((ExprVar) e).asVar();
    throw new InternalErrorException("Managed to turn a variable " + v + " into " + e);
}
Also used : ExprVar(org.apache.jena.sparql.expr.ExprVar) Expr(org.apache.jena.sparql.expr.Expr) InternalErrorException(org.apache.jena.atlas.lib.InternalErrorException)

Example 45 with Expr

use of org.apache.jena.sparql.expr.Expr in project jena by apache.

the class TestCastXSD method cast.

private NodeValue cast(String input$) {
    Expr input = ExprUtils.parse(input$);
    ARQ.getContext().set(ARQConstants.sysCurrentTime, NodeFactoryExtra.nowAsDateTime());
    FunctionEnv env = new ExecutionContext(ARQ.getContext(), null, null, null);
    return input.eval(null, env);
}
Also used : FunctionEnv(org.apache.jena.sparql.function.FunctionEnv) ExecutionContext(org.apache.jena.sparql.engine.ExecutionContext) Expr(org.apache.jena.sparql.expr.Expr)

Aggregations

Expr (org.apache.jena.sparql.expr.Expr)82 Var (org.apache.jena.sparql.core.Var)28 ExprList (org.apache.jena.sparql.expr.ExprList)15 NodeValue (org.apache.jena.sparql.expr.NodeValue)15 Op (org.apache.jena.sparql.algebra.Op)13 ExprVar (org.apache.jena.sparql.expr.ExprVar)12 FunctionEnvBase (org.apache.jena.sparql.function.FunctionEnvBase)9 Test (org.junit.Test)9 VarExprList (org.apache.jena.sparql.core.VarExprList)8 Node (org.apache.jena.graph.Node)7 E_Random (org.apache.jena.sparql.expr.E_Random)7 ArrayList (java.util.ArrayList)5 Triple (org.apache.jena.graph.Triple)4 E_Multiply (org.apache.jena.sparql.expr.E_Multiply)4 E_Regex (org.apache.jena.sparql.expr.E_Regex)4 ContractTest (org.xenei.junit.contract.ContractTest)4 IndentedLineBuffer (org.apache.jena.atlas.io.IndentedLineBuffer)3 ExprAggregator (org.apache.jena.sparql.expr.ExprAggregator)3 InternalErrorException (org.apache.jena.atlas.lib.InternalErrorException)2 Query (org.apache.jena.query.Query)2