public boolean equivalent(OpQuadPattern opQuads) { QuadPattern quads = opQuads.getPattern() ; if ( quads.size() != 1 ) return false ; Quad q = quads.get(0) ; return quad.equals(q) ; } }
@Override public void visit(OpQuadPattern opQuadP) { QuadPattern quads = opQuadP.getPattern() ; if ( quads.size() == 1 ) { start(opQuadP, NoNL) ; formatQuad(quads.get(0)) ; finish(opQuadP) ; return ; } start(opQuadP, NL) ; write(quads, false) ; finish(opQuadP) ; }
@Override public void visit(OpQuadBlock opQuads) { QuadPattern quads = opQuads.getPattern() ; if ( quads.size() == 1 ) { start(opQuads, NoNL) ; formatQuad(quads.get(0)) ; finish(opQuads) ; return ; } start(opQuads, NL) ; write(quads, false) ; finish(opQuads) ; }
public void visit(OpQuadPattern opQuadP) { QuadPattern quads = opQuadP.getPattern() ; if ( quads.size() == 1 ) { start(opQuadP, NoNL) ; formatQuad(quads.get(0)) ; finish(opQuadP) ; return ; } start(opQuadP, NL) ; for ( Quad quad : quads ) { formatQuad(quad) ; out.println() ; } finish(opQuadP) ; }
/** Convenience - convert to OpQuadPatterns which are more widely used (currently?) */ public Op convertOp() { if ( quads.size() == 0 ) return OpTable.empty() ; if ( quads.size() == 1 ) { Quad q = quads.get(0) ; BasicPattern bgp = new BasicPattern() ; bgp.add(q.asTriple()) ; return new OpQuadPattern(q.getGraph(), bgp) ; } List<OpQuadPattern> x = convert() ; OpSequence ops = OpSequence.create() ; for ( OpQuadPattern oqp : x ) ops.add(oqp); return ops ; }