| 238 | |
| 239 | struct SchemaExportChecker { |
| 240 | SchemaExportChecker(std::vector<std::string> flattened_formats, |
| 241 | std::vector<std::string> flattened_names, |
| 242 | std::vector<int64_t> flattened_flags = {}, |
| 243 | std::vector<std::string> flattened_metadata = {}) |
| 244 | : flattened_formats_(std::move(flattened_formats)), |
| 245 | flattened_names_(std::move(flattened_names)), |
| 246 | flattened_flags_( |
| 247 | flattened_flags.empty() |
| 248 | ? std::vector<int64_t>(flattened_formats_.size(), kDefaultFlags) |
| 249 | : std::move(flattened_flags)), |
| 250 | flattened_metadata_(std::move(flattened_metadata)) {} |
| 251 | |
| 252 | void operator()(struct ArrowSchema* c_export, bool inner = false) { |
| 253 | ASSERT_LT(flattened_index_, flattened_formats_.size()); |