Skip to main content

TableFormat

Struct TableFormat 

Source
pub struct TableFormat { /* private fields */ }
Expand description

Contains the table formatting rules

Implementations§

Source§

impl TableFormat

Source

pub fn new() -> TableFormat

Create a new empty TableFormat.

Source

pub fn get_padding(&self) -> (usize, usize)

Return a tuple with left and right padding

Source

pub fn padding(&mut self, left: usize, right: usize)

Set left and right padding

Examples found in repository?
examples/formatting.rs (line 107)
3fn main() {
4    let mut table = table!(["Value 1", "Value 2"], ["Value three", "Value four"]);
5    table.set_titles(row!["Title 1", "Title 2"]);
6
7    // Print
8    // +-------------+------------+
9    // | Title 1     | Title 2    |
10    // +-------------+------------+
11    // | Value 1     | Value 2    |
12    // | Value three | Value four |
13    // +-------------+------------+
14    println!("FORMAT_NO_LINESEP_WITH_TITLE :");
15    table.set_format(*format::consts::FORMAT_NO_LINESEP_WITH_TITLE);
16    table.printstd();
17    println!("");
18
19    // Print
20    // -------------------------
21    //  Title 1      Title 2
22    // =========================
23    //  Value 1      Value 2
24    // -------------------------
25    //  Value three  Value four
26    // -------------------------
27    println!("FORMAT_NO_COLSEP :");
28    table.set_format(*format::consts::FORMAT_NO_COLSEP);
29    table.printstd();
30    println!("");
31
32    // Print
33    // +-------------------------+
34    // | Title 1      Title 2    |
35    // +=========================+
36    // | Value 1      Value 2    |
37    // | Value three  Value four |
38    // +-------------------------+
39    println!("FORMAT_BORDERS_ONLY :");
40    table.set_format(*format::consts::FORMAT_BORDERS_ONLY);
41    table.printstd();
42    println!("");
43
44    // Custom format can be implemented using `prettytable::format::FormatBuilder`
45    // Example to print
46    // +-------------+------------+
47    // | Title 1     | Title 2    |
48    // | Value 1     | Value 2    |
49    // | Value three | Value four |
50    // +-------------+------------+
51    println!("Custom :");
52    table.set_format(
53        format::FormatBuilder::new()
54            .column_separator('|')
55            .borders('|')
56            .separators(
57                &[format::LinePosition::Top, format::LinePosition::Bottom],
58                format::LineSeparator::new('-', '+', '+', '+'),
59            )
60            .padding(1, 1)
61            .build(),
62    );
63    table.printstd();
64
65    // Customized format with unicode
66    // Example to print
67    // ┌─────────────┬────────────┐
68    // │ Title 1     │ Title 2    │
69    // ├─────────────┼────────────┤
70    // │ Value 1     │ Value 2    │
71    // ├─────────────┼────────────┤
72    // │ Value three │ Value four │
73    // └─────────────┴────────────┘
74    println!("With unicode:");
75    table.set_format(
76        format::FormatBuilder::new()
77            .column_separator('│')
78            .borders('│')
79            .separators(
80                &[format::LinePosition::Top],
81                format::LineSeparator::new('─', '┬', '┌', '┐'),
82            )
83            .separators(
84                &[format::LinePosition::Intern],
85                format::LineSeparator::new('─', '┼', '├', '┤'),
86            )
87            .separators(
88                &[format::LinePosition::Bottom],
89                format::LineSeparator::new('─', '┴', '└', '┘'),
90            )
91            .padding(1, 1)
92            .build(),
93    );
94    table.printstd();
95
96    // Customized format with unicode and different padding
97    // Example to print
98    // ┌───────────────┬──────────────┐
99    // │  Title 1      │  Title 2     │
100    // ├───────────────┼──────────────┤
101    // │  Value 1      │  Value 2     │
102    // ├───────────────┼──────────────┤
103    // │  Value three  │  Value four  │
104    // └───────────────┴──────────────┘
105    // Change individual format settings
106    println!("With unicode and padding:");
107    table.get_format().padding(2, 2);
108    table.printstd();
109}
Source

pub fn column_separator(&mut self, separator: char)

Set the character used for internal column separation

Source

pub fn borders(&mut self, border: char)

Set the character used for table borders

Source

pub fn left_border(&mut self, border: char)

Set the character used for left table border

Source

pub fn right_border(&mut self, border: char)

Set the character used for right table border

Source

pub fn separator(&mut self, what: LinePosition, separator: LineSeparator)

Set a line separator

Source

pub fn separators(&mut self, what: &[LinePosition], separator: LineSeparator)

Set format for multiple kind of line separator

Source

pub fn indent(&mut self, spaces: usize)

Set global indentation in spaces used when rendering a table

Source

pub fn get_indent(&self) -> usize

Get global indentation in spaces used when rendering a table

Source

pub fn get_column_separator(&self, pos: ColumnPosition) -> Option<char>

Returns the character used to separate columns. pos specify if the separator is left/right final or internal to the table

Trait Implementations§

Source§

impl Clone for TableFormat

Source§

fn clone(&self) -> TableFormat

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for TableFormat

Source§

impl Debug for TableFormat

Source§

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

Formats the value using the given formatter. Read more
Source§

impl Default for TableFormat

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl Eq for TableFormat

Source§

impl From<TableFormat> for FormatBuilder

Source§

fn from(fmt: TableFormat) -> Self

Converts to this type from the input type.
Source§

impl Hash for TableFormat

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for TableFormat

Source§

fn eq(&self, other: &TableFormat) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for TableFormat

Auto Trait Implementations§

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

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

Source§

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>,

Source§

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.