| 199 | } |
| 200 | |
| 201 | Result<std::unordered_set<std::string>> GetColumnNames( |
| 202 | const csv::ReadOptions& read_options, const csv::ParseOptions& parse_options, |
| 203 | std::string_view first_block, MemoryPool* pool) { |
| 204 | ARROW_ASSIGN_OR_RAISE( |
| 205 | std::vector<std::string> ordered_names, |
| 206 | GetOrderedColumnNames(read_options, parse_options, first_block, pool)); |
| 207 | std::unordered_set<std::string> unordered_names; |
| 208 | for (const auto& column : ordered_names) { |
| 209 | if (!unordered_names.emplace(column).second) { |
| 210 | return Status::Invalid("CSV file contained multiple columns named ", column); |
| 211 | } |
| 212 | } |
| 213 | return unordered_names; |
| 214 | } |
| 215 | |
| 216 | static inline Result<csv::ConvertOptions> GetConvertOptions( |
| 217 | const CsvFileFormat& format, const ScanOptions* scan_options, |
nothing calls this directly
no test coverage detected