Ingo Bürk created FLINK-20319:
---------------------------------

             Summary: Improving the visitor pattern for operations
                 Key: FLINK-20319
                 URL: https://issues.apache.org/jira/browse/FLINK-20319
             Project: Flink
          Issue Type: Improvement
    Affects Versions: 1.11.2
            Reporter: Ingo Bürk


The *OperationVisitor interfaces (which are not public API) don't always 
implement the visitor pattern correctly, and some things which would be useful 
are missing. Some things I discovered:
 # CatalogSinkModifyOperation doesn't accept() its child. It's likely that 
others have this problem as well, but I haven't checked further.
 # The base Operation interface doesn't have an accept() method at all. 
Potentially intentional since this interface actually is public API?
 # There's a catch-all QueryOperationVisitor#visit(QueryOperation other) that 
would be nice to split up into its subtypes (PlannerQueryOperation, …)



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to