about summary refs log tree commit diff
path: root/src/libextra
diff options
context:
space:
mode:
Diffstat (limited to 'src/libextra')
-rw-r--r--src/libextra/flate.rs129
-rw-r--r--src/libextra/lib.rs1
2 files changed, 0 insertions, 130 deletions
diff --git a/src/libextra/flate.rs b/src/libextra/flate.rs
deleted file mode 100644
index faceb17af47..00000000000
--- a/src/libextra/flate.rs
+++ /dev/null
@@ -1,129 +0,0 @@
-// Copyright 2012 The Rust Project Developers. See the COPYRIGHT
-// file at the top-level directory of this distribution and at
-// http://rust-lang.org/COPYRIGHT.
-//
-// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
-// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
-// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
-// option. This file may not be copied, modified, or distributed
-// except according to those terms.
-
-/*!
-
-Simple compression
-
-*/
-
-#[allow(missing_doc)];
-
-use std::libc::{c_void, size_t, c_int};
-use std::libc;
-use std::vec;
-
-pub mod rustrt {
-    use std::libc::{c_int, c_void, size_t};
-
-    #[link(name = "rustrt", kind = "static")]
-    extern {
-        pub fn tdefl_compress_mem_to_heap(psrc_buf: *c_void,
-                                          src_buf_len: size_t,
-                                          pout_len: *mut size_t,
-                                          flags: c_int)
-                                          -> *c_void;
-
-        pub fn tinfl_decompress_mem_to_heap(psrc_buf: *c_void,
-                                            src_buf_len: size_t,
-                                            pout_len: *mut size_t,
-                                            flags: c_int)
-                                            -> *c_void;
-    }
-}
-
-static LZ_NORM : c_int = 0x80;  // LZ with 128 probes, "normal"
-static TINFL_FLAG_PARSE_ZLIB_HEADER : c_int = 0x1; // parse zlib header and adler32 checksum
-static TDEFL_WRITE_ZLIB_HEADER : c_int = 0x01000; // write zlib header and adler32 checksum
-
-fn deflate_bytes_internal(bytes: &[u8], flags: c_int) -> ~[u8] {
-    unsafe {
-        let mut outsz : size_t = 0;
-        let res = rustrt::tdefl_compress_mem_to_heap(bytes.as_ptr() as *c_void,
-                                                     bytes.len() as size_t,
-                                                     &mut outsz,
-                                                     flags);
-        assert!(res as int != 0);
-            let out = vec::raw::from_buf_raw(res as *u8,
-                                             outsz as uint);
-        libc::free(res as *mut c_void);
-        out
-    }
-}
-
-pub fn deflate_bytes(bytes: &[u8]) -> ~[u8] {
-    deflate_bytes_internal(bytes, LZ_NORM)
-}
-
-pub fn deflate_bytes_zlib(bytes: &[u8]) -> ~[u8] {
-    deflate_bytes_internal(bytes, LZ_NORM | TDEFL_WRITE_ZLIB_HEADER)
-}
-
-fn inflate_bytes_internal(bytes: &[u8], flags: c_int) -> ~[u8] {
-    unsafe {
-        let mut outsz : size_t = 0;
-        let res = rustrt::tinfl_decompress_mem_to_heap(bytes.as_ptr() as *c_void,
-                                                       bytes.len() as size_t,
-                                                       &mut outsz,
-                                                       flags);
-        assert!(res as int != 0);
-        let out = vec::raw::from_buf_raw(res as *u8,
-                                         outsz as uint);
-        libc::free(res as *mut c_void);
-        out
-    }
-}
-
-pub fn inflate_bytes(bytes: &[u8]) -> ~[u8] {
-    inflate_bytes_internal(bytes, 0)
-}
-
-pub fn inflate_bytes_zlib(bytes: &[u8]) -> ~[u8] {
-    inflate_bytes_internal(bytes, TINFL_FLAG_PARSE_ZLIB_HEADER)
-}
-
-#[cfg(test)]
-mod tests {
-    use super::*;
-    use std::rand;
-    use std::rand::Rng;
-
-    #[test]
-    fn test_flate_round_trip() {
-        let mut r = rand::rng();
-        let mut words = ~[];
-        20.times(|| {
-            let range = r.gen_range(1u, 10);
-            words.push(r.gen_vec::<u8>(range));
-        });
-        20.times(|| {
-            let mut input = ~[];
-            2000.times(|| {
-                input.push_all(r.choose(words));
-            });
-            debug!("de/inflate of {} bytes of random word-sequences",
-                   input.len());
-            let cmp = deflate_bytes(input);
-            let out = inflate_bytes(cmp);
-            debug!("{} bytes deflated to {} ({:.1f}% size)",
-                   input.len(), cmp.len(),
-                   100.0 * ((cmp.len() as f64) / (input.len() as f64)));
-            assert_eq!(input, out);
-        });
-    }
-
-    #[test]
-    fn test_zlib_flate() {
-        let bytes = ~[1, 2, 3, 4, 5];
-        let deflated = deflate_bytes(bytes);
-        let inflated = inflate_bytes(deflated);
-        assert_eq!(inflated, bytes);
-    }
-}
diff --git a/src/libextra/lib.rs b/src/libextra/lib.rs
index fc0cc045175..5a4fedd2b2a 100644
--- a/src/libextra/lib.rs
+++ b/src/libextra/lib.rs
@@ -82,7 +82,6 @@ pub mod rational;
 pub mod complex;
 pub mod stats;
 pub mod semver;
-pub mod flate;
 pub mod hex;
 pub mod uuid;