SWF parser implemented in Rust.
Converts bytes to swf-tree
movies.
```rust use swfparser; use swftree;
fn main() { let bytes: &[u8] = ...; let (, movie): (, swftree::Movie) = swfparser::parsers::movie::parse_movie(&bytes[..]) .expect("Failed to parse movie"); } ```
This repo uses Git submodules for its test samples:
```sh
git clone --recurse-submodules git://github.com/open-flash/swf-parser.git
git submodule update --recursive --remote ```
This library is a standard Cargo project. You can test your changes with
cargo test
.
The Rust implementation supports fuzzing:
```
cargo-fuzz
cargo install cargo-fuzz
movie
parsercargo fuzz run movie ```
Prefer non-master
branches when sending a PR so your changes can be rebased if
needed. All the commits must be made on top of master
(fast-forward merge).
CI must pass for changes to be accepted.