diff options
| author | bors[bot] <26634292+bors[bot]@users.noreply.github.com> | 2022-11-01 20:58:17 +0000 |
|---|---|---|
| committer | GitHub <[email protected]> | 2022-11-01 20:58:17 +0000 |
| commit | b99533607ceed225dd12ae73aaa9a0d969a7365e (patch) | |
| tree | 83cfc588391b4e38a98ffc0dba42b2578cbef6e5 | |
| parent | 05968bf0f37bcb05b2ba065ef55eebd9755c6f88 (diff) | |
| parent | ea4d08b6cf6f17b18b515326261f9b37e6f43856 (diff) | |
Merge #1039
1039: stm32-metapac-gen: Use `serde_json` to parse json files r=Dirbaio a=GrantM11235
This makes stm32-metapac-gen over twice as fast. A full run on my desktop goes from about six and a half seconds to about three seconds. Suprisingly, it also reduces the fresh compile time by almost a second.
Co-authored-by: Grant Miller <[email protected]>
| -rw-r--r-- | stm32-metapac-gen/Cargo.toml | 2 | ||||
| -rw-r--r-- | stm32-metapac-gen/src/lib.rs | 2 |
2 files changed, 3 insertions, 1 deletions
diff --git a/stm32-metapac-gen/Cargo.toml b/stm32-metapac-gen/Cargo.toml index 3c1dab57a..9598a5945 100644 --- a/stm32-metapac-gen/Cargo.toml +++ b/stm32-metapac-gen/Cargo.toml | |||
| @@ -9,5 +9,7 @@ license = "MIT OR Apache-2.0" | |||
| 9 | regex = "1.5.4" | 9 | regex = "1.5.4" |
| 10 | chiptool = { git = "https://github.com/embassy-rs/chiptool", rev = "28ffa8a19d84914089547f52900ffb5877a5dc23" } | 10 | chiptool = { git = "https://github.com/embassy-rs/chiptool", rev = "28ffa8a19d84914089547f52900ffb5877a5dc23" } |
| 11 | serde = { version = "1.0.130", features = [ "derive" ] } | 11 | serde = { version = "1.0.130", features = [ "derive" ] } |
| 12 | serde_json = "1.0.87" | ||
| 12 | serde_yaml = "0.8.21" | 13 | serde_yaml = "0.8.21" |
| 13 | proc-macro2 = "1.0.29" | 14 | proc-macro2 = "1.0.29" |
| 15 | |||
diff --git a/stm32-metapac-gen/src/lib.rs b/stm32-metapac-gen/src/lib.rs index 9bd60cb79..64045986e 100644 --- a/stm32-metapac-gen/src/lib.rs +++ b/stm32-metapac-gen/src/lib.rs | |||
| @@ -223,7 +223,7 @@ impl Gen { | |||
| 223 | fn load_chip(&mut self, name: &str) -> Chip { | 223 | fn load_chip(&mut self, name: &str) -> Chip { |
| 224 | let chip_path = self.opts.data_dir.join("chips").join(&format!("{}.json", name)); | 224 | let chip_path = self.opts.data_dir.join("chips").join(&format!("{}.json", name)); |
| 225 | let chip = fs::read(chip_path).expect(&format!("Could not load chip {}", name)); | 225 | let chip = fs::read(chip_path).expect(&format!("Could not load chip {}", name)); |
| 226 | serde_yaml::from_slice(&chip).unwrap() | 226 | serde_json::from_slice(&chip).unwrap() |
| 227 | } | 227 | } |
| 228 | 228 | ||
| 229 | pub fn gen(&mut self) { | 229 | pub fn gen(&mut self) { |
