public void visit(OpPropFunc opPropFunc) { Table table = eval(opPropFunc.getSubOp()); table = evaluator.propertyFunction( table, opPropFunc.getProperty(), opPropFunc.getSubjectArgs(), opPropFunc.getObjectArgs()); push(table); }
@Override public Op transform(OpPropFunc opPropFunc, Op subOp) { if (opPropFunc.getSubOp() != subOp) opPropFunc = new OpPropFunc( opPropFunc.getProperty(), opPropFunc.getSubjectArgs(), opPropFunc.getObjectArgs(), subOp); // Put the (graph) back round it so the property function works on the named graph. return new OpGraph(getNode(), opPropFunc); }