Display methods from DerefMut in the sidebar as well

This commit is contained in:
Guillaume Gomez
2019-07-18 23:38:23 +02:00
parent d7270712cb
commit d89bf91b2d

View File

@@ -4579,12 +4579,13 @@ fn get_methods(
i: &clean::Impl, i: &clean::Impl,
for_deref: bool, for_deref: bool,
used_links: &mut FxHashSet<String>, used_links: &mut FxHashSet<String>,
deref_mut: bool,
) -> Vec<String> { ) -> Vec<String> {
i.items.iter().filter_map(|item| { i.items.iter().filter_map(|item| {
match item.name { match item.name {
// Maybe check with clean::Visibility::Public as well? // Maybe check with clean::Visibility::Public as well?
Some(ref name) if !name.is_empty() && item.visibility.is_some() && item.is_method() => { Some(ref name) if !name.is_empty() && item.visibility.is_some() && item.is_method() => {
if !for_deref || should_render_item(item, false) { if !for_deref || should_render_item(item, deref_mut) {
Some(format!("<a href=\"#{}\">{}</a>", Some(format!("<a href=\"#{}\">{}</a>",
get_next_url(used_links, format!("method.{}", name)), get_next_url(used_links, format!("method.{}", name)),
name)) name))
@@ -4625,7 +4626,7 @@ fn sidebar_assoc_items(it: &clean::Item) -> String {
.filter(|i| i.inner_impl().trait_.is_none()) .filter(|i| i.inner_impl().trait_.is_none())
.flat_map(move |i| get_methods(i.inner_impl(), .flat_map(move |i| get_methods(i.inner_impl(),
false, false,
&mut used_links_bor.borrow_mut())) &mut used_links_bor.borrow_mut(), false))
.collect::<Vec<_>>(); .collect::<Vec<_>>();
// We want links' order to be reproducible so we don't use unstable sort. // We want links' order to be reproducible so we don't use unstable sort.
ret.sort(); ret.sort();
@@ -4659,7 +4660,8 @@ fn sidebar_assoc_items(it: &clean::Item) -> String {
.filter(|i| i.inner_impl().trait_.is_none()) .filter(|i| i.inner_impl().trait_.is_none())
.flat_map(|i| get_methods(i.inner_impl(), .flat_map(|i| get_methods(i.inner_impl(),
true, true,
&mut used_links)) &mut used_links,
true))
.collect::<Vec<_>>(); .collect::<Vec<_>>();
// We want links' order to be reproducible so we don't use unstable sort. // We want links' order to be reproducible so we don't use unstable sort.
ret.sort(); ret.sort();