apache_datasketches/tuple/generic/
input.rs1use super::{CompactTupleSketch, TupleSketch, TupleSummary};
2use apache_datasketches_sys::tuple_generic_input::TupleGenericInputRef;
3
4mod sealed {
5 use super::TupleSummary;
6 pub trait Sealed {}
7 impl<S: TupleSummary> Sealed for super::TupleSketch<S> {}
8 impl<S: TupleSummary> Sealed for super::CompactTupleSketch<S> {}
9}
10
11pub trait TupleInput<S: TupleSummary>: sealed::Sealed {
15 #[doc(hidden)]
16 fn as_input(&self) -> TupleGenericInputRef<'_>;
17}
18
19impl<S: TupleSummary> TupleInput<S> for TupleSketch<S> {
20 fn as_input(&self) -> TupleGenericInputRef<'_> {
21 TupleGenericInputRef::Sketch(&self.inner)
22 }
23}
24
25impl<S: TupleSummary> TupleInput<S> for CompactTupleSketch<S> {
26 fn as_input(&self) -> TupleGenericInputRef<'_> {
27 TupleGenericInputRef::Compact(&self.inner)
28 }
29}