pub struct WarcRecord {
pub version: String,
pub header: HashMap<CaseString, String>,
pub content: Vec<u8>,
}Expand description
WARC Record
A record consists of the version string, a list of headers and the actual content (in bytes)
§Usage
use rust_warc::WarcRecord;
/* test.warc:
WARC/1.1
WARC-Type: warcinfo
WARC-Date: 2006-09-19T17:20:14Z
WARC-Record-ID: multiline
uuid value
Content-Type: text/plain
Content-Length: 4
test
*/
let mut data = &include_bytes!("test.warc")[..];
let item = WarcRecord::parse(&mut data).unwrap();
assert_eq!(item.version, "WARC/1.1");
// header names are case insensitive
assert_eq!(item.header.get(&"content-type".into()), Some(&"text/plain".into()));
// and may span multiple lines
assert_eq!(item.header.get(&"Warc-Record-ID".into()), Some(&"multiline\nuuid value".into()));
assert_eq!(item.content, "test".as_bytes());Fields§
§version: StringWARC version string (WARC/1.1)
header: HashMap<CaseString, String>Record header fields
content: Vec<u8>Record content block
Implementations§
Auto Trait Implementations§
impl Freeze for WarcRecord
impl RefUnwindSafe for WarcRecord
impl Send for WarcRecord
impl Sync for WarcRecord
impl Unpin for WarcRecord
impl UnwindSafe for WarcRecord
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more