Module ArchiveTraversal

module ArchiveTraversal: sig .. end
Class types and default implementations for "mapper", "iterator", and "folder" over archives.

type archive_entry = 
| Directory_entry of Zip.entry (*Simple Zip entry.*)
| Package_entry of Zip.entry * string (*Zip entry, along with data.*)
| Class_entry of Zip.entry * string (*Zip entry, along with data.*)
| Bare_entry of Zip.entry * string (*Zip entry, along with data.*)
The type of archive entries (either simple Zip entry, or with associated data as a string).
class type archive_mapper = object .. end
This class type defines a "mapper", instances being used as "functions" to transform archives.
class default_archive_mapper : Zip.in_file -> archive_mapper
The default "mapper", that encodes the identity over archives.
class type archive_iterator = object .. end
This class type defines an "iterator", instances being used as "functions" to transform archives.
class default_archive_iterator : Zip.in_file -> archive_iterator
The default "iterator", that does nothing.
class type archive_folder = object .. end
This class type defines a "folder", instances being used as "functions" to transform archives.
class default_archive_folder : Zip.in_file -> archive_folder
The default "folder", that encodes the identity over archives.
val map : archive_mapper -> Zip.in_file -> string -> Zip.out_file
Applies the "mapper" to the zip file, the passed string being the name of the output file to create.
val iter : archive_iterator -> Zip.in_file -> unit
Applies the "iterator" to the zip file.
val fold : archive_folder ->
Zip.in_file -> archive_folder
Applies the "folder" to the zip file.
val map_file : (Zip.in_file -> archive_mapper) -> string -> string -> unit
map_file m i o applies the "mapper" m to the zip file whose name is i, producing zip file o.
val iter_file : (Zip.in_file -> archive_iterator) -> string -> unit
iter_file i n applies the "iterator" i to the zip file whose name is n.
val fold_file : (Zip.in_file -> archive_folder) ->
string -> archive_folder
fold_file f n applies the "folder" f to the zip file whose name is n.