rtf-parser 0.3.0

A Rust RTF parser & lexer library designed for speed and memory efficiency.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use std::time::Instant;

use rtf_parser::header::StyleSheet;
use rtf_parser::lexer::Lexer;
use rtf_parser::parser::Parser;

fn main() {
    let start = Instant::now();
    let doc;
    {
        let rtf_text = include_str!("../resources/tests/file-sample_500kB.rtf");
        let tokens = Lexer::scan(rtf_text).expect("Invalid RTF content");
        doc = Parser::new(tokens).parse().unwrap();
    }
    let elapsed = start.elapsed();
    assert_eq!(doc.header.stylesheet, StyleSheet::new()); // in order to not get optimized out
    println!("Elapsed: {:.2?}", elapsed);
}