vortex-array 0.59.4

Vortex in memory columnar data format
Documentation
// SPDX-License-Identifier: Apache-2.0
// SPDX-FileCopyrightText: Copyright the Vortex contributors

use vortex_error::VortexResult;

use crate::accessor::ArrayAccessor;
use crate::arrays::VarBinArray;
use crate::arrays::VarBinVTable;
use crate::compute::IsSortedIteratorExt;
use crate::compute::IsSortedKernel;
use crate::compute::IsSortedKernelAdapter;
use crate::register_kernel;

impl IsSortedKernel for VarBinVTable {
    fn is_sorted(&self, array: &VarBinArray) -> VortexResult<Option<bool>> {
        Ok(Some(
            array.with_iterator(|bytes_iter| bytes_iter.is_sorted()),
        ))
    }

    fn is_strict_sorted(&self, array: &VarBinArray) -> VortexResult<Option<bool>> {
        Ok(Some(
            array.with_iterator(|bytes_iter| bytes_iter.is_strict_sorted()),
        ))
    }
}

register_kernel!(IsSortedKernelAdapter(VarBinVTable).lift());