#cargo-metadata #crates #metadata

build crate-metadata

Utility functions to get current crate metadata

2 releases

0.1.1 Apr 22, 2023
0.1.0 Oct 5, 2022

#843 in Build Utils

Download history

104 downloads per month

MIT license

7KB
79 lines

Cargo Crate Metadata

For usage from build-script.

Utility functions that returns current crate metadata as result of call cargo metadata.

Example

Cargo.toml:

# ...

[package.metadata]
foo = "bar"

# ...

build.rs

extern crate serde;
extern crate serde_json;
extern crate crate_metadata;

use serde::Deserialize;


fn main() {
	let metadata = crate_metadata::crate_metadata::<MyMeta>().unwrap();
	assert_eq!("bar", &metadata.packages.first().unwrap().metadata.unwrap().foo);
}


#[derive(Deserialize, Debug)]
struct MyMeta {
	pub foo: String,
}

Dependencies

~0.5–1.3MB
~28K SLoC