@Override public void visit(ExprFunctionOp funcOp) { ExprList x = null ; if ( funcOp.getArgs() != null ) x = process(funcOp.getArgs()) ; Op op = funcOp.getGraphPattern() ; // Caution: the expression can have a pattern inside it. // See also: ExprTransformApplyTransform which does much the same in a different way. if ( transform instanceof ExprTransformOp ) { ExprTransformOp t = (ExprTransformOp)transform ; op = Transformer.transform(t.getTransform(), op) ; } Expr e = funcOp.apply(transform, x, op) ; push(stack, e) ; }
public void visit(ExprFunctionOp funcOp) { ExprList x = null ; if ( funcOp.getArgs() != null ) x = process(funcOp.getArgs()) ; Op op = funcOp.getGraphPattern() ; if ( transform instanceof ExprTransformOp ) { ExprTransformOp t = (ExprTransformOp)transform ; op = Transformer.transform(t.getTransform(), op) ; } Expr e = funcOp.apply(transform, x, op) ; push(stack, e) ; }
@Override public void visit(ExprAggregator eAgg) { Expr e = eAgg.apply(transform) ; push(stack, e) ; }
@Override public void visit(NodeValue nv) { Expr e = nv.apply(transform) ; push(stack, e) ; }
@Override public void visit(ExprFunction1 func) { Expr e1 = pop(stack) ; Expr e = func.apply(transform, e1) ; push(stack, e) ; }
public void visit(ExprFunction2 func) { Expr e2 = pop(stack) ; Expr e1 = pop(stack) ; Expr e = func.apply(transform, e1, e2) ; push(stack, e) ; }
@Override public void visit(ExprFunctionN func) { ExprList x = process(func.getArgs()) ; Expr e = func.apply(transform, x) ; push(stack, e) ; }
@Override public void visit(ExprFunction3 func) { Expr e3 = pop(stack) ; Expr e2 = pop(stack) ; Expr e1 = pop(stack) ; Expr e = func.apply(transform, e1, e2, e3) ; push(stack, e) ; }
@Override public void visit(ExprFunction2 func) { Expr e2 = pop(stack) ; Expr e1 = pop(stack) ; Expr e = func.apply(transform, e1, e2) ; push(stack, e) ; }
public void visit(ExprAggregator eAgg) { Expr e = eAgg.apply(transform) ; push(stack, e) ; }
public void visit(ExprFunction3 func) { Expr e3 = pop(stack) ; Expr e2 = pop(stack) ; Expr e1 = pop(stack) ; Expr e = func.apply(transform, e1, e2, e3) ; push(stack, e) ; }
public void visit(NodeValue nv) { Expr e = nv.apply(transform) ; push(stack, e) ; }
@Override public void visit(ExprVar var) { Expr e = var.apply(transform) ; push(stack, e) ; }
@Override public void visit(ExprFunction0 func) { Expr e = func.apply(transform) ; push(stack, e) ; }
public void visit(ExprVar var) { Expr e = var.apply(transform) ; push(stack, e) ; }
public void visit(ExprFunctionN func) { ExprList x = process(func.getArgs()) ; Expr e = func.apply(transform, x) ; push(stack, e) ; }
public void visit(ExprFunction1 func) { Expr e1 = pop(stack) ; Expr e = func.apply(transform, e1) ; push(stack, e) ; }
public void visit(ExprFunction0 func) { Expr e = func.apply(transform) ; push(stack, e) ; }