liberty-db 0.2.2

`liberty` data structre
Documentation
pub(crate) mod format{
    use prettytable::format::{TableFormat, FormatBuilder, LinePosition, LineSeparator};

    lazy_static::lazy_static!{
        /// A table with delimiters made with box characters
        ///
        /// Reference: [FORMAT_BOX_CHARS](prettytable::format::consts::FORMAT_BOX_CHARS)
        /// 
        /// # Example
        /// ```text
        ///  A │ B │ !(A&B)
        /// ───┼───┼───────
        ///  1 │ Z │ X
        ///  1 │ X │ X 
        ///  1 │ R │ F 
        ///  1 │ 1 │ 0 
        ///  1 │ 0 │ 1 
        ///  1 │ F │ R 
        /// ```
        pub static ref FORMAT_NO_BORDER_BOX_CHARS: TableFormat = FormatBuilder::new()
            .column_separator('')
            .separators(&[LinePosition::Title],
            LineSeparator::new('','','',''))
            .padding(1, 1)
            .build();
        }
}

pub(crate) mod misc{
    pub(crate) fn argsort<T: Ord>(data: &[T]) -> Vec<usize> {
        let mut indices = (0..data.len()).collect::<Vec<_>>();
        indices.sort_by_key(|&i| &data[i]);
        indices
    }
}