Skip to content

experimental crate to generate the Chrome Devtools Protocol.

License

Notifications You must be signed in to change notification settings

mdrokz/auto_generate_cdp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

auto_generate_cdp

Docs Crates.io

An experimental crate to generate the Chrome Devtools Protocol.

Contributors

Usage

Add the following to your Cargo.toml:

[dependencies]
serde = {version = "1", features = ["derive"]}
serde_json = '1'

[build-dependencies]
auto_generate_cdp = {version = "0.4.4",default-features = false}

To generate the protocol, add the following to your build/build.rs script.

use auto_generate_cdp::init;

fn main() {
  init();
}

This will generate protocol.rs in your $OUT_DIR folder when you run $ cargo check or $ cargo build. Use like:

// src/protocol.rs

include!(concat!(env!("OUT_DIR"), "/protocol.rs"));
// src/main.rs

mod protocol;

fn main() {
  // protocol module contains the definitions now
}

Compiling behind a firewall

auto_generate_cdp needs to fetch files from raw.githubusercontent.com during compilation.

If for whatever reason you cannot access raw.githubusercontent.com directly (e.g. corporate firewall and/or internet censorship), you can try using a proxy server by setting any one of the following environment variables: https_proxy, http_proxy, ALL_PROXY. For example:

# proxy server uses curl format
https_proxy=http://localhost:8080 cargo build