@Override
 public T visitOp(PhysicalOperator op, X value) throws E {
   throw new UnsupportedOperationException(
       String.format(
           "The PhysicalVisitor of type %s does not currently support visiting the PhysicalOperator type %s.",
           this.getClass().getCanonicalName(), op.getClass().getCanonicalName()));
 }