Struct calamine::RangeDeserializerBuilder [] [src]

pub struct RangeDeserializerBuilder { /* fields omitted */ }

Builds a Range deserializer with some configuration options.

This can be used to optionally parse the first row as a header. Once built, a RangeDeserializers cannot be changed.

Methods

impl RangeDeserializerBuilder
[src]

[src]

Constructs a new builder for configuring Range deserialization.

[src]

Build a RangeDeserializer from this configuration.

Example

fn example() -> Result<()> {
    let path = format!("{}/tests/tempurature.xlsx", env!("CARGO_MANIFEST_DIR"));
    let mut workbook = Sheets::open(path)?;
    let range = workbook.worksheet_range("Sheet1")?;
    let mut iter = RangeDeserializerBuilder::new().from_range(&range)?;

    if let Some(result) = iter.next() {
        let (label, value): (String, f64) = result?;
        assert_eq!(label, "celcius");
        assert_eq!(value, 22.2222);

        Ok(())
    } else {
        return Err(From::from("expected at least one record but got none"));
    }
}

[src]

Decide whether to treat the first row as a special header row.

Example

fn example() -> Result<()> {
    let path = format!("{}/tests/tempurature.xlsx", env!("CARGO_MANIFEST_DIR"));
    let mut workbook = Sheets::open(path)?;
    let range = workbook.worksheet_range("Sheet1")?;

    let mut iter = RangeDeserializerBuilder::new()
        .has_headers(false)
        .from_range(&range)?;

    if let Some(result) = iter.next() {
        let row: Vec<DataType> = result?;
        assert_eq!(row, [DataType::from("label"), DataType::from("value")]);
    } else {
        return Err(From::from("expected at least three records but got none"));
    }

    if let Some(result) = iter.next() {
        let row: Vec<DataType> = result?;
        assert_eq!(row, [DataType::from("celcius"), DataType::from(22.2222)]);
    } else {
        return Err(From::from("expected at least three records but got one"));
    }

    Ok(())
}

Trait Implementations

impl Clone for RangeDeserializerBuilder
[src]

[src]

Returns a copy of the value. Read more

1.0.0
[src]

Performs copy-assignment from source. Read more

impl Default for RangeDeserializerBuilder
[src]

[src]

Returns the "default value" for a type. Read more