MCPcopy Create free account
hub / github.com/apache/datafusion / string_to_array_fallback

Function string_to_array_fallback

datafusion/functions-nested/src/string.rs:419–444  ·  view source on GitHub ↗

Fallback path for `string_to_array` when delimiter and/or null_value are array columns rather than scalars.

(args: &[ArrayRef])

Source from the content-addressed store, hash-verified

417/// Fallback path for `string_to_array` when delimiter and/or null_value
418/// are array columns rather than scalars.
419fn string_to_array_fallback(args: &[ArrayRef]) -> Result<ArrayRef> {
420 let null_value_array = args.get(2);
421
422 match args[0].data_type() {
423 Utf8 => {
424 let arr = args[0].as_string::<i32>();
425 let builder =
426 StringBuilder::with_capacity(arr.len(), arr.get_buffer_memory_size());
427 string_to_array_column_args(&arr, &args[1], null_value_array, builder)
428 }
429 Utf8View => {
430 let arr = args[0].as_string_view();
431 let builder = StringViewBuilder::with_capacity(arr.len());
432 string_to_array_column_args(&arr, &args[1], null_value_array, builder)
433 }
434 LargeUtf8 => {
435 let arr = args[0].as_string::<i64>();
436 let builder = LargeStringBuilder::with_capacity(
437 arr.len(),
438 arr.get_buffer_memory_size(),
439 );
440 string_to_array_column_args(&arr, &args[1], null_value_array, builder)
441 }
442 other => exec_err!("unsupported type for string_to_array function as {other:?}"),
443 }
444}
445
446fn string_to_array_column_args<'a, StringArrType, StringBuilderType>(
447 string_array: &StringArrType,

Callers

nothing calls this directly

Calls 4

getMethod · 0.45
data_typeMethod · 0.45
lenMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…