forked from mirrors/gecko-dev
		
	 a3a60fed58
			
		
	
	
		a3a60fed58
		
	
	
	
	
		
			
			Includes an upgrade to the miniz_oxide crate (not otherwise used) from 0.6.2 to 0.7.1. Differential Revision: https://phabricator.services.mozilla.com/D190837
		
			
				
	
	
		
			22 lines
		
	
	
	
		
			666 B
		
	
	
	
		
			Rust
		
	
	
	
	
	
			
		
		
	
	
			22 lines
		
	
	
	
		
			666 B
		
	
	
	
		
			Rust
		
	
	
	
	
	
| use flate2::bufread::GzEncoder;
 | |
| use flate2::Compression;
 | |
| use std::fs::File;
 | |
| use std::io;
 | |
| use std::io::prelude::*;
 | |
| use std::io::BufReader;
 | |
| 
 | |
| // Open file and debug print the contents compressed with gzip
 | |
| fn main() {
 | |
|     println!("{:?}", open_hello_world().unwrap());
 | |
| }
 | |
| 
 | |
| // Opens sample file, compresses the contents and returns a Vector or error
 | |
| // File wrapped in a BufReader implements Bufread
 | |
| fn open_hello_world() -> io::Result<Vec<u8>> {
 | |
|     let f = File::open("examples/hello_world.txt")?;
 | |
|     let b = BufReader::new(f);
 | |
|     let mut gz = GzEncoder::new(b, Compression::fast());
 | |
|     let mut buffer = Vec::new();
 | |
|     gz.read_to_end(&mut buffer)?;
 | |
|     Ok(buffer)
 | |
| }
 |