from_bytes

Function from_bytes 

Source
pub fn from_bytes<'de, T>(b: &'de [u8]) -> Result<T, Error>
where T: FixedWidth + Deserialize<'de>,
Expand description

Deserializes a &[u8] into the given type that implements FixedWidth and Deserialize.

ยงExample

use serde_derive::Deserialize;
use serde;
use fixed_width::{FieldSet, FixedWidth};

#[derive(Deserialize)]
struct Record {
    pub name: String,
    pub room: usize,
}

impl FixedWidth for Record {
    fn fields() -> FieldSet {
        FieldSet::Seq(vec![
            FieldSet::new_field(0..4),
            FieldSet::new_field(4..8),
        ])
    }
}

let b = b"Carl1234";
let record: Record = fixed_width::from_bytes(b).unwrap();

assert_eq!(record.name, "Carl");
assert_eq!(record.room, 1234);