vortex_fastlanes/rle/vtable/
encode.rs

1// SPDX-License-Identifier: Apache-2.0
2// SPDX-FileCopyrightText: Copyright the Vortex contributors
3
4use vortex_array::Canonical;
5use vortex_array::vtable::EncodeVTable;
6use vortex_error::VortexResult;
7
8use super::RLEVTable;
9use crate::RLEArray;
10
11impl EncodeVTable<RLEVTable> for RLEVTable {
12    fn encode(
13        _vtable: &RLEVTable,
14        canonical: &Canonical,
15        _like: Option<&RLEArray>,
16    ) -> VortexResult<Option<RLEArray>> {
17        let array = canonical.clone().into_primitive();
18        Ok(Some(RLEArray::encode(&array)?))
19    }
20}