do not use deprecated text for unstable docs
This commit is contained in:
parent
ea02f87daa
commit
30f75e396a
4 changed files with 28 additions and 14 deletions
|
@ -2890,7 +2890,8 @@ pub struct Stability {
|
||||||
pub feature: String,
|
pub feature: String,
|
||||||
pub since: String,
|
pub since: String,
|
||||||
pub deprecated_since: String,
|
pub deprecated_since: String,
|
||||||
pub reason: String,
|
pub deprecated_reason: String,
|
||||||
|
pub unstable_reason: String,
|
||||||
pub issue: Option<u32>
|
pub issue: Option<u32>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2913,12 +2914,13 @@ impl Clean<Stability> for attr::Stability {
|
||||||
Some(attr::RustcDeprecation {ref since, ..}) => since.to_string(),
|
Some(attr::RustcDeprecation {ref since, ..}) => since.to_string(),
|
||||||
_=> "".to_string(),
|
_=> "".to_string(),
|
||||||
},
|
},
|
||||||
reason: {
|
deprecated_reason: match self.rustc_depr {
|
||||||
match (&self.rustc_depr, &self.level) {
|
Some(ref depr) => depr.reason.to_string(),
|
||||||
(&Some(ref depr), _) => depr.reason.to_string(),
|
_ => "".to_string(),
|
||||||
(&None, &attr::Unstable {reason: Some(ref reason), ..}) => reason.to_string(),
|
},
|
||||||
_ => "".to_string(),
|
unstable_reason: match self.level {
|
||||||
}
|
attr::Unstable { reason: Some(ref reason), .. } => reason.to_string(),
|
||||||
|
_ => "".to_string(),
|
||||||
},
|
},
|
||||||
issue: match self.level {
|
issue: match self.level {
|
||||||
attr::Unstable {issue, ..} => Some(issue),
|
attr::Unstable {issue, ..} => Some(issue),
|
||||||
|
|
|
@ -1878,8 +1878,8 @@ fn short_stability(item: &clean::Item, cx: &Context, show_reason: bool) -> Vec<S
|
||||||
let mut stability = vec![];
|
let mut stability = vec![];
|
||||||
|
|
||||||
if let Some(stab) = item.stability.as_ref() {
|
if let Some(stab) = item.stability.as_ref() {
|
||||||
let reason = if show_reason && !stab.reason.is_empty() {
|
let deprecated_reason = if show_reason && !stab.deprecated_reason.is_empty() {
|
||||||
format!(": {}", stab.reason)
|
format!(": {}", stab.deprecated_reason)
|
||||||
} else {
|
} else {
|
||||||
String::new()
|
String::new()
|
||||||
};
|
};
|
||||||
|
@ -1889,7 +1889,7 @@ fn short_stability(item: &clean::Item, cx: &Context, show_reason: bool) -> Vec<S
|
||||||
} else {
|
} else {
|
||||||
String::new()
|
String::new()
|
||||||
};
|
};
|
||||||
let text = format!("Deprecated{}{}", since, Markdown(&reason));
|
let text = format!("Deprecated{}{}", since, Markdown(&deprecated_reason));
|
||||||
stability.push(format!("<em class='stab deprecated'>{}</em>", text))
|
stability.push(format!("<em class='stab deprecated'>{}</em>", text))
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1909,7 +1909,12 @@ fn short_stability(item: &clean::Item, cx: &Context, show_reason: bool) -> Vec<S
|
||||||
} else {
|
} else {
|
||||||
String::new()
|
String::new()
|
||||||
};
|
};
|
||||||
let text = format!("Unstable{}{}", unstable_extra, Markdown(&reason));
|
let unstable_reason = if show_reason && !stab.unstable_reason.is_empty() {
|
||||||
|
format!(": {}", stab.unstable_reason)
|
||||||
|
} else {
|
||||||
|
String::new()
|
||||||
|
};
|
||||||
|
let text = format!("Unstable{}{}", unstable_extra, Markdown(&unstable_reason));
|
||||||
stability.push(format!("<em class='stab unstable'>{}</em>", text))
|
stability.push(format!("<em class='stab unstable'>{}</em>", text))
|
||||||
};
|
};
|
||||||
} else if let Some(depr) = item.deprecation.as_ref() {
|
} else if let Some(depr) = item.deprecation.as_ref() {
|
||||||
|
|
|
@ -789,9 +789,6 @@ fn find_stability_generic<'a, I>(diagnostic: &Handler,
|
||||||
// Merge the deprecation info into the stability info
|
// Merge the deprecation info into the stability info
|
||||||
if let Some(rustc_depr) = rustc_depr {
|
if let Some(rustc_depr) = rustc_depr {
|
||||||
if let Some(ref mut stab) = stab {
|
if let Some(ref mut stab) = stab {
|
||||||
if let Unstable {reason: ref mut reason @ None, ..} = stab.level {
|
|
||||||
*reason = Some(rustc_depr.reason.clone())
|
|
||||||
}
|
|
||||||
stab.rustc_depr = Some(rustc_depr);
|
stab.rustc_depr = Some(rustc_depr);
|
||||||
} else {
|
} else {
|
||||||
span_err!(diagnostic, item_sp, E0549,
|
span_err!(diagnostic, item_sp, E0549,
|
||||||
|
|
|
@ -20,6 +20,16 @@
|
||||||
// 'Deprecated since 1.0.0: text'
|
// 'Deprecated since 1.0.0: text'
|
||||||
// @has - '<code>test</code>'
|
// @has - '<code>test</code>'
|
||||||
// @has - '<a href="http://issue_url/32374">#32374</a>'
|
// @has - '<a href="http://issue_url/32374">#32374</a>'
|
||||||
|
// @matches issue_32374/struct.T.html '//*[@class="stab unstable"]' \
|
||||||
|
// 'Unstable \(test #32374\)$'
|
||||||
#[rustc_deprecated(since = "1.0.0", reason = "text")]
|
#[rustc_deprecated(since = "1.0.0", reason = "text")]
|
||||||
#[unstable(feature = "test", issue = "32374")]
|
#[unstable(feature = "test", issue = "32374")]
|
||||||
pub struct T;
|
pub struct T;
|
||||||
|
|
||||||
|
// @has issue_32374/struct.U.html '//*[@class="stab deprecated"]' \
|
||||||
|
// 'Deprecated since 1.0.0: deprecated'
|
||||||
|
// @has issue_32374/struct.U.html '//*[@class="stab unstable"]' \
|
||||||
|
// 'Unstable (test #32374): unstable'
|
||||||
|
#[rustc_deprecated(since = "1.0.0", reason = "deprecated")]
|
||||||
|
#[unstable(feature = "test", issue = "32374", reason = "unstable")]
|
||||||
|
pub struct U;
|
||||||
|
|
Loading…
Add table
Reference in a new issue