(array: &ArrayRef, encoding: Encoding)
| 229 | } |
| 230 | |
| 231 | fn encode_array(array: &ArrayRef, encoding: Encoding) -> Result<ColumnarValue> { |
| 232 | let array = match array.data_type() { |
| 233 | DataType::Binary => encoding.encode_array::<_, i32>(&array.as_binary::<i32>()), |
| 234 | DataType::BinaryView => encoding.encode_array::<_, i32>(&array.as_binary_view()), |
| 235 | DataType::LargeBinary => { |
| 236 | encoding.encode_array::<_, i64>(&array.as_binary::<i64>()) |
| 237 | } |
| 238 | DataType::FixedSizeBinary(_) => { |
| 239 | encoding.encode_array::<_, i32>(&array.as_fixed_size_binary()) |
| 240 | } |
| 241 | dt => { |
| 242 | internal_err!("Unexpected data type for encode: {dt}") |
| 243 | } |
| 244 | }; |
| 245 | array.map(ColumnarValue::Array) |
| 246 | } |
| 247 | |
| 248 | fn decode_scalar(value: &ScalarValue, encoding: Encoding) -> Result<ColumnarValue> { |
| 249 | match value { |
no test coverage detected
searching dependent graphs…