Skip to main content

DocConverter

Trait DocConverter 

Source
pub trait DocConverter<T> {
    // Required methods
    fn support_type() -> TypeId
       where Self: Sized;
    fn to_doc_value(&self, value: &T, column: &TableColumn) -> Result<DocValue>;
    fn from_doc_value(
        &self,
        value: &DocValue,
        column: &TableColumn,
    ) -> Result<T>;
}
Expand description

Rust 类型 TDocValue 之间的双向转换。

对应 Java: com.alibaba.excel.converters.Converter<T>

通过 ConverterRegistry 或 builder 的 register_converter 方法注册自定义转换器。

Required Methods§

Source

fn support_type() -> TypeId
where Self: Sized,

返回此转换器处理的 TypeId

对应 Java: Converter#supportJavaTypeKey

Source

fn to_doc_value(&self, value: &T, column: &TableColumn) -> Result<DocValue>

将 Rust 值转换为文档值(用于写入)。

对应 Java: Converter#convertToExcelData

§Errors

值无法转换时返回 crate::DocError::Conversion

Source

fn from_doc_value(&self, value: &DocValue, column: &TableColumn) -> Result<T>

将文档值转换回 Rust 值(用于读取)。

对应 Java: Converter#convertToJavaData

§Errors

值无法转换时返回 crate::DocError::Conversion

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§