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

Function sha2_impl

datafusion/spark/src/function/hash/sha2.rs:175–188  ·  view source on GitHub ↗
(args: &[ArrayRef])

Source from the content-addressed store, hash-verified

173}
174
175fn sha2_impl(args: &[ArrayRef]) -> Result<ArrayRef> {
176 let [values, bit_lengths] = take_function_args("sha2", args)?;
177
178 let bit_lengths = bit_lengths.as_primitive::<Int32Type>();
179 let output = match values.data_type() {
180 DataType::Binary => sha2_binary_impl(&values.as_binary::<i32>(), bit_lengths),
181 DataType::LargeBinary => {
182 sha2_binary_impl(&values.as_binary::<i64>(), bit_lengths)
183 }
184 DataType::BinaryView => sha2_binary_impl(&values.as_binary_view(), bit_lengths),
185 dt => return internal_err!("Unsupported datatype for sha2: {dt}"),
186 };
187 Ok(output)
188}
189
190fn sha2_binary_impl<'a, BinaryArrType>(
191 values: &BinaryArrType,

Callers

nothing calls this directly

Calls 3

take_function_argsFunction · 0.85
sha2_binary_implFunction · 0.85
data_typeMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…