Skip to main content

vortex_array/compute/
arbitrary.rs

1// SPDX-License-Identifier: Apache-2.0
2// SPDX-FileCopyrightText: Copyright the Vortex contributors
3
4use arbitrary::Arbitrary;
5use arbitrary::Unstructured;
6
7use crate::scalar_fn::fns::operators::CompareOperator;
8
9impl<'a> Arbitrary<'a> for CompareOperator {
10    fn arbitrary(u: &mut Unstructured<'a>) -> arbitrary::Result<Self> {
11        Ok(match u.int_in_range(0..=5)? {
12            0 => CompareOperator::Eq,
13            1 => CompareOperator::NotEq,
14            2 => CompareOperator::Gt,
15            3 => CompareOperator::Gte,
16            4 => CompareOperator::Lt,
17            5 => CompareOperator::Lte,
18            _ => unreachable!(),
19        })
20    }
21}