package SZXX

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
type methd =
  1. | Stored
  2. | Deflated
val sexp_of_methd : methd -> Sexplib0.Sexp.t
type descriptor = {
  1. crc : Core_kernel.Int32.t;
  2. compressed_size : int;
  3. uncompressed_size : int;
}
val sexp_of_descriptor : descriptor -> Sexplib0.Sexp.t
type entry = {
  1. version_needed : int;
  2. flags : int;
  3. trailing_descriptor_present : bool;
  4. methd : methd;
  5. descriptor : descriptor;
  6. filename : string;
  7. extra : string;
}
val sexp_of_entry : entry -> Sexplib0.Sexp.t
type 'a action =
  1. | Skip
  2. | String
  3. | Parse of 'a Angstrom.t
type 'a data =
  1. | Skipped
  2. | As_string of string
  3. | Parsed of ('a, string) Core_kernel.result
val stream_files : Lwt_io.input_channel -> (entry -> 'a action) -> (entry * 'a data) Lwt_stream.t

Stream rows from an Lwt_io.input_channel.

SZXX.Zip.stream_files ic callback

ic: The channel to read from

callback: function called on every file found within the zip archive. Returning Skip will skip over the compressed bytes of this file without attempting to uncompress them. Returning String will collect the whole uncompressed file into a single string. Returning Parse will apply an Angstrom parser to the file while it is being uncompressed without having to fully uncompress it first.

The final stream returns all files in the same order they were found in the archive.