| Name | Date | Size | #Lines | LOC | ||
|---|---|---|---|---|---|---|
| .. | - | - | ||||
| examples/ | 04-Jul-2025 | - | 62 | 58 | ||
| patches/ | 04-Jul-2025 | - | 26 | 25 | ||
| src/ | 04-Jul-2025 | - | 1,200 | 1,004 | ||
| .android-checksum.json | D | 04-Jul-2025 | 1.6 KiB | 1 | 1 | |
| .cargo-checksum.json | D | 04-Jul-2025 | 1.2 KiB | 1 | 1 | |
| Android.bp | D | 04-Jul-2025 | 870 | 33 | 29 | |
| Cargo.lock | D | 04-Jul-2025 | 6.7 KiB | 256 | 224 | |
| Cargo.toml | D | 04-Jul-2025 | 994 | 42 | 36 | |
| LICENSE | D | 04-Jul-2025 | 1 KiB | 22 | 17 | |
| METADATA | D | 04-Jul-2025 | 366 | 18 | 17 | |
| MODULE_LICENSE_MIT | D | 04-Jul-2025 | 0 | |||
| Readme.md | D | 04-Jul-2025 | 764 | 29 | 23 | |
| cargo_embargo.json | D | 04-Jul-2025 | 29 | 3 | 3 |
Readme.md
1## android-bp 2 3a rust crate to parse Android.bp files 4 5### Usage 6 7```rust 8 use android_bp::BluePrint; 9 10 let bp = BluePrint::from_file("fixtures/Android.bp").unwrap(); 11 println!("{:#?}", bp); 12 13 // variables are accessible as a rust HashMap 14 println!("{:#?}", bp.variables); 15 for m in &bp.modules { 16 if m.typ == "rust_binary" { 17 println!("{:?}", m.get("name").unwrap()); 18 } 19 } 20 // or iter them by type 21 for m in bp.modules_by_type("rust_host_test") { 22 // m.get return an sometime inconvenient Option<&Value> 23 // so some helper methods are provided 24 let name = m.get_string("name").unwrap(); 25 let srcs = m.get_array("srcs").unwrap(); 26 println!("{:?} {:?}", name, srcs); 27 } 28``` 29