yew-table 0.1.2

A table component for the Yew web framework
Documentation
use std::fmt;
use std::error;

#[derive(Debug)]
pub enum TableError {
    NonRenderableField(String),
    InvalidFieldName(String),
}

impl fmt::Display for TableError {
    fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
        let msg = match self {
            TableError::InvalidFieldName(field_name) => format!("Invalid field name given: '{}'.", field_name),
            TableError::NonRenderableField(field_name) => format!("Could not render field '{}' for which no HTML representation is defined.", field_name),
        };
        write!(f, "{}", msg)
    }
}

impl error::Error for TableError {
    fn source(&self) -> Option<&(dyn error::Error + 'static)> {
        None
    }

    fn description(&self) -> &str {
        match self {
            TableError::InvalidFieldName(_) => "Invalid field name given.",
            TableError::NonRenderableField(_) => "Field has no HTML representation defined.",
        }
    }
}

pub type Result<T> = std::result::Result<T, TableError>;