js-protocol
A high-performance, fully type-safe Rust representation of the Chrome DevTools JavaScript Protocol (js_protocol), automatically generated from the official protocol definitions.
🚀 Key Features
- Automated Type Generation: Derived from official V8/Chrome protocol definitions.
- Intelligent Integer Mapping:
i32: Used for coordinates, offsets, and line/column numbers.u64: Used for identifiers, counts, sizes, and ordinals.i64: Default for general integer values.
- Recursive Type Safety: Handles recursive structures via
Box<T>indirection. - Optimized Serialization:
- Uses
serdewithcamelCaserenaming to match the protocol exactly. - Optional fields are omitted from JSON if
Noneto reduce network overhead.
- Uses
- Full Documentation: Protocol descriptions included as Rustdoc comments.
📦 Installation
Add this to your Cargo.toml:
[]
= { = "0.1.1", = ["full"] }
= { = "1.0", = ["derive"] }
= "1.0"
🛠 Usage Example
use ;