Skip to content

Commit 9584352

Browse files
authored
Auto merge of servo#484 - MichaelMcDonnell:remove-needless-borrows, r=jdm
Remove needless borrows Clippy generated several warnings about how "this expression creates a reference which is immediately dereferenced by the compiler" [1]. I've removed the references since they don't do anything. There are also some rustfmt changes that my editor automatically made. [1] https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow
2 parents 6a8ce7d + f413b98 commit 9584352

File tree

5 files changed

+70
-66
lines changed

5 files changed

+70
-66
lines changed

markup5ever/util/buffer_queue.rs

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -93,10 +93,7 @@ impl BufferQueue {
9393
/// Look at the next available character without removing it, if the queue is not empty.
9494
pub fn peek(&self) -> Option<char> {
9595
debug_assert!(
96-
self.buffers
97-
.iter()
98-
.find(|el| el.len32() == 0)
99-
.is_none(),
96+
self.buffers.iter().find(|el| el.len32() == 0).is_none(),
10097
"invariant \"all buffers in the queue are non-empty\" failed"
10198
);
10299
self.buffers.front().map(|b| b.chars().next().unwrap())
@@ -152,7 +149,7 @@ impl BufferQueue {
152149
let (result, now_empty) = match self.buffers.front_mut() {
153150
None => (None, false),
154151
Some(buf) => {
155-
let n = set.nonmember_prefix_len(&buf);
152+
let n = set.nonmember_prefix_len(buf);
156153
if n > 0 {
157154
let out;
158155
unsafe {

rcdom/lib.rs

Lines changed: 27 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,11 @@ impl Drop for Node {
131131
while let Some(node) = nodes.pop() {
132132
let children = mem::replace(&mut *node.children.borrow_mut(), vec![]);
133133
nodes.extend(children.into_iter());
134-
if let NodeData::Element { ref template_contents, .. } = node.data {
134+
if let NodeData::Element {
135+
ref template_contents,
136+
..
137+
} = node.data
138+
{
135139
if let Some(template_contents) = template_contents.borrow_mut().take() {
136140
nodes.push(template_contents);
137141
}
@@ -173,7 +177,7 @@ fn get_parent_and_index(target: &Handle) -> Option<(Handle, usize)> {
173177
.borrow()
174178
.iter()
175179
.enumerate()
176-
.find(|&(_, child)| Rc::ptr_eq(&child, &target))
180+
.find(|&(_, child)| Rc::ptr_eq(child, target))
177181
{
178182
Some((i, _)) => i,
179183
None => panic!("have parent but couldn't find in parent's children!"),
@@ -235,7 +239,11 @@ impl TreeSink for RcDom {
235239
..
236240
} = target.data
237241
{
238-
template_contents.borrow().as_ref().expect("not a template element!").clone()
242+
template_contents
243+
.borrow()
244+
.as_ref()
245+
.expect("not a template element!")
246+
.clone()
239247
} else {
240248
panic!("not a template element!")
241249
}
@@ -290,7 +298,7 @@ impl TreeSink for RcDom {
290298
match child {
291299
NodeOrText::AppendText(ref text) => match parent.children.borrow().last() {
292300
Some(h) => {
293-
if append_to_existing_text(h, &text) {
301+
if append_to_existing_text(h, text) {
294302
return;
295303
}
296304
},
@@ -300,7 +308,7 @@ impl TreeSink for RcDom {
300308
}
301309

302310
append(
303-
&parent,
311+
parent,
304312
match child {
305313
NodeOrText::AppendText(text) => Node::new(NodeData::Text {
306314
contents: RefCell::new(text),
@@ -311,7 +319,7 @@ impl TreeSink for RcDom {
311319
}
312320

313321
fn append_before_sibling(&mut self, sibling: &Handle, child: NodeOrText<Handle>) {
314-
let (parent, i) = get_parent_and_index(&sibling)
322+
let (parent, i) = get_parent_and_index(sibling)
315323
.expect("append_before_sibling called on node without parent");
316324

317325
let child = match (child, i) {
@@ -397,16 +405,16 @@ impl TreeSink for RcDom {
397405
}
398406

399407
fn remove_from_parent(&mut self, target: &Handle) {
400-
remove_from_parent(&target);
408+
remove_from_parent(target);
401409
}
402410

403411
fn reparent_children(&mut self, node: &Handle, new_parent: &Handle) {
404412
let mut children = node.children.borrow_mut();
405413
let mut new_children = new_parent.children.borrow_mut();
406414
for child in children.iter() {
407-
let previous_parent = child.parent.replace(Some(Rc::downgrade(&new_parent)));
415+
let previous_parent = child.parent.replace(Some(Rc::downgrade(new_parent)));
408416
assert!(Rc::ptr_eq(
409-
&node,
417+
node,
410418
&previous_parent.unwrap().upgrade().expect("dangling weak")
411419
))
412420
}
@@ -457,12 +465,13 @@ impl Serialize for SerializableHandle {
457465
let mut ops = VecDeque::new();
458466
match traversal_scope {
459467
IncludeNode => ops.push_back(SerializeOp::Open(self.0.clone())),
460-
ChildrenOnly(_) => ops.extend(self
461-
.0
462-
.children
463-
.borrow()
464-
.iter()
465-
.map(|h| SerializeOp::Open(h.clone())))
468+
ChildrenOnly(_) => ops.extend(
469+
self.0
470+
.children
471+
.borrow()
472+
.iter()
473+
.map(|h| SerializeOp::Open(h.clone())),
474+
),
466475
}
467476

468477
while let Some(op) = ops.pop_front() {
@@ -486,13 +495,11 @@ impl Serialize for SerializableHandle {
486495
}
487496
},
488497

489-
NodeData::Doctype { ref name, .. } => serializer.write_doctype(&name)?,
498+
NodeData::Doctype { ref name, .. } => serializer.write_doctype(name)?,
490499

491-
NodeData::Text { ref contents } => {
492-
serializer.write_text(&contents.borrow())?
493-
},
500+
NodeData::Text { ref contents } => serializer.write_text(&contents.borrow())?,
494501

495-
NodeData::Comment { ref contents } => serializer.write_comment(&contents)?,
502+
NodeData::Comment { ref contents } => serializer.write_comment(contents)?,
496503

497504
NodeData::ProcessingInstruction {
498505
ref target,

xml5ever/src/serialize/mod.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ fn write_to_buf_escaped<W: Write>(writer: &mut W, text: &str, attr_mode: bool) -
8989
#[inline]
9090
fn write_qual_name<W: Write>(writer: &mut W, name: &QualName) -> io::Result<()> {
9191
if let Some(ref prefix) = name.prefix {
92-
writer.write_all(&prefix.as_bytes())?;
92+
writer.write_all(prefix.as_bytes())?;
9393
writer.write_all(b":")?;
9494
writer.write_all(&*name.local.as_bytes())?;
9595
} else {
@@ -158,7 +158,7 @@ impl<Wr: Write> Serializer for XmlSerializer<Wr> {
158158
self.writer.write_all(b" xmlns")?;
159159
if let Some(ref p) = *prefix {
160160
self.writer.write_all(b":")?;
161-
self.writer.write_all(&*p.as_bytes())?;
161+
self.writer.write_all(p.as_bytes())?;
162162
}
163163

164164
self.writer.write_all(b"=\"")?;
@@ -173,7 +173,7 @@ impl<Wr: Write> Serializer for XmlSerializer<Wr> {
173173
}
174174
for (name, value) in attrs {
175175
self.writer.write_all(b" ")?;
176-
self.qual_attr_name(&name)?;
176+
self.qual_attr_name(name)?;
177177
self.writer.write_all(b"=\"")?;
178178
write_to_buf_escaped(&mut self.writer, value, true)?;
179179
self.writer.write_all(b"\"")?;

xml5ever/src/tokenizer/mod.rs

Lines changed: 29 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -61,16 +61,16 @@ fn process_qname(tag_name: StrTendril) -> QualName {
6161
// a:b
6262
// Since StrTendril are UTF-8, we know that minimal size in bytes must be
6363
// three bytes minimum.
64-
let split = if (&*tag_name).as_bytes().len() < 3 {
64+
let split = if (*tag_name).as_bytes().len() < 3 {
6565
None
6666
} else {
67-
QualNameTokenizer::new((&*tag_name).as_bytes()).run()
67+
QualNameTokenizer::new((*tag_name).as_bytes()).run()
6868
};
6969

7070
match split {
7171
None => QualName::new(None, ns!(), LocalName::from(&*tag_name)),
7272
Some(col) => {
73-
let len = (&*tag_name).as_bytes().len() as u32;
73+
let len = (*tag_name).as_bytes().len() as u32;
7474
let prefix = tag_name.subtendril(0, col);
7575
let local = tag_name.subtendril(col + 1, len - col - 1);
7676
let ns = ns!(); // Actual namespace URL set in XmlTreeBuilder::bind_qname
@@ -248,8 +248,8 @@ impl<Sink: TokenSink> XmlTokenizer<Sink> {
248248
}
249249

250250
// Exclude forbidden Unicode characters
251-
if self.opts.exact_errors &&
252-
match c as u32 {
251+
if self.opts.exact_errors
252+
&& match c as u32 {
253253
0x01..=0x08 | 0x0B | 0x0E..=0x1F | 0x7F..=0x9F | 0xFDD0..=0xFDEF => true,
254254
n if (n & 0xFFFE) == 0xFFFE => true,
255255
_ => false,
@@ -1141,11 +1141,11 @@ impl<Sink: TokenSink> XmlTokenizer<Sink> {
11411141
},
11421142
XmlState::CommentLessThanBangDash => go!(self: reconsume CommentEndDash),
11431143
XmlState::CommentLessThanBangDashDash => go!(self: reconsume CommentEnd),
1144-
XmlState::CommentStartDash |
1145-
XmlState::Comment |
1146-
XmlState::CommentEndDash |
1147-
XmlState::CommentEnd |
1148-
XmlState::CommentEndBang => go!(self: error_eof; emit_comment; eof),
1144+
XmlState::CommentStartDash
1145+
| XmlState::Comment
1146+
| XmlState::CommentEndDash
1147+
| XmlState::CommentEnd
1148+
| XmlState::CommentEndBang => go!(self: error_eof; emit_comment; eof),
11491149
XmlState::TagState => go!(self: error_eof; emit '<'; to Data),
11501150
XmlState::EndTagState => go!(self: error_eof; emit '<'; emit '/'; to Data),
11511151
XmlState::TagEmpty => go!(self: error_eof; to TagAttrNameBefore),
@@ -1155,25 +1155,25 @@ impl<Sink: TokenSink> XmlTokenizer<Sink> {
11551155
XmlState::Pi => go!(self: error_eof; to BogusComment),
11561156
XmlState::PiTargetAfter | XmlState::PiAfter => go!(self: reconsume PiData),
11571157
XmlState::MarkupDecl => go!(self: error_eof; to BogusComment),
1158-
XmlState::TagName |
1159-
XmlState::TagAttrNameBefore |
1160-
XmlState::EndTagName |
1161-
XmlState::TagAttrNameAfter |
1162-
XmlState::EndTagNameAfter |
1163-
XmlState::TagAttrValueBefore |
1164-
XmlState::TagAttrValue(_) => go!(self: error_eof; emit_tag Data),
1158+
XmlState::TagName
1159+
| XmlState::TagAttrNameBefore
1160+
| XmlState::EndTagName
1161+
| XmlState::TagAttrNameAfter
1162+
| XmlState::EndTagNameAfter
1163+
| XmlState::TagAttrValueBefore
1164+
| XmlState::TagAttrValue(_) => go!(self: error_eof; emit_tag Data),
11651165
XmlState::PiData | XmlState::PiTarget => go!(self: error_eof; emit_pi Data),
11661166
XmlState::TagAttrName => go!(self: error_eof; emit_start_tag Data),
1167-
XmlState::BeforeDoctypeName |
1168-
XmlState::Doctype |
1169-
XmlState::DoctypeName |
1170-
XmlState::AfterDoctypeName |
1171-
XmlState::AfterDoctypeKeyword(_) |
1172-
XmlState::BeforeDoctypeIdentifier(_) |
1173-
XmlState::AfterDoctypeIdentifier(_) |
1174-
XmlState::DoctypeIdentifierSingleQuoted(_) |
1175-
XmlState::DoctypeIdentifierDoubleQuoted(_) |
1176-
XmlState::BetweenDoctypePublicAndSystemIdentifiers => {
1167+
XmlState::BeforeDoctypeName
1168+
| XmlState::Doctype
1169+
| XmlState::DoctypeName
1170+
| XmlState::AfterDoctypeName
1171+
| XmlState::AfterDoctypeKeyword(_)
1172+
| XmlState::BeforeDoctypeIdentifier(_)
1173+
| XmlState::AfterDoctypeIdentifier(_)
1174+
| XmlState::DoctypeIdentifierSingleQuoted(_)
1175+
| XmlState::DoctypeIdentifierDoubleQuoted(_)
1176+
| XmlState::BetweenDoctypePublicAndSystemIdentifiers => {
11771177
go!(self: error_eof; emit_doctype; to Data)
11781178
},
11791179
XmlState::BogusDoctype => go!(self: emit_doctype; to Data),
@@ -1251,8 +1251,8 @@ impl<Sink: TokenSink> XmlTokenizer<Sink> {
12511251
value: replace(&mut self.current_attr_value, StrTendril::new()),
12521252
};
12531253

1254-
if qname.local == local_name!("xmlns") ||
1255-
qname.prefix == Some(namespace_prefix!("xmlns"))
1254+
if qname.local == local_name!("xmlns")
1255+
|| qname.prefix == Some(namespace_prefix!("xmlns"))
12561256
{
12571257
self.current_tag_attrs.insert(0, attr);
12581258
} else {

xml5ever/src/tree_builder/mod.rs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -246,10 +246,10 @@ where
246246
pub fn trace_handles(&self, tracer: &dyn Tracer<Handle = Handle>) {
247247
tracer.trace_handle(&self.doc_handle);
248248
for e in self.open_elems.iter() {
249-
tracer.trace_handle(&e);
249+
tracer.trace_handle(e);
250250
}
251251
if let Some(h) = self.curr_elem.as_ref() {
252-
tracer.trace_handle(&h);
252+
tracer.trace_handle(h);
253253
}
254254
}
255255

@@ -278,7 +278,7 @@ where
278278
}
279279

280280
fn declare_ns(&mut self, attr: &mut Attribute) {
281-
if let Err(msg) = self.current_namespace.insert_ns(&attr) {
281+
if let Err(msg) = self.current_namespace.insert_ns(attr) {
282282
self.sink.parse_error(msg);
283283
} else {
284284
attr.name.ns = ns!(xmlns);
@@ -346,17 +346,17 @@ where
346346
fn process_namespaces(&mut self, tag: &mut Tag) {
347347
let mut new_attr = vec![];
348348
// First we extract all namespace declarations
349-
for mut attr in tag.attrs.iter_mut().filter(|attr| {
350-
attr.name.prefix == Some(namespace_prefix!("xmlns")) ||
351-
attr.name.local == local_name!("xmlns")
349+
for attr in tag.attrs.iter_mut().filter(|attr| {
350+
attr.name.prefix == Some(namespace_prefix!("xmlns"))
351+
|| attr.name.local == local_name!("xmlns")
352352
}) {
353-
self.declare_ns(&mut attr);
353+
self.declare_ns(attr);
354354
}
355355

356356
// Then we bind those namespace declarations to attributes
357357
for attr in tag.attrs.iter_mut().filter(|attr| {
358-
attr.name.prefix != Some(namespace_prefix!("xmlns")) &&
359-
attr.name.local != local_name!("xmlns")
358+
attr.name.prefix != Some(namespace_prefix!("xmlns"))
359+
&& attr.name.local != local_name!("xmlns")
360360
}) {
361361
if self.bind_attr_qname(&mut attr.name) {
362362
new_attr.push(attr.clone());

0 commit comments

Comments
 (0)