Function zero_copy_pads::align_column_center_right[][src]

pub fn align_column_center_right<ValueList>(
    values: ValueList
) -> PaddedColumnIter<ValueList::Item, char, AlignCenterRight>

Notable traits for PaddedColumnIter<Value, PadBlock, Pad>

impl<Value, PadBlock, Pad> Iterator for PaddedColumnIter<Value, PadBlock, Pad> where
    Value: Width,
    PadBlock: Display + Copy,
    Pad: Pad<Value, PadBlock> + Copy
type Item = PaddedValue<Value, PadBlock, PanicOnExcess, Pad>;
where
    ValueList: Iterator,
    ValueList::Item: Width

Pad space characters to both sides of every value so that they all share the same width. The remainder blocks will be placed at the left.

Example:

use zero_copy_pads::align_column_center_right;
use pipe_trait::Pipe;
let values = vec![
    "Rust", "C", "C++", "C#", "JavaScript",
    "TypeScript", "Java", "Kotlin", "Go",
];
let padded_values: Vec<_> = values
    .iter()
    .pipe(align_column_center_right)
    .into_iter()
    .map(|x| x.to_string())
    .collect();
let expected = [
    "   Rust   ", "     C    ", "    C++   ",
    "    C#    ", "JavaScript", "TypeScript",
    "   Java   ", "  Kotlin  ", "    Go    ",
];
assert_eq!(padded_values, expected);