Skip to content

Commit 5439c9b

Browse files
committed
Define the unavailable target just once and re-use it
The same unavailable target value is used in two different places. Abstracting it makes it easier to update it and recognise its purpose.
1 parent ac8892b commit 5439c9b

File tree

1 file changed

+14
-16
lines changed
  • src/tools/build-manifest/src

1 file changed

+14
-16
lines changed

src/tools/build-manifest/src/main.rs

Lines changed: 14 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -120,6 +120,18 @@ struct Target {
120120
extensions: Option<Vec<Component>>,
121121
}
122122

123+
impl Target {
124+
fn unavailable() -> Target {
125+
Target {
126+
available: false,
127+
url: None,
128+
hash: None,
129+
components: None,
130+
extensions: None,
131+
}
132+
}
133+
}
134+
123135
#[derive(RustcEncodable)]
124136
struct Component {
125137
pkg: String,
@@ -242,13 +254,7 @@ impl Builder {
242254
let digest = match self.digests.remove(&filename) {
243255
Some(digest) => digest,
244256
None => {
245-
pkg.target.insert(host.to_string(), Target {
246-
available: false,
247-
url: None,
248-
hash: None,
249-
components: None,
250-
extensions: None,
251-
});
257+
pkg.target.insert(host.to_string(), Target::unavailable());
252258
continue
253259
}
254260
};
@@ -312,15 +318,7 @@ impl Builder {
312318
let filename = self.filename(pkgname, name);
313319
let digest = match self.digests.remove(&filename) {
314320
Some(digest) => digest,
315-
None => {
316-
return (name.to_string(), Target {
317-
available: false,
318-
url: None,
319-
hash: None,
320-
components: None,
321-
extensions: None,
322-
})
323-
}
321+
None => return (name.to_string(), Target::unavailable()),
324322
};
325323

326324
(name.to_string(), Target {

0 commit comments

Comments
 (0)