@Override
  public ThisT metricsReporter(MetricsReporter reporter) {
    return newRefinedScan(table, schema, context.reportWith(reporter));
  }
Resolve the schema to be projected lazily.

<p>If there are selected columns from scan context, selected columns are projected to the table
schema. Otherwise, projected schema from scan context shall be returned.

@param context scan context
@param schema table schema
@return the Schema to project
iceberg/patched-iceberg-core/src/main/java/org/apache/iceberg/BaseScan.java