Default ISpliceVisitor implementation, which provides identity behavior for each of Derby's Visitable nodes.
User: pjt Date: 7/24/13
Visitor that applies a visitor along a traversal "axis" defined by a predicate.
Collect all nodes designated by predicates.
Build a CollectingVisitor and optionally wrap it in additional visitors.
Created by yxia on 4/18/18.
User: pjt Date: 7/29/13
When Derby encounters an IN subquery that cannot be flattened, it converts the expression `expr IN (select col from subquery)` into `IS NOT NULL (subquery where expr = col)`.
This visitor modifies join predicates to avoid promiscuous column references in the plan.
Visits the entire tree and, using node references passed in constructs a tree structure suitable use with vis.js (http://visjs.org/).
This visitor will push down limits and offsets down to determine costs at the appropriate level.
This Visitor finds the first ValueNode (which is typically an Or/And node and attempts to find duplicate predicates.
Visitor that enables an update or delete statement to operate successfully over a sink operation (e.g.
Utilities for Derby's ResultSetNodes
Visitor that applies a visitor to all nodes except those identified by a predicate.
Implementation of Derby's ASTVisitor interface which runs multiple Splice visitors for each of Derby's "ASTWalker" phases: 1 after parsing 2 after binding & 3 after optimization User: pjt Date: 7/5/13
This class is a bridge between Derby's Visitor interface (which has a single visit method) and the Splice Visitor interface (which has a visit method for each of Derby's Visitable classes).
Utility classes related to Marshalling entities
Visitor that checks for plan-time structures know to be unsupported by Splice, and throws exception when found.
Visitor that applies a visitor until a stopping point defined by a predicate.