24#include "iceberg/schema_util.h"
29inline void PruneFieldProjection(FieldProjection& field_projection) {
30 std::map<size_t, size_t> local_index_to_pruned_index;
31 for (
const auto& child_projection : field_projection.children) {
33 local_index_to_pruned_index.emplace(std::get<1>(child_projection.from), 0);
36 for (
size_t pruned_index = 0;
auto& [_, value] : local_index_to_pruned_index) {
37 value = pruned_index++;
39 for (
auto& child_projection : field_projection.children) {
41 child_projection.from =
42 local_index_to_pruned_index.at(std::get<1>(child_projection.from));
@ kProjected
The field is projected from the source with possible conversion for supported schema evolution.