diff --git a/lib/docs/filters/rust/clean_html.rb b/lib/docs/filters/rust/clean_html.rb
index 55c55417..682bf484 100644
--- a/lib/docs/filters/rust/clean_html.rb
+++ b/lib/docs/filters/rust/clean_html.rb
@@ -71,19 +71,6 @@ module Docs
doc.first_element_child.name = 'h1' if doc.first_element_child.name = 'h2'
at_css('h1').content = 'Rust Documentation' if root_page?
- css('.table-display').each do |node|
- node.css('td').each do |td|
- node.before(td.children)
- end
- node.remove
- end
-
- css('.important-traits').to_a.each_with_index do |node, index|
- content = node.at_css('.content.hidden .content')
- node.at_css('.content.hidden').replace(content) if content
- node.parent.after(node) if node.parent.name.in?(%(h2 h3 h4))
- end
-
css('code.content').each do |node|
node.name = 'pre'
node.css('.fmt-newline').each do |line|
@@ -97,6 +84,24 @@ module Docs
node.previous_element.before(node)
end
+ css('.sidebar').remove
+
+ css('.collapse-toggle').remove
+
+ # Fix how notable-traits sections are shown
+
+ css('.method').each do |node|
+ traitSection = node.at_css('.notable-traits')
+
+ if traitSection
+ traitSectionContent = traitSection.css('.notable-traits-tooltiptext')
+ traitSection.css('.notable-traits-tooltip').remove
+ traitSection.add_child(traitSectionContent)
+ node.after(traitSection)
+ end
+
+ end
+
doc
end
end
diff --git a/lib/docs/filters/rust/entries.rb b/lib/docs/filters/rust/entries.rb
index 524342fc..2fa5186d 100644
--- a/lib/docs/filters/rust/entries.rb
+++ b/lib/docs/filters/rust/entries.rb
@@ -1,9 +1,11 @@
module Docs
class Rust
class EntriesFilter < Docs::EntriesFilter
+
def get_name
if slug.start_with?('book') || slug.start_with?('reference')
- at_css("#sidebar a[href='#{File.basename(slug)}']").content
+ name = at_css("#sidebar a[href='#{File.basename(slug)}']")
+ name ? name.content : 'Introduction'
elsif slug == 'error-index'
'Compiler Errors'
else
@@ -51,6 +53,7 @@ module Docs
}.values
end
end
+
end
end
end
diff --git a/lib/docs/scrapers/rust.rb b/lib/docs/scrapers/rust.rb
index 0cb4b7fb..0e9f7823 100644
--- a/lib/docs/scrapers/rust.rb
+++ b/lib/docs/scrapers/rust.rb
@@ -3,12 +3,11 @@
module Docs
class Rust < UrlScraper
self.type = 'rust'
- self.release = '1.47.0'
+ self.release = '1.48.0'
self.base_url = 'https://doc.rust-lang.org/'
self.root_path = 'book/index.html'
self.initial_paths = %w(
reference/introduction.html
- collections/index.html
std/index.html
error-index.html)
self.links = {