summaryrefslogtreecommitdiff
path: root/candle-datasets/src/vision/mnist.rs
diff options
context:
space:
mode:
Diffstat (limited to 'candle-datasets/src/vision/mnist.rs')
-rw-r--r--candle-datasets/src/vision/mnist.rs10
1 files changed, 3 insertions, 7 deletions
diff --git a/candle-datasets/src/vision/mnist.rs b/candle-datasets/src/vision/mnist.rs
index 30b0d01f..2dac883c 100644
--- a/candle-datasets/src/vision/mnist.rs
+++ b/candle-datasets/src/vision/mnist.rs
@@ -8,13 +8,9 @@ use parquet::file::reader::{FileReader, SerializedFileReader};
use std::fs::File;
use std::io::{self, BufReader, Read};
-fn read_u32<T: Read>(reader: &mut T) -> Result<u32> {
- let mut b = vec![0u8; 4];
- reader.read_exact(&mut b)?;
- let (result, _) = b.iter().rev().fold((0u64, 1u64), |(s, basis), &x| {
- (s + basis * u64::from(x), basis * 256)
- });
- Ok(result as u32)
+fn read_u32<T: Read>(reader: &mut T) -> std::io::Result<u32> {
+ use byteorder::ReadBytesExt;
+ reader.read_u32::<byteorder::BigEndian>()
}
fn check_magic_number<T: Read>(reader: &mut T, expected: u32) -> Result<()> {