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

Function encode_scalar

datafusion/functions/src/encoding/inner.rs:209–229  ·  view source on GitHub ↗
(value: &ScalarValue, encoding: Encoding)

Source from the content-addressed store, hash-verified

207}
208
209fn encode_scalar(value: &ScalarValue, encoding: Encoding) -> Result<ColumnarValue> {
210 match value {
211 ScalarValue::Binary(maybe_bytes)
212 | ScalarValue::BinaryView(maybe_bytes)
213 | ScalarValue::FixedSizeBinary(_, maybe_bytes) => {
214 Ok(ColumnarValue::Scalar(ScalarValue::Utf8(
215 maybe_bytes
216 .as_ref()
217 .map(|bytes| encoding.encode_bytes(bytes)),
218 )))
219 }
220 ScalarValue::LargeBinary(maybe_bytes) => {
221 Ok(ColumnarValue::Scalar(ScalarValue::LargeUtf8(
222 maybe_bytes
223 .as_ref()
224 .map(|bytes| encoding.encode_bytes(bytes)),
225 )))
226 }
227 v => internal_err!("Unexpected value for encode: {v}"),
228 }
229}
230
231fn encode_array(array: &ArrayRef, encoding: Encoding) -> Result<ColumnarValue> {
232 let array = match array.data_type() {

Callers 1

invoke_with_argsMethod · 0.85

Calls 3

encode_bytesMethod · 0.80
mapMethod · 0.45
as_refMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…