protected virtual IQueryPlanNode VisitNode(IQueryPlanNode node)
{
if (node is SingleQueryPlanNode)
return VisitSingle((SingleQueryPlanNode) node);
if (node is BranchQueryPlanNode)
return VisitBranch((BranchQueryPlanNode) node);
if (node is FetchTableNode)
return VisitFetchTable((FetchTableNode) node);
if (node is FetchViewNode)
return VisitFetchView((FetchViewNode) node);
if (node is SingleRowTableNode)
return VisitSingleRowTable((SingleRowTableNode) node);
throw new NotSupportedException();
}