From e0672f5fd599bb22684c2b67233b603763e41e8c Mon Sep 17 00:00:00 2001
From: Project Nayuki <me@nayuki.io>
Date: Mon, 23 Oct 2017 04:10:21 +0000
Subject: [PATCH] Simplified some Rust code by moving Vec's type parameter to
 the function call instead of being in the variable declaration's type.

---
 rust/examples/qrcodegen-demo.rs |  2 +-
 rust/src/lib.rs                 | 16 ++++++++--------
 2 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/rust/examples/qrcodegen-demo.rs b/rust/examples/qrcodegen-demo.rs
index fafae13..0dcd906 100644
--- a/rust/examples/qrcodegen-demo.rs
+++ b/rust/examples/qrcodegen-demo.rs
@@ -124,7 +124,7 @@ fn do_segment_demo() {
 		0x0000, 0x0104, 0x0105, 0x0113, 0x0115,
 		0x0000, 0x0208, 0x01FF, 0x0008,
 	];
-	let mut bb: Vec<bool> = Vec::new();
+	let mut bb = Vec::<bool>::new();
 	for c in &kanjichars {
 		qrcodegen::append_bits(&mut bb, *c, 13);
 	}
diff --git a/rust/src/lib.rs b/rust/src/lib.rs
index c33945d..8e48e3c 100644
--- a/rust/src/lib.rs
+++ b/rust/src/lib.rs
@@ -132,7 +132,7 @@ impl QrCode {
 		
 		// Create the data bit string by concatenating all segments
 		let datacapacitybits: usize = QrCode::get_num_data_codewords(version, ecl) * 8;
-		let mut bb: Vec<bool> = Vec::new();
+		let mut bb = Vec::<bool>::new();
 		for seg in segs {
 			append_bits(&mut bb, seg.mode.mode_bits(), 4);
 			append_bits(&mut bb, seg.numchars as u32, seg.mode.num_char_count_bits(version));
@@ -414,11 +414,11 @@ impl QrCode {
 		let shortblocklen: usize = rawcodewords / numblocks;
 		
 		// Split data into blocks and append ECC to each block
-		let mut blocks: Vec<Vec<u8>> = Vec::with_capacity(numblocks);
+		let mut blocks = Vec::<Vec<u8>>::with_capacity(numblocks);
 		let rs = ReedSolomonGenerator::new(blockecclen);
 		let mut k: usize = 0;
 		for i in 0 .. numblocks {
-			let mut dat: Vec<u8> = Vec::with_capacity(shortblocklen + 1);
+			let mut dat = Vec::<u8>::with_capacity(shortblocklen + 1);
 			dat.extend_from_slice(&data[k .. k + shortblocklen - blockecclen + ((i >= numshortblocks) as usize)]);
 			k += dat.len();
 			let ecc: Vec<u8> = rs.get_remainder(&dat);
@@ -430,7 +430,7 @@ impl QrCode {
 		}
 		
 		// Interleave (not concatenate) the bytes from every block into a single sequence
-		let mut result: Vec<u8> = Vec::with_capacity(rawcodewords);
+		let mut result = Vec::<u8>::with_capacity(rawcodewords);
 		for i in 0 .. shortblocklen + 1 {
 			for j in 0 .. numblocks {
 				// Skip the padding byte in short blocks
@@ -849,7 +849,7 @@ impl QrSegment {
 	
 	// Returns a segment representing the given binary data encoded in byte mode.
 	pub fn make_bytes(data: &[u8]) -> QrSegment {
-		let mut bb: Vec<bool> = Vec::with_capacity(data.len() * 8);
+		let mut bb = Vec::<bool>::with_capacity(data.len() * 8);
 		for b in data {
 			for i in (0 .. 8).rev() {
 				bb.push((b >> i) & 1u8 != 0u8);
@@ -862,7 +862,7 @@ impl QrSegment {
 	// Returns a segment representing the given string of decimal digits encoded in numeric mode.
 	// Panics if the string contains non-digit characters.
 	pub fn make_numeric(text: &[char]) -> QrSegment {
-		let mut bb: Vec<bool> = Vec::with_capacity(text.len() * 3 + (text.len() + 2) / 3);
+		let mut bb = Vec::<bool>::with_capacity(text.len() * 3 + (text.len() + 2) / 3);
 		let mut accumdata: u32 = 0;
 		let mut accumcount: u32 = 0;
 		for c in text {
@@ -886,7 +886,7 @@ impl QrSegment {
 	// The characters allowed are: 0 to 9, A to Z (uppercase only), space, dollar, percent, asterisk,
 	// plus, hyphen, period, slash, colon. Panics if the string contains non-encodable characters.
 	pub fn make_alphanumeric(text: &[char]) -> QrSegment {
-		let mut bb: Vec<bool> = Vec::with_capacity(text.len() * 5 + (text.len() + 1) / 2);
+		let mut bb = Vec::<bool>::with_capacity(text.len() * 5 + (text.len() + 1) / 2);
 		let mut accumdata: u32 = 0;
 		let mut accumcount: u32 = 0;
 		for c in text {
@@ -928,7 +928,7 @@ impl QrSegment {
 	// Returns a segment representing an Extended Channel Interpretation
 	// (ECI) designator with the given assignment value.
 	pub fn make_eci(assignval: u32) -> QrSegment {
-		let mut bb: Vec<bool> = Vec::with_capacity(24);
+		let mut bb = Vec::<bool>::with_capacity(24);
 		if assignval < (1 << 7) {
 			append_bits(&mut bb, assignval, 8);
 		} else if assignval < (1 << 14) {