Trait dcsv::VCont

source ·
pub trait VCont {
Show 20 methods // Required methods fn new() -> Self; fn move_row( &mut self, src_index: usize, target_index: usize ) -> DcsvResult<()>; fn move_column( &mut self, src_index: usize, target_index: usize ) -> DcsvResult<()>; fn rename_column( &mut self, column_index: usize, new_name: &str ) -> DcsvResult<()>; fn set_column( &mut self, column_index: usize, value: Value ) -> DcsvResult<()>; fn edit_row( &mut self, row_index: usize, values: &[Option<Value>] ) -> DcsvResult<()>; fn set_row(&mut self, row_index: usize, values: &[Value]) -> DcsvResult<()>; fn get_cell(&self, x: usize, y: usize) -> Option<&Value>; fn set_cell(&mut self, x: usize, y: usize, value: Value) -> DcsvResult<()>; fn insert_row( &mut self, row_index: usize, source: Option<&[Value]> ) -> DcsvResult<()>; fn delete_row(&mut self, row_index: usize) -> bool; fn insert_column( &mut self, column_index: usize, column_name: &str ) -> DcsvResult<()>; fn delete_column(&mut self, column_index: usize) -> DcsvResult<()>; fn get_row_count(&self) -> usize; fn get_column_count(&self) -> usize; fn drop_data(&mut self); fn apply_all<F: FnMut(&mut Value)>(&mut self, f: F); fn update_width_global(&mut self); fn get_formatted_string( &self, line_delimiter: &str, align_type: CellAlignType ) -> String; fn get_string_table(&self, align_type: CellAlignType) -> Vec<Vec<String>>;
}
Expand description

Generic trait over both virtual_data and virtual_array

This provides some genral methods over csv value manipulation

Required Methods§

source

fn new() -> Self

Create empty virtual container

source

fn move_row(&mut self, src_index: usize, target_index: usize) -> DcsvResult<()>

Move a given row to a target row index

source

fn move_column( &mut self, src_index: usize, target_index: usize ) -> DcsvResult<()>

Move a given column to target column index

source

fn rename_column( &mut self, column_index: usize, new_name: &str ) -> DcsvResult<()>

Rename a column

source

fn set_column(&mut self, column_index: usize, value: Value) -> DcsvResult<()>

Set values to a column

source

fn edit_row( &mut self, row_index: usize, values: &[Option<Value>] ) -> DcsvResult<()>

Edit a row

source

fn set_row(&mut self, row_index: usize, values: &[Value]) -> DcsvResult<()>

Set values to a row

This assumes that given values accord to column’s order.

source

fn get_cell(&self, x: usize, y: usize) -> Option<&Value>

get cell data by coordinate

source

fn set_cell(&mut self, x: usize, y: usize, value: Value) -> DcsvResult<()>

Set cell value by coordinate

source

fn insert_row( &mut self, row_index: usize, source: Option<&[Value]> ) -> DcsvResult<()>

Insert a row to given index

source

fn delete_row(&mut self, row_index: usize) -> bool

Delete a row with given row_index

source

fn insert_column( &mut self, column_index: usize, column_name: &str ) -> DcsvResult<()>

Insert a column with given column informations

source

fn delete_column(&mut self, column_index: usize) -> DcsvResult<()>

Delete a column with given column index

source

fn get_row_count(&self) -> usize

Get total rows count

source

fn get_column_count(&self) -> usize

Get total columns count

source

fn drop_data(&mut self)

Drop all data from virtual data

source

fn apply_all<F: FnMut(&mut Value)>(&mut self, f: F)

Apply closure to all values

source

fn update_width_global(&mut self)

Fully iterate cells to update max_width

source

fn get_formatted_string( &self, line_delimiter: &str, align_type: CellAlignType ) -> String

source

fn get_string_table(&self, align_type: CellAlignType) -> Vec<Vec<String>>

Get table as raw string table

Object Safety§

This trait is not object safe.

Implementors§