mirror of
https://github.com/rust-lang/rust.git
synced 2024-12-25 23:14:12 +00:00
Rollup merge of #22273 - nagisa:doc-deprecated, r=alexcrichton
Since we don’t have Deprecated stability level anymore, the only other source of information is deprecated-since version, which conveniently to us, only exists if the symbol is deprecated. Fixes #21789
This commit is contained in:
commit
a03ce81f92
@ -2490,6 +2490,7 @@ pub struct Stability {
|
||||
pub level: attr::StabilityLevel,
|
||||
pub feature: String,
|
||||
pub since: String,
|
||||
pub deprecated_since: String,
|
||||
pub reason: String
|
||||
}
|
||||
|
||||
@ -2500,6 +2501,8 @@ impl Clean<Stability> for attr::Stability {
|
||||
feature: self.feature.to_string(),
|
||||
since: self.since.as_ref().map_or("".to_string(),
|
||||
|interned| interned.to_string()),
|
||||
deprecated_since: self.deprecated_since.as_ref().map_or("".to_string(),
|
||||
|istr| istr.to_string()),
|
||||
reason: self.reason.as_ref().map_or("".to_string(),
|
||||
|interned| interned.to_string()),
|
||||
}
|
||||
|
@ -711,7 +711,11 @@ impl<'a> fmt::Display for Stability<'a> {
|
||||
match *stab {
|
||||
Some(ref stability) => {
|
||||
write!(f, "<a class='stability {lvl}' title='{reason}'>{lvl}</a>",
|
||||
lvl = stability.level,
|
||||
lvl = if stability.deprecated_since.is_empty() {
|
||||
format!("{}", stability.level)
|
||||
} else {
|
||||
"Deprecated".to_string()
|
||||
},
|
||||
reason = stability.reason)
|
||||
}
|
||||
None => Ok(())
|
||||
@ -725,7 +729,11 @@ impl<'a> fmt::Display for ConciseStability<'a> {
|
||||
match *stab {
|
||||
Some(ref stability) => {
|
||||
write!(f, "<a class='stability {lvl}' title='{lvl}{colon}{reason}'></a>",
|
||||
lvl = stability.level,
|
||||
lvl = if stability.deprecated_since.is_empty() {
|
||||
format!("{}", stability.level)
|
||||
} else {
|
||||
"Deprecated".to_string()
|
||||
},
|
||||
colon = if stability.reason.len() > 0 { ": " } else { "" },
|
||||
reason = stability.reason)
|
||||
}
|
||||
@ -763,6 +771,9 @@ impl fmt::Display for ModuleSummary {
|
||||
try!(write!(f, "<span class='summary Unstable' \
|
||||
style='width: {:.4}%; display: inline-block'> </span>",
|
||||
(100 * cnt.unstable) as f64/tot as f64));
|
||||
try!(write!(f, "<span class='summary Deprecated' \
|
||||
style='width: {:.4}%; display: inline-block'> </span>",
|
||||
(100 * cnt.deprecated) as f64/tot as f64));
|
||||
try!(write!(f, "<span class='summary Unmarked' \
|
||||
style='width: {:.4}%; display: inline-block'> </span>",
|
||||
(100 * cnt.unmarked) as f64/tot as f64));
|
||||
@ -778,11 +789,12 @@ impl fmt::Display for ModuleSummary {
|
||||
let mut context = Vec::new();
|
||||
|
||||
let tot = self.counts.total();
|
||||
let (stable, unstable, unmarked) = if tot == 0 {
|
||||
(0, 0, 0)
|
||||
let (stable, unstable, deprecated, unmarked) = if tot == 0 {
|
||||
(0, 0, 0, 0)
|
||||
} else {
|
||||
((100 * self.counts.stable)/tot,
|
||||
(100 * self.counts.unstable)/tot,
|
||||
(100 * self.counts.deprecated)/tot,
|
||||
(100 * self.counts.unmarked)/tot)
|
||||
};
|
||||
|
||||
@ -794,11 +806,12 @@ its children (percentages total for {name}):
|
||||
<blockquote>
|
||||
<a class='stability Stable'></a> stable ({}%),<br/>
|
||||
<a class='stability Unstable'></a> unstable ({}%),<br/>
|
||||
<a class='stability Deprecated'></a> deprecated ({}%),<br/>
|
||||
<a class='stability Unmarked'></a> unmarked ({}%)
|
||||
</blockquote>
|
||||
The counts do not include methods or trait
|
||||
implementations that are visible only through a re-exported type.",
|
||||
stable, unstable, unmarked,
|
||||
stable, unstable, deprecated, unmarked,
|
||||
name=self.name));
|
||||
try!(write!(f, "<table>"));
|
||||
try!(fmt_inner(f, &mut context, self));
|
||||
|
@ -29,11 +29,12 @@ use html::render::cache;
|
||||
/// The counts for each stability level.
|
||||
#[derive(Copy)]
|
||||
pub struct Counts {
|
||||
pub unstable: uint,
|
||||
pub stable: uint,
|
||||
pub deprecated: u64,
|
||||
pub unstable: u64,
|
||||
pub stable: u64,
|
||||
|
||||
/// No stability level, inherited or otherwise.
|
||||
pub unmarked: uint,
|
||||
pub unmarked: u64,
|
||||
}
|
||||
|
||||
impl Add for Counts {
|
||||
@ -41,6 +42,7 @@ impl Add for Counts {
|
||||
|
||||
fn add(self, other: Counts) -> Counts {
|
||||
Counts {
|
||||
deprecated: self.deprecated + other.deprecated,
|
||||
unstable: self.unstable + other.unstable,
|
||||
stable: self.stable + other.stable,
|
||||
unmarked: self.unmarked + other.unmarked,
|
||||
@ -51,14 +53,15 @@ impl Add for Counts {
|
||||
impl Counts {
|
||||
fn zero() -> Counts {
|
||||
Counts {
|
||||
deprecated: 0,
|
||||
unstable: 0,
|
||||
stable: 0,
|
||||
unmarked: 0,
|
||||
}
|
||||
}
|
||||
|
||||
pub fn total(&self) -> uint {
|
||||
self.unstable + self.stable + self.unmarked
|
||||
pub fn total(&self) -> u64 {
|
||||
self.deprecated + self.unstable + self.stable + self.unmarked
|
||||
}
|
||||
}
|
||||
|
||||
@ -94,9 +97,14 @@ fn visible(item: &Item) -> bool {
|
||||
fn count_stability(stab: Option<&Stability>) -> Counts {
|
||||
match stab {
|
||||
None => Counts { unmarked: 1, .. Counts::zero() },
|
||||
Some(ref stab) => match stab.level {
|
||||
Unstable => Counts { unstable: 1, .. Counts::zero() },
|
||||
Stable => Counts { stable: 1, .. Counts::zero() },
|
||||
Some(ref stab) => {
|
||||
if !stab.deprecated_since.is_empty() {
|
||||
return Counts { deprecated: 1, .. Counts::zero() };
|
||||
}
|
||||
match stab.level {
|
||||
Unstable => Counts { unstable: 1, .. Counts::zero() },
|
||||
Stable => Counts { stable: 1, .. Counts::zero() },
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user