Struct ole::EntrySlice [] [src]

pub struct EntrySlice<'s> { /* fields omitted */ }

Slice of the content of the entry.

This is not an ordinary slice, because OLE files are like FAT system: they are based on sector and SAT. Therefore, a stream can be fragmented through the file.

Basic example

use ole::Reader;
use std::io::Read;
let mut parser =
      Reader::<std::fs::File>::from_path("assets/Thumbs.db").unwrap();

let entry = parser.iterate().next().unwrap();
let mut slice = parser.get_entry_slice(entry).unwrap();
// Read the first 42 bytes of the entry;
let mut buf = [0u8; 42];
let nread = slice.read(&mut buf).unwrap();

Methods

impl<'s> EntrySlice<'s>
[src]

[src]

Returns the length of the slice, therefore the length of the entry.

Trait Implementations

impl<'s> Read for EntrySlice<'s>
[src]

[src]

Pull some bytes from this source into the specified buffer, returning how many bytes were read. Read more

[src]

🔬 This is a nightly-only experimental API. (read_initializer)

Determines if this Reader can work with buffers of uninitialized memory. Read more

1.0.0
[src]

Read all bytes until EOF in this source, placing them into buf. Read more

1.0.0
[src]

Read all bytes until EOF in this source, appending them to buf. Read more

1.6.0
[src]

Read the exact number of bytes required to fill buf. Read more

1.0.0
[src]

Creates a "by reference" adaptor for this instance of Read. Read more

1.0.0
[src]

Transforms this Read instance to an [Iterator] over its bytes. Read more

[src]

🔬 This is a nightly-only experimental API. (io)

the semantics of a partial read/write of where errors happen is currently unclear and may change

Transforms this Read instance to an [Iterator] over [char]s. Read more

1.0.0
[src]

Creates an adaptor which will chain this stream with another. Read more

1.0.0
[src]

Creates an adaptor which will read at most limit bytes from it. Read more

Auto Trait Implementations

impl<'s> Send for EntrySlice<'s>

impl<'s> Sync for EntrySlice<'s>