From fd60be4b6774aa260426f07d6a648e2796b4109b Mon Sep 17 00:00:00 2001
From: Timofey Solomko
Date: Sun, 15 Jan 2017 14:17:51 +0300
Subject: [PATCH] Updated docs, changelog. Added new subspec.
---
.jazzy.yaml | 4 +-
CHANGELOG.md | 4 +
SWCompression.podspec | 8 +-
Sources/Service/Info-iOS.plist | 2 +-
Sources/Service/Info-tvOS.plist | 2 +-
Sources/Service/Info-watchOS.plist | 2 +-
Sources/Service/Info.plist | 2 +-
docs/Classes.html | 49 +-
docs/Classes/BZip2.html | 10 +-
docs/Classes/Deflate.html | 10 +-
docs/Classes/GzipArchive.html | 10 +-
docs/Classes/LZMA.html | 10 +-
docs/Classes/LZMA2.html | 10 +-
docs/Classes/XZArchive.html | 10 +-
docs/Classes/ZipContainer.html | 187 +++++++
docs/Classes/ZlibArchive.html | 10 +-
docs/Enums.html | 49 +-
docs/Enums/BZip2Error.html | 26 +-
docs/Enums/DeflateError.html | 16 +-
docs/Enums/GzipError.html | 20 +-
docs/Enums/LZMA2Error.html | 18 +-
docs/Enums/LZMAError.html | 22 +-
docs/Enums/XZError.html | 28 +-
docs/Enums/ZipError.html | 499 ++++++++++++++++++
docs/Enums/ZlibError.html | 18 +-
docs/Protocols.html | 12 +-
docs/Protocols/Archive.html | 10 +-
docs/Protocols/DecompressionAlgorithm.html | 10 +-
docs/Structs.html | 12 +-
docs/Structs/GzipHeader.html | 24 +-
.../Structs/GzipHeader/CompressionMethod.html | 10 +-
docs/Structs/GzipHeader/FileSystemType.html | 18 +-
docs/Structs/ZlibHeader.html | 20 +-
docs/Structs/ZlibHeader/CompressionLevel.html | 16 +-
.../Structs/ZlibHeader/CompressionMethod.html | 10 +-
.../Contents/Resources/Documents/Classes.html | 49 +-
.../Resources/Documents/Classes/BZip2.html | 10 +-
.../Resources/Documents/Classes/Deflate.html | 10 +-
.../Documents/Classes/GzipArchive.html | 10 +-
.../Resources/Documents/Classes/LZMA.html | 10 +-
.../Resources/Documents/Classes/LZMA2.html | 10 +-
.../Documents/Classes/XZArchive.html | 10 +-
.../Documents/Classes/ZipContainer.html | 187 +++++++
.../Documents/Classes/ZlibArchive.html | 10 +-
.../Contents/Resources/Documents/Enums.html | 49 +-
.../Resources/Documents/Enums/BZip2Error.html | 26 +-
.../Documents/Enums/DeflateError.html | 16 +-
.../Resources/Documents/Enums/GzipError.html | 20 +-
.../Resources/Documents/Enums/LZMA2Error.html | 18 +-
.../Resources/Documents/Enums/LZMAError.html | 22 +-
.../Resources/Documents/Enums/XZError.html | 28 +-
.../Resources/Documents/Enums/ZipError.html | 499 ++++++++++++++++++
.../Resources/Documents/Enums/ZlibError.html | 18 +-
.../Resources/Documents/Protocols.html | 12 +-
.../Documents/Protocols/Archive.html | 10 +-
.../Protocols/DecompressionAlgorithm.html | 10 +-
.../Contents/Resources/Documents/Structs.html | 12 +-
.../Documents/Structs/GzipHeader.html | 24 +-
.../Structs/GzipHeader/CompressionMethod.html | 10 +-
.../Structs/GzipHeader/FileSystemType.html | 18 +-
.../Documents/Structs/ZlibHeader.html | 20 +-
.../Structs/ZlibHeader/CompressionLevel.html | 16 +-
.../Structs/ZlibHeader/CompressionMethod.html | 10 +-
.../Contents/Resources/Documents/index.html | 9 +-
.../Resources/Documents/undocumented.json | 113 +++-
.../Contents/Resources/docSet.dsidx | Bin 36864 -> 40960 bytes
docs/docsets/SWCompression.tgz | Bin 67492 -> 69849 bytes
docs/index.html | 9 +-
docs/undocumented.json | 113 +++-
69 files changed, 2297 insertions(+), 259 deletions(-)
create mode 100644 docs/Classes/ZipContainer.html
create mode 100644 docs/Enums/ZipError.html
create mode 100644 docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/ZipContainer.html
create mode 100644 docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/ZipError.html
diff --git a/.jazzy.yaml b/.jazzy.yaml
index f068898f..528b2dbc 100644
--- a/.jazzy.yaml
+++ b/.jazzy.yaml
@@ -4,9 +4,9 @@ exclude: Tests/
swift_version: 3.0.2
author: Timofey Solomko
module: SWCompression
-module_version: 2.0.1
+module_version: 2.1.0-test
copyright: '© 2017 Timofey Solomko'
readme: README.md
github_url: https://github.com/tsolomko/SWCompression
-github_file_prefix: https://github.com/tsolomko/SWCompression/tree/v2.0.1
+github_file_prefix: https://github.com/tsolomko/SWCompression/tree/v2.1.0-test
theme: fullwidth
diff --git a/CHANGELOG.md b/CHANGELOG.md
index fa04b739..58dc2b6d 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,4 +1,8 @@
# Changelog
+v2.1.0-test
+----------------
+- ZIP archives opening.
+
v2.0.1
----------------
- Fixed incorrect reading adler32 checksum from zlib archives.
diff --git a/SWCompression.podspec b/SWCompression.podspec
index e9139913..8ff8876c 100644
--- a/SWCompression.podspec
+++ b/SWCompression.podspec
@@ -1,7 +1,7 @@
Pod::Spec.new do |s|
s.name = "SWCompression"
- s.version = "2.0.1"
+ s.version = "2.1.0-test"
s.summary = "Framework with implementations in Swift of different (de)compression algorithms"
s.description = <<-DESC
@@ -65,4 +65,10 @@ Pod::Spec.new do |s|
sp.source_files = 'Sources/XZArchive.swift'
end
+ s.subspec 'ZIP' do |sp|
+ sp.dependency 'SWCompression/Common'
+ sp.dependency 'SWCompression/Deflate'
+ sp.source_files = 'Sources/ZipContainer.swift'
+ end
+
end
diff --git a/Sources/Service/Info-iOS.plist b/Sources/Service/Info-iOS.plist
index 0e27f5f6..a8a026d4 100644
--- a/Sources/Service/Info-iOS.plist
+++ b/Sources/Service/Info-iOS.plist
@@ -15,7 +15,7 @@
CFBundlePackageType
FMWK
CFBundleShortVersionString
- 2.0.1
+ 2.1.0-test
CFBundleVersion
$(CURRENT_PROJECT_VERSION)
NSPrincipalClass
diff --git a/Sources/Service/Info-tvOS.plist b/Sources/Service/Info-tvOS.plist
index 0e27f5f6..a8a026d4 100644
--- a/Sources/Service/Info-tvOS.plist
+++ b/Sources/Service/Info-tvOS.plist
@@ -15,7 +15,7 @@
CFBundlePackageType
FMWK
CFBundleShortVersionString
- 2.0.1
+ 2.1.0-test
CFBundleVersion
$(CURRENT_PROJECT_VERSION)
NSPrincipalClass
diff --git a/Sources/Service/Info-watchOS.plist b/Sources/Service/Info-watchOS.plist
index 0e27f5f6..a8a026d4 100644
--- a/Sources/Service/Info-watchOS.plist
+++ b/Sources/Service/Info-watchOS.plist
@@ -15,7 +15,7 @@
CFBundlePackageType
FMWK
CFBundleShortVersionString
- 2.0.1
+ 2.1.0-test
CFBundleVersion
$(CURRENT_PROJECT_VERSION)
NSPrincipalClass
diff --git a/Sources/Service/Info.plist b/Sources/Service/Info.plist
index be5b94bb..85fca7e8 100644
--- a/Sources/Service/Info.plist
+++ b/Sources/Service/Info.plist
@@ -15,7 +15,7 @@
CFBundlePackageType
FMWK
CFBundleShortVersionString
- 2.0.1
+ 2.1.0-test
CFBundleVersion
$(CURRENT_PROJECT_VERSION)
NSHumanReadableCopyright
diff --git a/docs/Classes.html b/docs/Classes.html
index 1f044acc..10ae726e 100644
--- a/docs/Classes.html
+++ b/docs/Classes.html
@@ -19,7 +19,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -87,6 +90,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -168,7 +174,7 @@
@@ -203,7 +209,34 @@
+
+
+
+
+
+
+
+ -
+
+
@@ -238,7 +271,7 @@
@@ -273,7 +306,7 @@
@@ -308,7 +341,7 @@
@@ -343,7 +376,7 @@
@@ -378,7 +411,7 @@
diff --git a/docs/Classes/BZip2.html b/docs/Classes/BZip2.html
index 36f87696..094d41eb 100644
--- a/docs/Classes/BZip2.html
+++ b/docs/Classes/BZip2.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -220,7 +226,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
diff --git a/docs/Classes/Deflate.html b/docs/Classes/Deflate.html
index b34f4303..0b6805ec 100644
--- a/docs/Classes/Deflate.html
+++ b/docs/Classes/Deflate.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -220,7 +226,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
diff --git a/docs/Classes/GzipArchive.html b/docs/Classes/GzipArchive.html
index a29755f5..1f91413d 100644
--- a/docs/Classes/GzipArchive.html
+++ b/docs/Classes/GzipArchive.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -228,7 +234,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
diff --git a/docs/Classes/LZMA.html b/docs/Classes/LZMA.html
index 3ce2b815..141b261d 100644
--- a/docs/Classes/LZMA.html
+++ b/docs/Classes/LZMA.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -220,7 +226,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
diff --git a/docs/Classes/LZMA2.html b/docs/Classes/LZMA2.html
index 3586a546..e62a4593 100644
--- a/docs/Classes/LZMA2.html
+++ b/docs/Classes/LZMA2.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -220,7 +226,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
diff --git a/docs/Classes/XZArchive.html b/docs/Classes/XZArchive.html
index 9898381e..74a83928 100644
--- a/docs/Classes/XZArchive.html
+++ b/docs/Classes/XZArchive.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -224,7 +230,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
diff --git a/docs/Classes/ZipContainer.html b/docs/Classes/ZipContainer.html
new file mode 100644
index 00000000..c2e80127
--- /dev/null
+++ b/docs/Classes/ZipContainer.html
@@ -0,0 +1,187 @@
+
+
+
+ ZipContainer Class Reference
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ SWCompression Reference
+
+ ZipContainer Class Reference
+
+
+
+
+
+
+
+
+
ZipContainer
+
Undocumented
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/Classes/ZlibArchive.html b/docs/Classes/ZlibArchive.html
index f5ebf934..6e8b3559 100644
--- a/docs/Classes/ZlibArchive.html
+++ b/docs/Classes/ZlibArchive.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -228,7 +234,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
diff --git a/docs/Enums.html b/docs/Enums.html
index e1202ce9..2386c1d0 100644
--- a/docs/Enums.html
+++ b/docs/Enums.html
@@ -19,7 +19,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -87,6 +90,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -177,7 +183,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -224,7 +230,34 @@ Associated value contains already decompressed data.
+
+
+
+
+
+
+
+ -
+
+
@@ -273,7 +306,7 @@ than the repeat length.
@@ -318,7 +351,7 @@ Associated value contains already decompressed data.
@@ -361,7 +394,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -409,7 +442,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -460,7 +493,7 @@ Associated value contains already decompressed data.
diff --git a/docs/Enums/BZip2Error.html b/docs/Enums/BZip2Error.html
index 92157720..a03acbda 100644
--- a/docs/Enums/BZip2Error.html
+++ b/docs/Enums/BZip2Error.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -187,7 +193,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -221,7 +227,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -255,7 +261,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -289,7 +295,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -323,7 +329,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -357,7 +363,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -391,7 +397,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -425,7 +431,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -459,7 +465,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
diff --git a/docs/Enums/DeflateError.html b/docs/Enums/DeflateError.html
index 774a63ad..bbfae443 100644
--- a/docs/Enums/DeflateError.html
+++ b/docs/Enums/DeflateError.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -182,7 +188,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -216,7 +222,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -250,7 +256,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -284,7 +290,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
diff --git a/docs/Enums/GzipError.html b/docs/Enums/GzipError.html
index 06eeb79a..9af23ec1 100644
--- a/docs/Enums/GzipError.html
+++ b/docs/Enums/GzipError.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -186,7 +192,7 @@ Associated value contains already decompressed data.
@@ -220,7 +226,7 @@ Associated value contains already decompressed data.
@@ -254,7 +260,7 @@ Associated value contains already decompressed data.
@@ -288,7 +294,7 @@ Associated value contains already decompressed data.
@@ -323,7 +329,7 @@ Associated value contains already decompressed data.
@@ -357,7 +363,7 @@ Associated value contains already decompressed data.
diff --git a/docs/Enums/LZMA2Error.html b/docs/Enums/LZMA2Error.html
index 1d0ded17..553b80b0 100644
--- a/docs/Enums/LZMA2Error.html
+++ b/docs/Enums/LZMA2Error.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -183,7 +189,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -217,7 +223,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -251,7 +257,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -285,7 +291,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -320,7 +326,7 @@ amount of compressed data read was different from the one stored in LZMA2 packet
diff --git a/docs/Enums/LZMAError.html b/docs/Enums/LZMAError.html
index aed102bd..9000037f 100644
--- a/docs/Enums/LZMAError.html
+++ b/docs/Enums/LZMAError.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -188,7 +194,7 @@ than the repeat length.
@@ -222,7 +228,7 @@ than the repeat length.
@@ -256,7 +262,7 @@ than the repeat length.
@@ -290,7 +296,7 @@ than the repeat length.
@@ -324,7 +330,7 @@ than the repeat length.
@@ -358,7 +364,7 @@ than the repeat length.
@@ -392,7 +398,7 @@ than the repeat length.
diff --git a/docs/Enums/XZError.html b/docs/Enums/XZError.html
index 21dfa7bd..f2e8a775 100644
--- a/docs/Enums/XZError.html
+++ b/docs/Enums/XZError.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -190,7 +196,7 @@ Associated value contains already decompressed data.
@@ -224,7 +230,7 @@ Associated value contains already decompressed data.
@@ -258,7 +264,7 @@ Associated value contains already decompressed data.
@@ -292,7 +298,7 @@ Associated value contains already decompressed data.
@@ -326,7 +332,7 @@ Associated value contains already decompressed data.
@@ -360,7 +366,7 @@ Associated value contains already decompressed data.
@@ -395,7 +401,7 @@ amount of compressed data read was different from the one stored in block header
@@ -430,7 +436,7 @@ Associated value contains already decompressed data.
@@ -464,7 +470,7 @@ Associated value contains already decompressed data.
@@ -498,7 +504,7 @@ Associated value contains already decompressed data.
diff --git a/docs/Enums/ZipError.html b/docs/Enums/ZipError.html
new file mode 100644
index 00000000..b48671cc
--- /dev/null
+++ b/docs/Enums/ZipError.html
@@ -0,0 +1,499 @@
+
+
+
+ ZipError Enum Reference
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ SWCompression Reference
+
+ ZipError Enum Reference
+
+
+
+
+
+
+
+
+
ZipError
+
Undocumented
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/Enums/ZlibError.html b/docs/Enums/ZlibError.html
index de1e9a5d..7ade062b 100644
--- a/docs/Enums/ZlibError.html
+++ b/docs/Enums/ZlibError.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -184,7 +190,7 @@ Associated value contains already decompressed data.
@@ -218,7 +224,7 @@ Associated value contains already decompressed data.
@@ -252,7 +258,7 @@ Associated value contains already decompressed data.
@@ -286,7 +292,7 @@ Associated value contains already decompressed data.
@@ -321,7 +327,7 @@ Associated value contains already decompressed data.
diff --git a/docs/Protocols.html b/docs/Protocols.html
index adef0264..e86933fa 100644
--- a/docs/Protocols.html
+++ b/docs/Protocols.html
@@ -19,7 +19,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -87,6 +90,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -168,7 +174,7 @@
@@ -199,7 +205,7 @@
diff --git a/docs/Protocols/Archive.html b/docs/Protocols/Archive.html
index b9176b3b..74933008 100644
--- a/docs/Protocols/Archive.html
+++ b/docs/Protocols/Archive.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -174,7 +180,7 @@
diff --git a/docs/Protocols/DecompressionAlgorithm.html b/docs/Protocols/DecompressionAlgorithm.html
index 5edf4320..60872709 100644
--- a/docs/Protocols/DecompressionAlgorithm.html
+++ b/docs/Protocols/DecompressionAlgorithm.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -174,7 +180,7 @@
diff --git a/docs/Structs.html b/docs/Structs.html
index 8529635d..a99bf7cc 100644
--- a/docs/Structs.html
+++ b/docs/Structs.html
@@ -19,7 +19,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -87,6 +90,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -168,7 +174,7 @@
@@ -203,7 +209,7 @@
diff --git a/docs/Structs/GzipHeader.html b/docs/Structs/GzipHeader.html
index 6a8090da..38e9a058 100644
--- a/docs/Structs/GzipHeader.html
+++ b/docs/Structs/GzipHeader.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -175,7 +181,7 @@
@@ -206,7 +212,7 @@
@@ -236,7 +242,7 @@
@@ -266,7 +272,7 @@
@@ -296,7 +302,7 @@
@@ -326,7 +332,7 @@
@@ -356,7 +362,7 @@
@@ -421,7 +427,7 @@ it might not be compressed with gzip at all.
diff --git a/docs/Structs/GzipHeader/CompressionMethod.html b/docs/Structs/GzipHeader/CompressionMethod.html
index 8413dd76..b16c4171 100644
--- a/docs/Structs/GzipHeader/CompressionMethod.html
+++ b/docs/Structs/GzipHeader/CompressionMethod.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -174,7 +180,7 @@
diff --git a/docs/Structs/GzipHeader/FileSystemType.html b/docs/Structs/GzipHeader/FileSystemType.html
index 73f0fd1a..baaeb061 100644
--- a/docs/Structs/GzipHeader/FileSystemType.html
+++ b/docs/Structs/GzipHeader/FileSystemType.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -174,7 +180,7 @@
@@ -208,7 +214,7 @@
@@ -242,7 +248,7 @@
@@ -276,7 +282,7 @@
@@ -310,7 +316,7 @@
diff --git a/docs/Structs/ZlibHeader.html b/docs/Structs/ZlibHeader.html
index 5f6bb135..9527010f 100644
--- a/docs/Structs/ZlibHeader.html
+++ b/docs/Structs/ZlibHeader.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -175,7 +181,7 @@
@@ -206,7 +212,7 @@
@@ -236,7 +242,7 @@
@@ -266,7 +272,7 @@
@@ -296,7 +302,7 @@
@@ -361,7 +367,7 @@ it might not be compressed with zlib at all.
diff --git a/docs/Structs/ZlibHeader/CompressionLevel.html b/docs/Structs/ZlibHeader/CompressionLevel.html
index a6b0c64e..3aeda6b2 100644
--- a/docs/Structs/ZlibHeader/CompressionLevel.html
+++ b/docs/Structs/ZlibHeader/CompressionLevel.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -174,7 +180,7 @@
@@ -208,7 +214,7 @@
@@ -242,7 +248,7 @@
@@ -276,7 +282,7 @@
diff --git a/docs/Structs/ZlibHeader/CompressionMethod.html b/docs/Structs/ZlibHeader/CompressionMethod.html
index 192fabd2..32937eb9 100644
--- a/docs/Structs/ZlibHeader/CompressionMethod.html
+++ b/docs/Structs/ZlibHeader/CompressionMethod.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -174,7 +180,7 @@
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes.html
index 1f044acc..10ae726e 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes.html
@@ -19,7 +19,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -87,6 +90,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -168,7 +174,7 @@
@@ -203,7 +209,34 @@
+
+
+
+
+
+
+
+ -
+
+
@@ -238,7 +271,7 @@
@@ -273,7 +306,7 @@
@@ -308,7 +341,7 @@
@@ -343,7 +376,7 @@
@@ -378,7 +411,7 @@
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/BZip2.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/BZip2.html
index 36f87696..094d41eb 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/BZip2.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/BZip2.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -220,7 +226,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/Deflate.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/Deflate.html
index b34f4303..0b6805ec 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/Deflate.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/Deflate.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -220,7 +226,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/GzipArchive.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/GzipArchive.html
index a29755f5..1f91413d 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/GzipArchive.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/GzipArchive.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -228,7 +234,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/LZMA.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/LZMA.html
index 3ce2b815..141b261d 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/LZMA.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/LZMA.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -220,7 +226,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/LZMA2.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/LZMA2.html
index 3586a546..e62a4593 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/LZMA2.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/LZMA2.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -220,7 +226,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/XZArchive.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/XZArchive.html
index 9898381e..74a83928 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/XZArchive.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/XZArchive.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -224,7 +230,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/ZipContainer.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/ZipContainer.html
new file mode 100644
index 00000000..c2e80127
--- /dev/null
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/ZipContainer.html
@@ -0,0 +1,187 @@
+
+
+
+ ZipContainer Class Reference
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ SWCompression Reference
+
+ ZipContainer Class Reference
+
+
+
+
+
+
+
+
+
ZipContainer
+
Undocumented
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/ZlibArchive.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/ZlibArchive.html
index f5ebf934..6e8b3559 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/ZlibArchive.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/ZlibArchive.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -228,7 +234,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums.html
index e1202ce9..2386c1d0 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums.html
@@ -19,7 +19,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -87,6 +90,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -177,7 +183,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -224,7 +230,34 @@ Associated value contains already decompressed data.
+
+
+
+
+
+
+
+ -
+
+
@@ -273,7 +306,7 @@ than the repeat length.
@@ -318,7 +351,7 @@ Associated value contains already decompressed data.
@@ -361,7 +394,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -409,7 +442,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -460,7 +493,7 @@ Associated value contains already decompressed data.
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/BZip2Error.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/BZip2Error.html
index 92157720..a03acbda 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/BZip2Error.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/BZip2Error.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -187,7 +193,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -221,7 +227,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -255,7 +261,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -289,7 +295,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -323,7 +329,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -357,7 +363,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -391,7 +397,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -425,7 +431,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -459,7 +465,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/DeflateError.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/DeflateError.html
index 774a63ad..bbfae443 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/DeflateError.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/DeflateError.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -182,7 +188,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -216,7 +222,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -250,7 +256,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -284,7 +290,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/GzipError.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/GzipError.html
index 06eeb79a..9af23ec1 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/GzipError.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/GzipError.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -186,7 +192,7 @@ Associated value contains already decompressed data.
@@ -220,7 +226,7 @@ Associated value contains already decompressed data.
@@ -254,7 +260,7 @@ Associated value contains already decompressed data.
@@ -288,7 +294,7 @@ Associated value contains already decompressed data.
@@ -323,7 +329,7 @@ Associated value contains already decompressed data.
@@ -357,7 +363,7 @@ Associated value contains already decompressed data.
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/LZMA2Error.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/LZMA2Error.html
index 1d0ded17..553b80b0 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/LZMA2Error.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/LZMA2Error.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -183,7 +189,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -217,7 +223,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -251,7 +257,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -285,7 +291,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
@@ -320,7 +326,7 @@ amount of compressed data read was different from the one stored in LZMA2 packet
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/LZMAError.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/LZMAError.html
index aed102bd..9000037f 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/LZMAError.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/LZMAError.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -188,7 +194,7 @@ than the repeat length.
@@ -222,7 +228,7 @@ than the repeat length.
@@ -256,7 +262,7 @@ than the repeat length.
@@ -290,7 +296,7 @@ than the repeat length.
@@ -324,7 +330,7 @@ than the repeat length.
@@ -358,7 +364,7 @@ than the repeat length.
@@ -392,7 +398,7 @@ than the repeat length.
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/XZError.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/XZError.html
index 21dfa7bd..f2e8a775 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/XZError.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/XZError.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -190,7 +196,7 @@ Associated value contains already decompressed data.
@@ -224,7 +230,7 @@ Associated value contains already decompressed data.
@@ -258,7 +264,7 @@ Associated value contains already decompressed data.
@@ -292,7 +298,7 @@ Associated value contains already decompressed data.
@@ -326,7 +332,7 @@ Associated value contains already decompressed data.
@@ -360,7 +366,7 @@ Associated value contains already decompressed data.
@@ -395,7 +401,7 @@ amount of compressed data read was different from the one stored in block header
@@ -430,7 +436,7 @@ Associated value contains already decompressed data.
@@ -464,7 +470,7 @@ Associated value contains already decompressed data.
@@ -498,7 +504,7 @@ Associated value contains already decompressed data.
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/ZipError.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/ZipError.html
new file mode 100644
index 00000000..b48671cc
--- /dev/null
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/ZipError.html
@@ -0,0 +1,499 @@
+
+
+
+ ZipError Enum Reference
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ SWCompression Reference
+
+ ZipError Enum Reference
+
+
+
+
+
+
+
+
+
ZipError
+
Undocumented
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/ZlibError.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/ZlibError.html
index de1e9a5d..7ade062b 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/ZlibError.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/ZlibError.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -184,7 +190,7 @@ Associated value contains already decompressed data.
@@ -218,7 +224,7 @@ Associated value contains already decompressed data.
@@ -252,7 +258,7 @@ Associated value contains already decompressed data.
@@ -286,7 +292,7 @@ Associated value contains already decompressed data.
@@ -321,7 +327,7 @@ Associated value contains already decompressed data.
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols.html
index adef0264..e86933fa 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols.html
@@ -19,7 +19,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -87,6 +90,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -168,7 +174,7 @@
@@ -199,7 +205,7 @@
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/Archive.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/Archive.html
index b9176b3b..74933008 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/Archive.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/Archive.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -174,7 +180,7 @@
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/DecompressionAlgorithm.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/DecompressionAlgorithm.html
index 5edf4320..60872709 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/DecompressionAlgorithm.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/DecompressionAlgorithm.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -174,7 +180,7 @@
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs.html
index 8529635d..a99bf7cc 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs.html
@@ -19,7 +19,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -87,6 +90,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -168,7 +174,7 @@
@@ -203,7 +209,7 @@
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/GzipHeader.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/GzipHeader.html
index 6a8090da..38e9a058 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/GzipHeader.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/GzipHeader.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -175,7 +181,7 @@
@@ -206,7 +212,7 @@
@@ -236,7 +242,7 @@
@@ -266,7 +272,7 @@
@@ -296,7 +302,7 @@
@@ -326,7 +332,7 @@
@@ -356,7 +362,7 @@
@@ -421,7 +427,7 @@ it might not be compressed with gzip at all.
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/GzipHeader/CompressionMethod.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/GzipHeader/CompressionMethod.html
index 8413dd76..b16c4171 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/GzipHeader/CompressionMethod.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/GzipHeader/CompressionMethod.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -174,7 +180,7 @@
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/GzipHeader/FileSystemType.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/GzipHeader/FileSystemType.html
index 73f0fd1a..baaeb061 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/GzipHeader/FileSystemType.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/GzipHeader/FileSystemType.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -174,7 +180,7 @@
@@ -208,7 +214,7 @@
@@ -242,7 +248,7 @@
@@ -276,7 +282,7 @@
@@ -310,7 +316,7 @@
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/ZlibHeader.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/ZlibHeader.html
index 5f6bb135..9527010f 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/ZlibHeader.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/ZlibHeader.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -175,7 +181,7 @@
@@ -206,7 +212,7 @@
@@ -236,7 +242,7 @@
@@ -266,7 +272,7 @@
@@ -296,7 +302,7 @@
@@ -361,7 +367,7 @@ it might not be compressed with zlib at all.
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/ZlibHeader/CompressionLevel.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/ZlibHeader/CompressionLevel.html
index a6b0c64e..3aeda6b2 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/ZlibHeader/CompressionLevel.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/ZlibHeader/CompressionLevel.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -174,7 +180,7 @@
@@ -208,7 +214,7 @@
@@ -242,7 +248,7 @@
@@ -276,7 +282,7 @@
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/ZlibHeader/CompressionMethod.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/ZlibHeader/CompressionMethod.html
index 192fabd2..32937eb9 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/ZlibHeader/CompressionMethod.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/ZlibHeader/CompressionMethod.html
@@ -20,7 +20,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -88,6 +91,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -174,7 +180,7 @@
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/index.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/index.html
index 2d7203da..26f4a59b 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/index.html
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/index.html
@@ -19,7 +19,7 @@
- (100% documented)
+ (85% documented)
XZArchive
+
+ ZipContainer
+
ZlibArchive
@@ -87,6 +90,9 @@
XZError
+
+ ZipError
+
ZlibError
@@ -291,6 +297,7 @@ so some difference in speed is expected.
Future plans
+- ZIP (mostly according to ISO/IEC 21320 standard).
- Tar unarchiving.
- Deflate compression.
- BZip2 compression.
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/undocumented.json b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/undocumented.json
index 1862018e..5c6627ac 100644
--- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/undocumented.json
+++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/undocumented.json
@@ -1,6 +1,117 @@
{
"warnings": [
-
+ {
+ "file": "/Users/timofeysolomko/Developer/SWCompression/Sources/ZipContainer.swift",
+ "line": 11,
+ "symbol": "ZipError",
+ "symbol_kind": "source.lang.swift.decl.enum",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/timofeysolomko/Developer/SWCompression/Sources/ZipContainer.swift",
+ "line": 12,
+ "symbol": "ZipError.NotFoundCentralDirectoryEnd",
+ "symbol_kind": "source.lang.swift.decl.enumelement",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/timofeysolomko/Developer/SWCompression/Sources/ZipContainer.swift",
+ "line": 13,
+ "symbol": "ZipError.WrongCentralDirectoryDisk",
+ "symbol_kind": "source.lang.swift.decl.enumelement",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/timofeysolomko/Developer/SWCompression/Sources/ZipContainer.swift",
+ "line": 14,
+ "symbol": "ZipError.WrongZip64LocatorSignature",
+ "symbol_kind": "source.lang.swift.decl.enumelement",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/timofeysolomko/Developer/SWCompression/Sources/ZipContainer.swift",
+ "line": 15,
+ "symbol": "ZipError.WrongZip64EndCentralDirectorySignature",
+ "symbol_kind": "source.lang.swift.decl.enumelement",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/timofeysolomko/Developer/SWCompression/Sources/ZipContainer.swift",
+ "line": 16,
+ "symbol": "ZipError.WrongVersion",
+ "symbol_kind": "source.lang.swift.decl.enumelement",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/timofeysolomko/Developer/SWCompression/Sources/ZipContainer.swift",
+ "line": 17,
+ "symbol": "ZipError.WrongCentralDirectoryHeaderSignature",
+ "symbol_kind": "source.lang.swift.decl.enumelement",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/timofeysolomko/Developer/SWCompression/Sources/ZipContainer.swift",
+ "line": 18,
+ "symbol": "ZipError.EncryptionNotSupported",
+ "symbol_kind": "source.lang.swift.decl.enumelement",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/timofeysolomko/Developer/SWCompression/Sources/ZipContainer.swift",
+ "line": 19,
+ "symbol": "ZipError.PatchingNotSupported",
+ "symbol_kind": "source.lang.swift.decl.enumelement",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/timofeysolomko/Developer/SWCompression/Sources/ZipContainer.swift",
+ "line": 20,
+ "symbol": "ZipError.CompressionNotSupported",
+ "symbol_kind": "source.lang.swift.decl.enumelement",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/timofeysolomko/Developer/SWCompression/Sources/ZipContainer.swift",
+ "line": 21,
+ "symbol": "ZipError.WrongLocalHeaderSignature",
+ "symbol_kind": "source.lang.swift.decl.enumelement",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/timofeysolomko/Developer/SWCompression/Sources/ZipContainer.swift",
+ "line": 22,
+ "symbol": "ZipError.WrongLocalHeader",
+ "symbol_kind": "source.lang.swift.decl.enumelement",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/timofeysolomko/Developer/SWCompression/Sources/ZipContainer.swift",
+ "line": 23,
+ "symbol": "ZipError.DataDescriptorNotSupported",
+ "symbol_kind": "source.lang.swift.decl.enumelement",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/timofeysolomko/Developer/SWCompression/Sources/ZipContainer.swift",
+ "line": 24,
+ "symbol": "ZipError.WrongCRC32",
+ "symbol_kind": "source.lang.swift.decl.enumelement",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/timofeysolomko/Developer/SWCompression/Sources/ZipContainer.swift",
+ "line": 27,
+ "symbol": "ZipContainer",
+ "symbol_kind": "source.lang.swift.decl.class",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/timofeysolomko/Developer/SWCompression/Sources/ZipContainer.swift",
+ "line": 29,
+ "symbol": "ZipContainer.open(containerData:)",
+ "symbol_kind": "source.lang.swift.decl.function.method.static",
+ "warning": "undocumented"
+ }
],
"source_directory": "/Users/timofeysolomko/Developer/SWCompression"
}
\ No newline at end of file
diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/docSet.dsidx b/docs/docsets/SWCompression.docset/Contents/Resources/docSet.dsidx
index a12e6151dafc18197160ef7bc328dc8fc43731a7..5c27c374664b77a0756d8f739d5869b926eeb7dc 100644
GIT binary patch
delta 4428
zcmcgwdu&tJ89&GNJ@@)~=>~+vgg6N#G2lmR!lOVb*hvTpNx%d`0vN|}jKQzi4wyU$
zw;f|cloGx_wyLySCw1C1RU6HuRa0S)PHfTy0&NngD=S(j)~(&N@CTI!v^)3ux!5>N
znr21E&hhzO1%NHt~H^h^?&nJrrSpNuyn{tR!vG<;bH
zCjORA&d<4-S~C0;o_&+w71BIFAv
zTy%;Nn?a9a&elrlPJyvkbm-zjzvDY5biIyR8s#NfxltngSG`%OG^YX={kv6(&Z#(1@Wb
z;Gg!c`I*8vOq%q<3f%2Ucn<}_{?16kH4=?RVhP`1p^M(E3!Al=MaJ2-N#YQbhoZGa
zM#6)$&!IV71l*DXUsJ*`HkQ
z;4p-jnn^uVwV(;Z>l4-NJ~LBWwh_a{WCISuj`~dy+4%A11xy*L#!@OsgOp8)5wcD%
zSm?Ajc08I0M8c)_XL&9JTXCDr>e~RXGU0=;(O!q6aIR*XWrA$h3u~~`lkhlwac?XT
zr5Rh=U0=@K>L=S}Ty`EK>&3HoL_*P+FCL#WniV;C`xA^Z*zNGfbJs4|%W)jSn}*<)
z-H1I7Kd2v)D6i8?!XORz^E>%hKN
zaxf=G#&t{j^mA4n5wC|PKnZW=tT$VVt0Zr;?J^#k;rXRzPSB86F+zAba0;ec55s}2
z0a)I4c)nr=X+<3v^bG|)$Hc6+W2g?*!nofIcP$15WnUAlJY{6#B4Nh}lnTDZAo
zIU7qCR7bMG7O^tR$~IxT6h|bS@C3rXm?P+k$ECqXSvKzrsl-BXx1|;jz&kDV_3mX%
zM>mL^m04%1O2?+bfL+BcfjRs?z-*(G3kZcR3?a9
z8caz?VN&hPoj3(
z|5Y*L%>;>rne!~}Q0a=vh4VBOGwLKr6m`kNY!)c4>HBA&S~0WCshw~TB&uWytt&i{
zx}1knA~}6;phEksiWY4px{A0e_Em*d{w>*y=qmXuaWU7KHa@ERgKnSpjW@;a9jLp~N*E}>j^wo{F{Hax9pD@
zZN29Ens)Uk>Nwr1AE-7e?@K7C1%i{&`;27=rjcvUyDZ=MEl)LyBkk^*c=JQCBmDZU=VFiX7whE
z;tZlqaGF@tZ_@L|7=El?Uh2I$swy5
zfNSHmw3C?`H_~2BKViadXqyl_&f$r=hNb%%MD=P8xvJX-uTYbI_{D^gs@5kHqH1-X
z7{I-7=|mXs0mEd1-A#}rTa9gojBIfSdI%D=3LaT|x!^8>D)qv8IAS;$bXETZix
zn$knt2@;i7T4SEZ72-aP(2jQGQFb0$38CGaTW*T!i<)mqD@KNOd_U5dk
f|L&$Ok}~G+A^x8DE6AmjRk&i&QHcqQ{2K6YH^}HW
delta 1358
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