diff --git a/html5ever/src/tokenizer/mod.rs b/html5ever/src/tokenizer/mod.rs
index 7dd690ea..cb3384f6 100644
--- a/html5ever/src/tokenizer/mod.rs
+++ b/html5ever/src/tokenizer/mod.rs
@@ -27,6 +27,7 @@ use log::{debug, trace};
use markup5ever::{ns, small_char_set, TokenizerResult};
use std::borrow::Cow::{self, Borrowed};
use std::cell::{Cell, RefCell, RefMut};
+use std::cmp::Reverse;
use std::collections::BTreeMap;
use std::mem;
@@ -1774,12 +1775,9 @@ impl Tokenizer {
.iter()
.map(|(s, t)| (*s, *t))
.collect();
- results.sort_by(|&(_, x), &(_, y)| y.cmp(&x));
+ results.sort_by_key(|&(_, x)| Reverse(x));
- let total: u64 = results
- .iter()
- .map(|&(_, t)| t)
- .fold(0, ::std::ops::Add::add);
+ let total: u64 = results.iter().map(|&(_, t)| t).sum();
println!("\nTokenizer profile, in nanoseconds");
println!(
"\n{:12} total in token sink",
diff --git a/html5ever/src/tree_builder/mod.rs b/html5ever/src/tree_builder/mod.rs
index 8a0379ea..3fcfaec3 100644
--- a/html5ever/src/tree_builder/mod.rs
+++ b/html5ever/src/tree_builder/mod.rs
@@ -1279,10 +1279,8 @@ where
_ => continue,
};
match *name {
- local_name!("td") | local_name!("th") => {
- if !last {
- return InsertionMode::InCell;
- }
+ local_name!("td") | local_name!("th") if !last => {
+ return InsertionMode::InCell;
},
local_name!("tr") => return InsertionMode::InRow,
local_name!("tbody") | local_name!("thead") | local_name!("tfoot") => {
diff --git a/rcdom/lib.rs b/rcdom/lib.rs
index b7e38b8a..1ee9306b 100644
--- a/rcdom/lib.rs
+++ b/rcdom/lib.rs
@@ -262,7 +262,7 @@ impl Drop for Node {
let mut nodes = mem::take(&mut *self.children.borrow_mut());
while let Some(node) = nodes.pop() {
let children = mem::take(&mut *node.children.borrow_mut());
- nodes.extend(children.into_iter());
+ nodes.extend(children);
if let NodeData::Element {
ref template_contents,
..
diff --git a/xml5ever/src/tokenizer/mod.rs b/xml5ever/src/tokenizer/mod.rs
index f6383f2f..6872b1c6 100644
--- a/xml5ever/src/tokenizer/mod.rs
+++ b/xml5ever/src/tokenizer/mod.rs
@@ -24,6 +24,7 @@ use log::debug;
use markup5ever::{local_name, namespace_prefix, ns, small_char_set, TokenizerResult};
use std::borrow::Cow::{self, Borrowed};
use std::cell::{Cell, RefCell, RefMut};
+use std::cmp::Reverse;
use std::collections::BTreeMap;
use std::mem::replace;
@@ -1137,12 +1138,9 @@ impl XmlTokenizer {
.iter()
.map(|(s, t)| (*s, *t))
.collect();
- results.sort_by(|&(_, x), &(_, y)| y.cmp(&x));
+ results.sort_by_key(|&(_, x)| Reverse(x));
- let total: u64 = results
- .iter()
- .map(|&(_, t)| t)
- .fold(0, ::std::ops::Add::add);
+ let total: u64 = results.iter().map(|&(_, t)| t).sum();
debug!("\nTokenizer profile, in nanoseconds");
debug!(
"\n{:12} total in token sink",