     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77

    #![doc(html_root_url = "http://alexcrichton.com/flate2-rs")]
    #![allow(bad_style)]

    extern crate libc;
    use libc::*;

    pub const MZ_NO_FLUSH: c_int = 0;
    pub const MZ_PARTIAL_FLUSH: c_int = 1;
    pub const MZ_SYNC_FLUSH: c_int = 2;
    pub const MZ_FULL_FLUSH: c_int = 3;
    pub const MZ_FINISH: c_int = 4;
    pub const MZ_BLOCK: c_int = 5;

    pub const MZ_OK: c_int = 0;
    pub const MZ_STREAM_END: c_int = 1;
    pub const MZ_NEED_DICT: c_int = 2;
    pub const MZ_ERRNO: c_int = -1;
    pub const MZ_STREAM_ERROR: c_int = -2;
    pub const MZ_DATA_ERROR: c_int = -3;
    pub const MZ_MEM_ERROR: c_int = -4;
    pub const MZ_BUF_ERROR: c_int = -5;
    pub const MZ_VERSION_ERROR: c_int = -6;
    pub const MZ_PARAM_ERROR: c_int = -10000;

    pub const MZ_DEFLATED: c_int = 8;
    pub const MZ_DEFAULT_WINDOW_BITS: c_int = 15;
    pub const MZ_DEFAULT_STRATEGY: c_int = 0;

    #[repr(C)]
    pub struct mz_stream {
        pub next_in: *const u8,
        pub avail_in: c_uint,
        pub total_in: c_ulong,

        pub next_out: *mut u8,
        pub avail_out: c_uint,
        pub total_out: c_ulong,

        pub msg: *const c_char,
        pub state: *mut mz_internal_state,

        pub zalloc: Option<mz_alloc_func>,
        pub zfree: Option<mz_free_func>,
        pub opaque: *mut c_void,

        pub data_type: c_int,
        pub adler: c_ulong,
        pub reserved: c_ulong,
    }

    pub enum mz_internal_state {}

    pub type mz_alloc_func = extern fn(*mut c_void,
                                       size_t,
                                       size_t) -> *mut c_void;
    pub type mz_free_func = extern fn(*mut c_void, *mut c_void);

    extern {
        pub fn mz_deflateInit2(stream: *mut mz_stream,
                               level: c_int,
                               method: c_int,
                               window_bits: c_int,
                               mem_level: c_int,
                               strategy: c_int)
                               -> c_int;
        pub fn mz_deflate(stream: *mut mz_stream, flush: c_int) -> c_int;
        pub fn mz_deflateEnd(stream: *mut mz_stream) -> c_int;
        pub fn mz_deflateReset(stream: *mut mz_stream) -> c_int;

        pub fn mz_inflateInit2(stream: *mut mz_stream,
                               window_bits: c_int)
                               -> c_int;
        pub fn mz_inflate(stream: *mut mz_stream, flush: c_int) -> c_int;
        pub fn mz_inflateEnd(stream: *mut mz_stream) -> c_int;

        pub fn mz_crc32(crc: c_ulong, ptr: *const u8, len: size_t) -> c_ulong;
    }

# Help

## Keyboard Shortcuts

?
  Show this help dialog
S
  Focus the search field
⇤
  Move up in search results
⇥
  Move down in search results
⏎
  Go to active search result

## Search Tricks

Prefix searches with a type followed by a colon (e.g. `fn:`) to restrict the search to a given type.

Accepted types are: `fn`, `mod`, `struct`, `enum`, `trait`, `type`, `macro`, and `const`.

Search functions by type signature (e.g. `vec -> usize` or `* -> vec`)