avm1-types

Types for the Flash ActionScript Virtual Machine (AVM1)


Keywords
ast, swf, avm1
Licenses
MIT/Apache-2.0

Documentation

Open Flash logo

AVM1 Types

npm crates.io GitHub repository Build status

AVM1 type definitions for Rust and Typescript (Node and browser). Provides types to represent the static structure of Actionscript Virtual Machine 1 (AVM1) data.

Implementation Package Checks Documentation
Rust crates.io crate Rust checks status docs.rs/avm1-types
TypeScript npm package TypeScript checks status Source Code ¯\_(ツ)_/¯

This library is part of the Open Flash project.

Usage

Goal

The goal of this library is to provide a low-level abstract representation of AVM1 structure. The code structure is the Control Flow Graph (CFG), a structure representing the AVM1 actions and jumps between branches as a graph.

It also provides an even lower representation for raw actions using byte offsets for the jumps.

Status

This library is complete. It should be stable, but more real-life usage and feedback is expected before releasing the version 1.0.0.

The library is lacking documentation. It should be fixed before the release 1.0.0.

The library API should not change unless new undocumented actions are discovered or issues in the API are found.

Contributing

You can also use the library and report any issues you encounter on the Github issues page.