| 101 | } |
| 102 | |
| 103 | Result<std::shared_ptr<Array>> DictConversion( |
| 104 | const std::shared_ptr<DataType>& value_type, const std::string& csv_string, |
| 105 | int32_t max_cardinality = -1, ConvertOptions options = ConvertOptions::Defaults()) { |
| 106 | std::shared_ptr<BlockParser> parser; |
| 107 | std::shared_ptr<DictionaryConverter> converter; |
| 108 | |
| 109 | ARROW_ASSIGN_OR_RAISE(converter, DictionaryConverter::Make(value_type, options)); |
| 110 | if (max_cardinality >= 0) { |
| 111 | converter->SetMaxCardinality(max_cardinality); |
| 112 | } |
| 113 | |
| 114 | ParseOptions parse_options; |
| 115 | parse_options.ignore_empty_lines = false; |
| 116 | MakeCSVParser({csv_string}, parse_options, &parser); |
| 117 | |
| 118 | const int32_t col_index = 0; |
| 119 | return converter->Convert(*parser, col_index); |
| 120 | } |
| 121 | |
| 122 | void AssertDictConversion(const std::string& csv_string, |
| 123 | const std::shared_ptr<Array>& expected_indices, |
no test coverage detected