pub enum Format {
Markdown,
MySQL,
PostgreSQL,
CSV,
TSV,
}Expand description
Supported table formats for parsing and auto-detection.
This enum represents the various table formats that can be parsed by the library. Formats can be auto-detected or explicitly specified.
§Examples
use table_extractor::Format;
use std::str::FromStr;
// Parse format from string
let format = Format::from_str("markdown").unwrap();
assert_eq!(format, Format::Markdown);
// Case insensitive
let format = Format::from_str("MySQL").unwrap();
assert_eq!(format, Format::MySQL);
// Aliases are supported
let format = Format::from_str("psql").unwrap();
assert_eq!(format, Format::PostgreSQL);
// Display trait converts back to canonical string
assert_eq!(format.to_string(), "postgresql");
assert_eq!(Format::CSV.to_string(), "csv");
// Round-trip conversion works
let original = Format::Markdown;
let parsed = Format::from_str(&original.to_string()).unwrap();
assert_eq!(original, parsed);Variants§
Markdown
Markdown table format with pipe delimiters (e.g., | col1 | col2 |)
MySQL
MySQL CLI output format with box-drawing characters (e.g., +----+----+)
PostgreSQL
PostgreSQL CLI output format with simple separators (e.g., ----+----)
CSV
Comma-separated values (CSV) format
TSV
Tab-separated values (TSV) format
Trait Implementations§
impl Copy for Format
impl Eq for Format
impl StructuralPartialEq for Format
Auto Trait Implementations§
impl Freeze for Format
impl RefUnwindSafe for Format
impl Send for Format
impl Sync for Format
impl Unpin for Format
impl UnwindSafe for Format
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more