Struct comfy_table::Column

source ·
pub struct Column {
    pub index: usize,
    /* private fields */
}
Expand description

A representation of a table’s column. Useful for styling and specifying constraints how big a column should be.

  1. Content padding for cells in this column
  2. Constraints on how wide this column shall be
  3. Default alignment for cells in this column

Columns are generated when adding rows or a header to a table.
As a result columns can only be modified after the table is populated by some data.

use comfy_table::{Width::*, CellAlignment, ColumnConstraint::*, Table};

let mut table = Table::new();
table.set_header(&vec!["one", "two"]);

let mut column = table.column_mut(1).expect("This should be column two");

// Set the max width for all cells of this column to 20 characters.
column.set_constraint(UpperBoundary(Fixed(20)));

// Set the left padding to 5 spaces and the right padding to 1 space
column.set_padding((5, 1));

// Align content in all cells of this column to the center of the cell.
column.set_cell_alignment(CellAlignment::Center);

Fields§

§index: usize

The index of the column

Implementations§

source§

impl Column

source

pub fn new(index: usize) -> Self

source

pub fn set_padding(&mut self, padding: (u16, u16)) -> &mut Self

Set the padding for all cells of this column.

Padding is provided in the form of (left, right).
Default is (1, 1).

source

pub fn padding_width(&self) -> u16

Convenience helper that returns the total width of the combined padding.

source

pub fn set_delimiter(&mut self, delimiter: char) -> &mut Self

Set the delimiter used to split text for this column’s cells.

A custom delimiter on a cell in will overwrite the column’s delimiter. Normal text uses spaces ( ) as delimiters. This is necessary to help comfy-table understand the concept of words.

source

pub fn set_constraint(&mut self, constraint: ColumnConstraint) -> &mut Self

Constraints allow to influence the auto-adjustment behavior of columns.
This can be useful to counter undesired auto-adjustment of content in tables.

source

pub fn constraint(&self) -> Option<&ColumnConstraint>

Get the constraint that is used for this column.

source

pub fn remove_constraint(&mut self) -> &mut Self

Remove any constraint on this column

source

pub fn is_hidden(&self) -> bool

Returns weather the columns is hidden via ColumnConstraint::Hidden.

source

pub fn set_cell_alignment(&mut self, alignment: CellAlignment)

Set the alignment for content inside of cells for this column.
Note: Alignment on a cell will always overwrite the column’s setting.

Trait Implementations§

source§

impl Debug for Column

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl Freeze for Column

§

impl RefUnwindSafe for Column

§

impl Send for Column

§

impl Sync for Column

§

impl Unpin for Column

§

impl UnwindSafe for Column

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.