Function ASTVisitor.dynamicDispatch

Looks at the runtime type of n, then calls the appropriate visit method at runtime.

void dynamicDispatch (
  const(ExpressionNode) n
);

Rule of thumb: when the type is an abstract class, use dynamicDispatch, otherwise use visit.

For templated calls:

static if (__traits(isAbstractClass, typeof(node)))
  visitor.dynamicDispatch(node);
else
  visitor.visit(node);