Skip to content

Commit 8a4fecb

Browse files
committed
Fix some Clippy warnings in librustc_serialize
1 parent db870ea commit 8a4fecb

File tree

3 files changed

+42
-74
lines changed

3 files changed

+42
-74
lines changed

src/librustc_serialize/collection_impls.rs

+6-18
Original file line numberDiff line numberDiff line change
@@ -86,11 +86,9 @@ where
8686
{
8787
fn encode<S: Encoder>(&self, e: &mut S) -> Result<(), S::Error> {
8888
e.emit_map(self.len(), |e| {
89-
let mut i = 0;
90-
for (key, val) in self {
89+
for (i, (key, val)) in self.iter().enumerate() {
9190
e.emit_map_elt_key(i, |e| key.encode(e))?;
9291
e.emit_map_elt_val(i, |e| val.encode(e))?;
93-
i += 1;
9492
}
9593
Ok(())
9694
})
@@ -121,10 +119,8 @@ where
121119
{
122120
fn encode<S: Encoder>(&self, s: &mut S) -> Result<(), S::Error> {
123121
s.emit_seq(self.len(), |s| {
124-
let mut i = 0;
125-
for e in self {
122+
for (i, e) in self.iter().enumerate() {
126123
s.emit_seq_elt(i, |s| e.encode(s))?;
127-
i += 1;
128124
}
129125
Ok(())
130126
})
@@ -154,11 +150,9 @@ where
154150
{
155151
fn encode<E: Encoder>(&self, e: &mut E) -> Result<(), E::Error> {
156152
e.emit_map(self.len(), |e| {
157-
let mut i = 0;
158-
for (key, val) in self {
153+
for (i, (key, val)) in self.iter().enumerate() {
159154
e.emit_map_elt_key(i, |e| key.encode(e))?;
160155
e.emit_map_elt_val(i, |e| val.encode(e))?;
161-
i += 1;
162156
}
163157
Ok(())
164158
})
@@ -192,10 +186,8 @@ where
192186
{
193187
fn encode<E: Encoder>(&self, s: &mut E) -> Result<(), E::Error> {
194188
s.emit_seq(self.len(), |s| {
195-
let mut i = 0;
196-
for e in self {
189+
for (i, e) in self.iter().enumerate() {
197190
s.emit_seq_elt(i, |s| e.encode(s))?;
198-
i += 1;
199191
}
200192
Ok(())
201193
})
@@ -227,11 +219,9 @@ where
227219
{
228220
fn encode<E: Encoder>(&self, e: &mut E) -> Result<(), E::Error> {
229221
e.emit_map(self.len(), |e| {
230-
let mut i = 0;
231-
for (key, val) in self {
222+
for (i, (key, val)) in self.iter().enumerate() {
232223
e.emit_map_elt_key(i, |e| key.encode(e))?;
233224
e.emit_map_elt_val(i, |e| val.encode(e))?;
234-
i += 1;
235225
}
236226
Ok(())
237227
})
@@ -265,10 +255,8 @@ where
265255
{
266256
fn encode<E: Encoder>(&self, s: &mut E) -> Result<(), E::Error> {
267257
s.emit_seq(self.len(), |s| {
268-
let mut i = 0;
269-
for e in self {
258+
for (i, e) in self.iter().enumerate() {
270259
s.emit_seq_elt(i, |s| e.encode(s))?;
271-
i += 1;
272260
}
273261
Ok(())
274262
})

src/librustc_serialize/json.rs

+34-54
Original file line numberDiff line numberDiff line change
@@ -78,19 +78,17 @@
7878
//! data_vector: Vec<u8>,
7979
//! }
8080
//!
81-
//! fn main() {
82-
//! let object = TestStruct {
83-
//! data_int: 1,
84-
//! data_str: "homura".to_string(),
85-
//! data_vector: vec![2,3,4,5],
86-
//! };
81+
//! let object = TestStruct {
82+
//! data_int: 1,
83+
//! data_str: "homura".to_string(),
84+
//! data_vector: vec![2,3,4,5],
85+
//! };
8786
//!
88-
//! // Serialize using `json::encode`
89-
//! let encoded = json::encode(&object).unwrap();
87+
//! // Serialize using `json::encode`
88+
//! let encoded = json::encode(&object).unwrap();
9089
//!
91-
//! // Deserialize using `json::decode`
92-
//! let decoded: TestStruct = json::decode(&encoded[..]).unwrap();
93-
//! }
90+
//! // Deserialize using `json::decode`
91+
//! let decoded: TestStruct = json::decode(&encoded[..]).unwrap();
9492
//! ```
9593
//!
9694
//! ## Using the `ToJson` trait
@@ -125,16 +123,14 @@
125123
//! val: Json,
126124
//! }
127125
//!
128-
//! fn main() {
129-
//! let num = ComplexNum { a: 0.0001, b: 12.539 };
130-
//! let data: String = json::encode(&ComplexNumRecord{
131-
//! uid: 1,
132-
//! dsc: "test".to_string(),
133-
//! val: num.to_json(),
134-
//! }).unwrap();
135-
//! println!("data: {}", data);
136-
//! // data: {"uid":1,"dsc":"test","val":"0.0001+12.539i"};
137-
//! }
126+
//! let num = ComplexNum { a: 0.0001, b: 12.539 };
127+
//! let data: String = json::encode(&ComplexNumRecord{
128+
//! uid: 1,
129+
//! dsc: "test".to_string(),
130+
//! val: num.to_json(),
131+
//! }).unwrap();
132+
//! println!("data: {}", data);
133+
//! // data: {"uid":1,"dsc":"test","val":"0.0001+12.539i"};
138134
//! ```
139135
//!
140136
//! ### Verbose example of `ToJson` usage
@@ -164,19 +160,17 @@
164160
//! }
165161
//! }
166162
//!
167-
//! fn main() {
168-
//! // Serialize using `ToJson`
169-
//! let input_data = TestStruct {
170-
//! data_int: 1,
171-
//! data_str: "madoka".to_string(),
172-
//! data_vector: vec![2,3,4,5],
173-
//! };
174-
//! let json_obj: Json = input_data.to_json();
175-
//! let json_str: String = json_obj.to_string();
163+
//! // Serialize using `ToJson`
164+
//! let input_data = TestStruct {
165+
//! data_int: 1,
166+
//! data_str: "madoka".to_string(),
167+
//! data_vector: vec![2,3,4,5],
168+
//! };
169+
//! let json_obj: Json = input_data.to_json();
170+
//! let json_str: String = json_obj.to_string();
176171
//!
177-
//! // Deserialize like before
178-
//! let decoded: TestStruct = json::decode(&json_str).unwrap();
179-
//! }
172+
//! // Deserialize like before
173+
//! let decoded: TestStruct = json::decode(&json_str).unwrap();
180174
//! ```
181175
182176
use self::DecoderError::*;
@@ -1269,34 +1263,22 @@ impl Json {
12691263

12701264
/// Returns `true` if the Json value is a `Number`.
12711265
pub fn is_number(&self) -> bool {
1272-
match *self {
1273-
Json::I64(_) | Json::U64(_) | Json::F64(_) => true,
1274-
_ => false,
1275-
}
1266+
matches!(*self, Json::I64(_) | Json::U64(_) | Json::F64(_))
12761267
}
12771268

12781269
/// Returns `true` if the Json value is a `i64`.
12791270
pub fn is_i64(&self) -> bool {
1280-
match *self {
1281-
Json::I64(_) => true,
1282-
_ => false,
1283-
}
1271+
matches!(*self, Json::I64(_))
12841272
}
12851273

12861274
/// Returns `true` if the Json value is a `u64`.
12871275
pub fn is_u64(&self) -> bool {
1288-
match *self {
1289-
Json::U64(_) => true,
1290-
_ => false,
1291-
}
1276+
matches!(*self, Json::U64(_))
12921277
}
12931278

12941279
/// Returns `true` if the Json value is a `f64`.
12951280
pub fn is_f64(&self) -> bool {
1296-
match *self {
1297-
Json::F64(_) => true,
1298-
_ => false,
1299-
}
1281+
matches!(*self, Json::F64(_))
13001282
}
13011283

13021284
/// If the Json value is a number, returns or cast it to a `i64`;
@@ -1416,6 +1398,7 @@ enum ParserState {
14161398
/// structure of the JSON stream.
14171399
///
14181400
/// An example is `foo.bar[3].x`.
1401+
#[derive(Default)]
14191402
pub struct Stack {
14201403
stack: Vec<InternalStackElement>,
14211404
str_buffer: Vec<u8>,
@@ -1442,7 +1425,7 @@ enum InternalStackElement {
14421425

14431426
impl Stack {
14441427
pub fn new() -> Stack {
1445-
Stack { stack: Vec::new(), str_buffer: Vec::new() }
1428+
Self::default()
14461429
}
14471430

14481431
/// Returns The number of elements in the Stack.
@@ -1547,10 +1530,7 @@ impl Stack {
15471530

15481531
// Used by Parser to test whether the top-most element is an index.
15491532
fn last_is_index(&self) -> bool {
1550-
match self.stack.last() {
1551-
Some(InternalIndex(_)) => true,
1552-
_ => false,
1553-
}
1533+
matches!(self.stack.last(), Some(InternalIndex(_)))
15541534
}
15551535

15561536
// Used by Parser to increment the index of the top-most element.

src/librustc_serialize/opaque.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -118,13 +118,13 @@ impl serialize::Encoder for Encoder {
118118

119119
#[inline]
120120
fn emit_f64(&mut self, v: f64) -> EncodeResult {
121-
let as_u64: u64 = unsafe { ::std::mem::transmute(v) };
121+
let as_u64: u64 = v.to_bits();
122122
self.emit_u64(as_u64)
123123
}
124124

125125
#[inline]
126126
fn emit_f32(&mut self, v: f32) -> EncodeResult {
127-
let as_u32: u32 = unsafe { ::std::mem::transmute(v) };
127+
let as_u32: u32 = v.to_bits();
128128
self.emit_u32(as_u32)
129129
}
130130

0 commit comments

Comments
 (0)