Github user afs commented on a diff in the pull request:

    https://github.com/apache/jena/pull/202#discussion_r95557264
  
    --- Diff: 
jena-arq/src/main/java/org/apache/jena/sparql/algebra/OpVisitor.java ---
    @@ -23,53 +23,53 @@
     public interface OpVisitor
     {
         // Op0
    -    public void visit(OpBGP opBGP) ;
    -    public void visit(OpQuadPattern quadPattern) ;
    -    public void visit(OpQuadBlock quadBlock) ;
    -    public void visit(OpTriple opTriple) ;
    -    public void visit(OpQuad opQuad) ;
    -    public void visit(OpPath opPath) ;
    -    public void visit(OpTable opTable) ;
    -    public void visit(OpNull opNull) ;
    +    default void visit(OpBGP opBGP) {}
    --- End diff --
    
    I don't know about this change. 
    
    There are `OpVisitor` impls that do not use `OpVisitorBase` and that has 
the desirable (and intended) effect that a change in `OpVisitor` forces 
implementation. e.g. `OpVisitorByType` e.g. `ExecutionDispatch`
    
    Having default methods masks this so it makes things less robust. There is 
rarely a general implementation of an `visit` that will work for everything.



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to