Avoid unneeded clones
This commit is contained in:
parent
e7f99337b9
commit
a94292bba2
2 changed files with 6 additions and 6 deletions
10
src/types.rs
10
src/types.rs
|
@ -316,7 +316,7 @@ impl Field {
|
|||
Map::new()
|
||||
}
|
||||
|
||||
fn valid_field(&self, name: VecDeque<NamePart>) -> Option<FieldTerminator> {
|
||||
fn valid_field(&self, name: VecDeque<&NamePart>) -> Option<FieldTerminator> {
|
||||
trace!("Checking {:?} and {:?}", self, name);
|
||||
match *self {
|
||||
Field::Array(ref arr) => arr.valid_field(name),
|
||||
|
@ -376,7 +376,7 @@ impl Array {
|
|||
}
|
||||
}
|
||||
|
||||
fn valid_field(&self, mut name: VecDeque<NamePart>) -> Option<FieldTerminator> {
|
||||
fn valid_field(&self, mut name: VecDeque<&NamePart>) -> Option<FieldTerminator> {
|
||||
trace!("Checking {:?} and {:?}", self, name);
|
||||
match name.pop_front() {
|
||||
Some(name_part) => match name_part {
|
||||
|
@ -428,14 +428,14 @@ impl Map {
|
|||
Field::Map(self)
|
||||
}
|
||||
|
||||
fn valid_field(&self, mut name: VecDeque<NamePart>) -> Option<FieldTerminator> {
|
||||
fn valid_field(&self, mut name: VecDeque<&NamePart>) -> Option<FieldTerminator> {
|
||||
trace!("Checking {:?} and {:?}", self, name);
|
||||
match name.pop_front() {
|
||||
Some(name_part) => match name_part {
|
||||
NamePart::Map(part_name) => self
|
||||
.inner
|
||||
.iter()
|
||||
.find(|&&(ref item, _)| *item == part_name)
|
||||
.find(|&&(ref item, _)| *item == *part_name)
|
||||
.and_then(|&(_, ref field)| field.valid_field(name)),
|
||||
_ => None,
|
||||
},
|
||||
|
@ -531,7 +531,7 @@ impl Form {
|
|||
self
|
||||
}
|
||||
|
||||
pub(crate) fn valid_field(&self, name: VecDeque<NamePart>) -> Option<FieldTerminator> {
|
||||
pub(crate) fn valid_field(&self, name: VecDeque<&NamePart>) -> Option<FieldTerminator> {
|
||||
self.inner.valid_field(name.clone())
|
||||
}
|
||||
}
|
||||
|
|
|
@ -193,7 +193,7 @@ async fn handle_stream_field(
|
|||
let name = parse_multipart_name(name)?;
|
||||
|
||||
let term = form
|
||||
.valid_field(name.iter().cloned().collect())
|
||||
.valid_field(name.iter().collect())
|
||||
.ok_or(Error::FieldType)?;
|
||||
|
||||
let content = match term {
|
||||
|
|
Loading…
Reference in a new issue