From 59c8a279daf6912b99ba089ff6dafbfc3469831e Mon Sep 17 00:00:00 2001 From: ljedrz Date: Thu, 26 Jul 2018 17:11:10 +0200 Subject: Replace push loops with collect() and extend() where possible --- src/libserialize/json.rs | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) (limited to 'src/libserialize') diff --git a/src/libserialize/json.rs b/src/libserialize/json.rs index 88cc9373113..b5986e88b66 100644 --- a/src/libserialize/json.rs +++ b/src/libserialize/json.rs @@ -1364,9 +1364,7 @@ impl Stack { // Used by Parser to insert StackElement::Key elements at the top of the stack. fn push_key(&mut self, key: string::String) { self.stack.push(InternalKey(self.str_buffer.len() as u16, key.len() as u16)); - for c in key.as_bytes() { - self.str_buffer.push(*c); - } + self.str_buffer.extend(key.as_bytes()); } // Used by Parser to insert StackElement::Index elements at the top of the stack. @@ -2212,9 +2210,7 @@ impl ::Decoder for Decoder { }; match o.remove(&"fields".to_string()) { Some(Json::Array(l)) => { - for field in l.into_iter().rev() { - self.stack.push(field); - } + self.stack.extend(l.into_iter().rev()); }, Some(val) => { return Err(ExpectedError("Array".to_owned(), format!("{}", val))) @@ -2346,9 +2342,7 @@ impl ::Decoder for Decoder { { let array = expect!(self.pop(), Array)?; let len = array.len(); - for v in array.into_iter().rev() { - self.stack.push(v); - } + self.stack.extend(array.into_iter().rev()); f(self, len) } -- cgit 1.4.1-3-g733a5