pub fn read_columns_indexes<R: Read + Seek>(
    reader: &mut R,
    chunks: &[ColumnChunkMetaData],
) -> Result<Vec<Box<dyn Index>>, Error> {
    let (offset, lengths) = prepare_column_index_read(chunks)?;

    let length = lengths.iter().sum::<usize>();

    reader.seek(SeekFrom::Start(offset))?;
    let mut data = vec![0; length];
    reader.read_exact(&mut data)?;

    deserialize_column_indexes(chunks, &data, lengths)
}
/// Reads the column indexes of all [`ColumnChunkMetaData`] and deserializes them into [`Index`].
/// Returns an empty vector if indexes are not available
Reads the column indexes of all [`ColumnChunkMetaData`] and deserializes them into [`Index`].
Returns an empty vector if indexes are not available
Reads the column indexes of all [ ` ColumnChunkMetaData ` ] and deserializes them into [ ` Index ` ] . Returns an empty vector if indexes are not available
pub fn read_columns_indexes<R: Read + Seek>(
    reader: &mut R,
    chunks: &[ColumnChunkMetaData],
) -> Result<Vec<Box<dyn Index>>, Error> {
    let (offset, lengths) = prepare_column_index_read(chunks)?;
    let length = lengths.iter().sum::<usize>();
    reader.seek(SeekFrom::Start(offset))?;
    let mut data = vec![0; length];
    reader.read_exact(&mut data)?;
    deserialize_column_indexes(chunks, &data, lengths)
}
pub fn read_columns_indexes < R : Read + Seek > ( reader : & mut R , chunks : & [ ColumnChunkMetaData ] , ) -> Result < Vec < Box < dyn Index > > , Error > { let ( offset , lengths ) = prepare_column_index_read ( chunks ) ? ; let length = lengths . iter ( ) . sum :: < usize > ( ) ; reader . seek ( SeekFrom :: Start ( offset ) ) ? ; let mut data = vec ! [ 0 length ] ; reader . read_exact ( & mut data ) ? ; deserialize_column_indexes ( chunks , & data , lengths ) }
Reads the column indexes of all [`ColumnChunkMetaData`] and deserializes them into [`Index`].
Reads the column indexes of all [ ` ColumnChunkMetaData ` ] and deserializes them into [ ` Index ` ] .
reader
&mut R
chunks
&[ColumnChunkMetaData]