From a432bcd4b77a9ea6d9aba47b44369d8021b4f1f6 Mon Sep 17 00:00:00 2001 From: Timofey Solomko Date: Tue, 3 Oct 2017 22:24:56 +0300 Subject: [PATCH] Prepare for 3.4.0 release --- .jazzy.yaml | 4 +- CHANGELOG.md | 13 +- SWCompression.podspec | 2 +- Sources/Service/Info.plist | 2 +- docs/Archives.html | 12 +- docs/Classes/BZip2.html | 83 ++++++++++-- docs/Classes/BZip2/BlockSize.html | 118 +++++++++++++++--- docs/Classes/Deflate.html | 8 +- docs/Classes/GzipArchive.html | 10 +- docs/Classes/GzipArchive/Member.html | 6 +- docs/Classes/LZMA.html | 4 +- docs/Classes/LZMA2.html | 4 +- docs/Classes/SevenZipContainer.html | 6 +- docs/Classes/SevenZipEntry.html | 20 +-- docs/Classes/TarContainer.html | 4 +- docs/Classes/TarEntry.html | 42 +++---- docs/Classes/TarEntry/EntryType.html | 24 ++-- docs/Classes/XZArchive.html | 6 +- docs/Classes/ZipContainer.html | 4 +- docs/Classes/ZipEntry.html | 22 ++-- docs/Classes/ZlibArchive.html | 6 +- docs/Compression.html | 14 +-- docs/Containers.html | 16 +-- docs/Enums/BZip2Error.html | 22 ++-- docs/Enums/DeflateError.html | 10 +- docs/Enums/GzipError.html | 16 +-- docs/Enums/LZMA2Error.html | 12 +- docs/Enums/LZMAError.html | 18 +-- docs/Enums/SevenZipError.html | 26 ++-- docs/Enums/TarError.html | 14 +-- docs/Enums/XZError.html | 22 ++-- docs/Enums/ZipError.html | 24 ++-- docs/Enums/ZlibError.html | 12 +- docs/Errors.html | 22 ++-- docs/Protocols.html | 12 +- docs/Protocols/Archive.html | 4 +- docs/Protocols/CompressionAlgorithm.html | 4 +- docs/Protocols/Container.html | 4 +- docs/Protocols/ContainerEntry.html | 16 +-- docs/Protocols/DecompressionAlgorithm.html | 4 +- docs/Structs/GzipHeader.html | 20 +-- .../Structs/GzipHeader/CompressionMethod.html | 4 +- docs/Structs/GzipHeader/FileSystemType.html | 12 +- docs/Structs/SevenZipEntryInfo.html | 36 +++--- .../SevenZipEntryInfo/DosAttributes.html | 18 +-- .../SevenZipEntryInfo/Permissions.html | 30 ++--- docs/Structs/SevenZipEntryInfo/UnixType.html | 16 +-- docs/Structs/ZlibHeader.html | 14 +-- docs/Structs/ZlibHeader/CompressionLevel.html | 10 +- .../Structs/ZlibHeader/CompressionMethod.html | 4 +- docs/badge.svg | 2 +- .../Resources/Documents/Archives.html | 12 +- .../Resources/Documents/Classes/BZip2.html | 83 ++++++++++-- .../Documents/Classes/BZip2/BlockSize.html | 118 +++++++++++++++--- .../Resources/Documents/Classes/Deflate.html | 8 +- .../Documents/Classes/GzipArchive.html | 10 +- .../Documents/Classes/GzipArchive/Member.html | 6 +- .../Resources/Documents/Classes/LZMA.html | 4 +- .../Resources/Documents/Classes/LZMA2.html | 4 +- .../Documents/Classes/SevenZipContainer.html | 6 +- .../Documents/Classes/SevenZipEntry.html | 20 +-- .../Documents/Classes/TarContainer.html | 4 +- .../Resources/Documents/Classes/TarEntry.html | 42 +++---- .../Documents/Classes/TarEntry/EntryType.html | 24 ++-- .../Documents/Classes/XZArchive.html | 6 +- .../Documents/Classes/ZipContainer.html | 4 +- .../Resources/Documents/Classes/ZipEntry.html | 22 ++-- .../Documents/Classes/ZlibArchive.html | 6 +- .../Resources/Documents/Compression.html | 14 +-- .../Resources/Documents/Containers.html | 16 +-- .../Resources/Documents/Enums/BZip2Error.html | 22 ++-- .../Documents/Enums/DeflateError.html | 10 +- .../Resources/Documents/Enums/GzipError.html | 16 +-- .../Resources/Documents/Enums/LZMA2Error.html | 12 +- .../Resources/Documents/Enums/LZMAError.html | 18 +-- .../Documents/Enums/SevenZipError.html | 26 ++-- .../Resources/Documents/Enums/TarError.html | 14 +-- .../Resources/Documents/Enums/XZError.html | 22 ++-- .../Resources/Documents/Enums/ZipError.html | 24 ++-- .../Resources/Documents/Enums/ZlibError.html | 12 +- .../Contents/Resources/Documents/Errors.html | 22 ++-- .../Resources/Documents/Protocols.html | 12 +- .../Documents/Protocols/Archive.html | 4 +- .../Protocols/CompressionAlgorithm.html | 4 +- .../Documents/Protocols/Container.html | 4 +- .../Documents/Protocols/ContainerEntry.html | 16 +-- .../Protocols/DecompressionAlgorithm.html | 4 +- .../Documents/Structs/GzipHeader.html | 20 +-- .../Structs/GzipHeader/CompressionMethod.html | 4 +- .../Structs/GzipHeader/FileSystemType.html | 12 +- .../Documents/Structs/SevenZipEntryInfo.html | 36 +++--- .../SevenZipEntryInfo/DosAttributes.html | 18 +-- .../SevenZipEntryInfo/Permissions.html | 30 ++--- .../Structs/SevenZipEntryInfo/UnixType.html | 16 +-- .../Documents/Structs/ZlibHeader.html | 14 +-- .../Structs/ZlibHeader/CompressionLevel.html | 10 +- .../Structs/ZlibHeader/CompressionMethod.html | 4 +- .../Contents/Resources/Documents/index.html | 11 +- .../Contents/Resources/Documents/search.json | 2 +- .../Contents/Resources/docSet.dsidx | Bin 81920 -> 81920 bytes docs/docsets/SWCompression.tgz | Bin 124295 -> 124588 bytes docs/index.html | 11 +- docs/search.json | 2 +- docs/undocumented.json | 78 +----------- 104 files changed, 974 insertions(+), 783 deletions(-) diff --git a/.jazzy.yaml b/.jazzy.yaml index ce7c9463..480c9fde 100644 --- a/.jazzy.yaml +++ b/.jazzy.yaml @@ -3,11 +3,11 @@ clean: true exclude: Tests/ author: Timofey Solomko module: SWCompression -module_version: 3.4.0-test.2 +module_version: 3.4.0 copyright: '© 2017 Timofey Solomko' readme: README.md github_url: https://github.com/tsolomko/SWCompression -github_file_prefix: https://github.com/tsolomko/SWCompression/tree/v3.4.0-test.2 +github_file_prefix: https://github.com/tsolomko/SWCompression/tree/v3.4.0 theme: fullwidth custom_categories: diff --git a/CHANGELOG.md b/CHANGELOG.md index 27418dc0..8df77fe8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,14 +1,13 @@ # Changelog -## 3.4.0-test.2 +## 3.4.0 -- Fix compile issues on some platforms. - -## 3.4.0-test - -- Added BZip2 compression. +- Added support for BZip2 compression. - Added `CompressionAlgorithm` protocol. -- Deflate now conforms to `CompressionAlgorithm` protocol. +- `Deflate` now conforms to `CompressionAlgorithm` protocol (as well as `BZip2`). +- `Deflate.compress(data:)` no longer throws. +- `ZlibArchive.archive(data:)` no longer throws. +- Fixed crash in some rare cases for corrupted BZip2 archives (but throws `BZip2Error` instead). ## 3.3.1 diff --git a/SWCompression.podspec b/SWCompression.podspec index 6c01476b..9f418406 100644 --- a/SWCompression.podspec +++ b/SWCompression.podspec @@ -1,7 +1,7 @@ Pod::Spec.new do |s| s.name = "SWCompression" - s.version = "3.4.0-test.2" + s.version = "3.4.0" s.summary = "Framework with implementations in Swift of different (de)compression algorithms" s.description = <<-DESC diff --git a/Sources/Service/Info.plist b/Sources/Service/Info.plist index 1f8cb97a..ebeaf784 100644 --- a/Sources/Service/Info.plist +++ b/Sources/Service/Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 3.4.0-test.2 + 3.4.0 CFBundleVersion $(CURRENT_PROJECT_VERSION) NSHumanReadableCopyright diff --git a/docs/Archives.html b/docs/Archives.html index ff3f983b..1eb81f45 100644 --- a/docs/Archives.html +++ b/docs/Archives.html @@ -22,7 +22,7 @@ SWCompression Docs - (96% documented) + (100% documented)

@@ -238,7 +238,7 @@

- Show on GitHub + Show on GitHub
@@ -273,7 +273,7 @@
- Show on GitHub + Show on GitHub
@@ -308,7 +308,7 @@
- Show on GitHub + Show on GitHub
@@ -343,7 +343,7 @@
- Show on GitHub + Show on GitHub
@@ -378,7 +378,7 @@
- Show on GitHub + Show on GitHub
diff --git a/docs/Classes/BZip2.html b/docs/Classes/BZip2.html index aea8fc0b..026d14b6 100644 --- a/docs/Classes/BZip2.html +++ b/docs/Classes/BZip2.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

@@ -211,7 +211,7 @@ -

Provides decompression function for BZip2 algorithm.

+

Provides functions for compression and decompression for BZip2 algorithm.

@@ -276,7 +276,7 @@ It may indicate that either data is damaged or it might not be compressed with B

Decompressed data.

- Show on GitHub + Show on GitHub
@@ -288,9 +288,9 @@ It may indicate that either data is damaged or it might not be compressed with B
  • - + - compress(data:) + compress(data:)
    @@ -298,7 +298,14 @@ It may indicate that either data is damaged or it might not be compressed with B
    - +

    Compresses data with BZip2 algortihm.

    +
    +

    Note

    +

    Input data will be split into blocks of size 100 KB. +Use BZip2.compress(data:blockSize:) function to specify size of a block.

    + +
    +

    Declaration

    @@ -308,8 +315,27 @@ It may indicate that either data is damaged or it might not be compressed with B
    +
    +

    Parameters

    + + + + + + + +
    + + data + + +
    +

    Data to compress.

    +
    +
    +
    @@ -327,19 +353,50 @@ It may indicate that either data is damaged or it might not be compressed with B
    -

    Undocumented

    +

    Compresses data with BZip2 algortihm, splitting data into blocks of specified blockSize.

    Declaration

    Swift

    -
    public class BZip2: DecompressionAlgorithm
    +
    public static func compress(data: Data, blockSize: BlockSize) -> Data
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + data + + +
    +

    Data to compress.

    +
    +
    + + blockSize + + +
    +

    Size of blocks in which data will be split.

    +
    +
    +
    @@ -361,7 +418,7 @@ It may indicate that either data is damaged or it might not be compressed with B
    -

    Undocumented

    +

    Represents size of blocks in which data is split during BZip2 compression.

    See more
    @@ -369,12 +426,12 @@ It may indicate that either data is damaged or it might not be compressed with B

    Declaration

    Swift

    -
    public class BZip2: DecompressionAlgorithm
    +
    public enum BlockSize: Int
    diff --git a/docs/Classes/BZip2/BlockSize.html b/docs/Classes/BZip2/BlockSize.html index 8f2c216d..a3e256bd 100644 --- a/docs/Classes/BZip2/BlockSize.html +++ b/docs/Classes/BZip2/BlockSize.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -205,7 +205,13 @@

    BlockSize

    -

    Undocumented

    +
    +
    +
    public enum BlockSize: Int
    + +
    +
    +

    Represents size of blocks in which data is split during BZip2 compression.

    @@ -227,11 +233,19 @@
    -

    Undocumented

    +

    100 KB.

    +
    +

    Declaration

    +
    +

    Swift

    +
    case one = 1
    + +
    +
    @@ -253,11 +267,19 @@
    -

    Undocumented

    +

    200 KB.

    +
    +

    Declaration

    +
    +

    Swift

    +
    case two = 2
    + +
    +
    @@ -279,11 +301,19 @@
    -

    Undocumented

    +

    300 KB.

    +
    +

    Declaration

    +
    +

    Swift

    +
    case three = 3
    + +
    +
    @@ -305,11 +335,19 @@
    -

    Undocumented

    +

    400 KB.

    +
    +

    Declaration

    +
    +

    Swift

    +
    case four = 4
    + +
    +
    @@ -331,11 +369,19 @@
    -

    Undocumented

    +

    500 KB.

    +
    +

    Declaration

    +
    +

    Swift

    +
    case five = 5
    + +
    +
    @@ -357,11 +403,19 @@
    -

    Undocumented

    +

    600 KB.

    +
    +

    Declaration

    +
    +

    Swift

    +
    case six = 6
    + +
    +
    @@ -383,11 +437,19 @@
    -

    Undocumented

    +

    700 KB.

    +
    +

    Declaration

    +
    +

    Swift

    +
    case seven = 7
    + +
    +
    @@ -409,11 +471,19 @@
    -

    Undocumented

    +

    800 KB.

    +
    +

    Declaration

    +
    +

    Swift

    +
    case eight = 8
    + +
    +
    @@ -435,11 +505,19 @@
    -

    Undocumented

    +

    900 KB.

    +
    +

    Declaration

    +
    +

    Swift

    +
    case nine = 9
    + +
    +
    diff --git a/docs/Classes/Deflate.html b/docs/Classes/Deflate.html index ef688612..f303660b 100644 --- a/docs/Classes/Deflate.html +++ b/docs/Classes/Deflate.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -211,7 +211,7 @@ -

    Provides compression and decompression functions for Deflate algorithm.

    +

    Provides functions for compression and decompression for Deflate algorithm.

    @@ -281,7 +281,7 @@ It may indicate that either data is damaged or it might not be compressed with D

    Decompressed data.

    @@ -343,7 +343,7 @@ then static Huffman block will be created.

    diff --git a/docs/Classes/GzipArchive.html b/docs/Classes/GzipArchive.html index 301cc12d..fc132c35 100644 --- a/docs/Classes/GzipArchive.html +++ b/docs/Classes/GzipArchive.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@

    @@ -315,7 +315,7 @@ it might not be archived with GZip or compressed with Deflate at all.

    Unarchived data.

    @@ -384,7 +384,7 @@ it might not be archived with GZip or compressed with Deflate at all.

    Unarchived data.

    @@ -527,7 +527,7 @@ then - Show on GitHub + Show on GitHub diff --git a/docs/Classes/GzipArchive/Member.html b/docs/Classes/GzipArchive/Member.html index 705a1306..269655ac 100644 --- a/docs/Classes/GzipArchive/Member.html +++ b/docs/Classes/GzipArchive/Member.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    @@ -275,7 +275,7 @@ diff --git a/docs/Classes/LZMA.html b/docs/Classes/LZMA.html index bcbf2602..61c7b6ae 100644 --- a/docs/Classes/LZMA.html +++ b/docs/Classes/LZMA.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -276,7 +276,7 @@ It may indicate that either data is damaged or it might not be compressed with L

    Decompressed data.

    diff --git a/docs/Classes/LZMA2.html b/docs/Classes/LZMA2.html index 6f860229..40e4ee24 100644 --- a/docs/Classes/LZMA2.html +++ b/docs/Classes/LZMA2.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -276,7 +276,7 @@ It may indicate that either data is damaged or it might not be compressed with L

    Decompressed data.

    diff --git a/docs/Classes/SevenZipContainer.html b/docs/Classes/SevenZipContainer.html index a0a39ad6..3f4777c3 100644 --- a/docs/Classes/SevenZipContainer.html +++ b/docs/Classes/SevenZipContainer.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -283,7 +283,7 @@ It may indicate that either container is damaged or it might not be 7-Zip contai

    Array of SevenZipEntry as an array of ContainerEntry.

    @@ -353,7 +353,7 @@ It may indicate that either container is damaged or it might not be 7-Zip contai

    Array of SevenZipEntryInfo.

    diff --git a/docs/Classes/SevenZipEntry.html b/docs/Classes/SevenZipEntry.html index 8ad0111f..b2a0168b 100644 --- a/docs/Classes/SevenZipEntry.html +++ b/docs/Classes/SevenZipEntry.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    @@ -275,7 +275,7 @@ @@ -305,7 +305,7 @@ @@ -335,7 +335,7 @@ @@ -365,7 +365,7 @@ @@ -395,7 +395,7 @@ @@ -438,7 +438,7 @@ @@ -469,7 +469,7 @@ It might not be depending on the content of the container.

    @@ -504,7 +504,7 @@ It might not be depending on the content of the container.

    diff --git a/docs/Classes/TarContainer.html b/docs/Classes/TarContainer.html index c3c5f21c..a7b7656b 100644 --- a/docs/Classes/TarContainer.html +++ b/docs/Classes/TarContainer.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -281,7 +281,7 @@ but one SHOULD NOT rely on any particular order.

    Array of TarEntry as an array of ContainerEntry.

    diff --git a/docs/Classes/TarEntry.html b/docs/Classes/TarEntry.html index e7905662..bc33e159 100644 --- a/docs/Classes/TarEntry.html +++ b/docs/Classes/TarEntry.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@

    @@ -276,7 +276,7 @@ @@ -306,7 +306,7 @@ @@ -336,7 +336,7 @@ @@ -382,7 +382,7 @@ @@ -412,7 +412,7 @@ @@ -442,7 +442,7 @@ @@ -472,7 +472,7 @@ @@ -502,7 +502,7 @@ @@ -532,7 +532,7 @@ @@ -562,7 +562,7 @@ @@ -592,7 +592,7 @@ @@ -622,7 +622,7 @@ @@ -652,7 +652,7 @@ @@ -682,7 +682,7 @@ @@ -712,7 +712,7 @@ @@ -742,7 +742,7 @@ @@ -772,7 +772,7 @@ @@ -802,7 +802,7 @@ @@ -832,7 +832,7 @@ diff --git a/docs/Classes/TarEntry/EntryType.html b/docs/Classes/TarEntry/EntryType.html index 118300a6..400f1015 100644 --- a/docs/Classes/TarEntry/EntryType.html +++ b/docs/Classes/TarEntry/EntryType.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    @@ -279,7 +279,7 @@ @@ -313,7 +313,7 @@ @@ -347,7 +347,7 @@ @@ -381,7 +381,7 @@ @@ -415,7 +415,7 @@ @@ -449,7 +449,7 @@ @@ -483,7 +483,7 @@ @@ -517,7 +517,7 @@ @@ -551,7 +551,7 @@ @@ -585,7 +585,7 @@ diff --git a/docs/Classes/XZArchive.html b/docs/Classes/XZArchive.html index e3511b58..e19c6771 100644 --- a/docs/Classes/XZArchive.html +++ b/docs/Classes/XZArchive.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -281,7 +281,7 @@ It may indicate that either the archive is damaged or it might not be compressed

    Unarchived data.

    @@ -349,7 +349,7 @@ it might not be archived with XZ or LZMA(2) at all.

    Unarchived data.

    diff --git a/docs/Classes/ZipContainer.html b/docs/Classes/ZipContainer.html index 5aabc9ef..8deed83e 100644 --- a/docs/Classes/ZipContainer.html +++ b/docs/Classes/ZipContainer.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -283,7 +283,7 @@ It may indicate that either container is damaged or it might not be ZIP containe

    Array of ZipEntry as an array of ContainerEntry.

    diff --git a/docs/Classes/ZipEntry.html b/docs/Classes/ZipEntry.html index aa181fd2..cf9df206 100644 --- a/docs/Classes/ZipEntry.html +++ b/docs/Classes/ZipEntry.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    @@ -275,7 +275,7 @@ @@ -305,7 +305,7 @@ @@ -335,7 +335,7 @@ @@ -367,7 +367,7 @@ Otherwise, it is true if size of data is 0 AND last character of entry’s n @@ -397,7 +397,7 @@ Otherwise, it is true if size of data is 0 AND last character of entry’s n @@ -427,7 +427,7 @@ Otherwise, it is true if size of data is 0 AND last character of entry’s n @@ -457,7 +457,7 @@ Otherwise, it is true if size of data is 0 AND last character of entry’s n @@ -497,7 +497,7 @@ Otherwise, it is true if size of data is 0 AND last character of entry’s n @@ -533,7 +533,7 @@ depending on the type of the problem. An error can indicate that container is da diff --git a/docs/Classes/ZlibArchive.html b/docs/Classes/ZlibArchive.html index 281cd732..85b8e787 100644 --- a/docs/Classes/ZlibArchive.html +++ b/docs/Classes/ZlibArchive.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -284,7 +284,7 @@ it might not be archived with Zlib or compressed with Deflate at all.

    Unarchived data.

    @@ -346,7 +346,7 @@ It will also be specified in archive’s header that the compressor used the

    Resulting archive’s data.

    diff --git a/docs/Compression.html b/docs/Compression.html index f6f6369a..8f8007bd 100644 --- a/docs/Compression.html +++ b/docs/Compression.html @@ -22,7 +22,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -225,7 +225,7 @@

    -

    Provides decompression function for BZip2 algorithm.

    +

    Provides functions for compression and decompression for BZip2 algorithm.

    See more
    @@ -238,7 +238,7 @@
    @@ -260,7 +260,7 @@
    -

    Provides compression and decompression functions for Deflate algorithm.

    +

    Provides functions for compression and decompression for Deflate algorithm.

    See more
    @@ -273,7 +273,7 @@
    @@ -308,7 +308,7 @@ @@ -343,7 +343,7 @@ diff --git a/docs/Containers.html b/docs/Containers.html index fd146cb0..70c6d6b1 100644 --- a/docs/Containers.html +++ b/docs/Containers.html @@ -22,7 +22,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -238,7 +238,7 @@

    @@ -273,7 +273,7 @@ @@ -308,7 +308,7 @@ @@ -343,7 +343,7 @@ @@ -378,7 +378,7 @@ @@ -413,7 +413,7 @@ @@ -448,7 +448,7 @@ diff --git a/docs/Enums/BZip2Error.html b/docs/Enums/BZip2Error.html index b81debfd..5b80384a 100644 --- a/docs/Enums/BZip2Error.html +++ b/docs/Enums/BZip2Error.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@ It may indicate that either data is damaged or it might not be compressed with B

    @@ -280,7 +280,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -314,7 +314,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -348,7 +348,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -382,7 +382,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -416,7 +416,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -450,7 +450,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -484,7 +484,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -518,7 +518,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -553,7 +553,7 @@ Associated value of the error contains already decompressed data.

    diff --git a/docs/Enums/DeflateError.html b/docs/Enums/DeflateError.html index 443ee8d5..6e25c524 100644 --- a/docs/Enums/DeflateError.html +++ b/docs/Enums/DeflateError.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@ It may indicate that either the data is damaged or it might not be compressed wi

    @@ -280,7 +280,7 @@ It may indicate that either the data is damaged or it might not be compressed wi @@ -314,7 +314,7 @@ It may indicate that either the data is damaged or it might not be compressed wi @@ -348,7 +348,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 a6de82f2..74a6ccf3 100644 --- a/docs/Enums/GzipError.html +++ b/docs/Enums/GzipError.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@ It may indicate that either archive is damaged or it might not be GZip archive a

    @@ -280,7 +280,7 @@ It may indicate that either archive is damaged or it might not be GZip archive a @@ -315,7 +315,7 @@ that archive uses a newer version of GZip format.

    @@ -349,7 +349,7 @@ that archive uses a newer version of GZip format.

    @@ -384,7 +384,7 @@ Associated value of the error contains already decompressed data.

    @@ -418,7 +418,7 @@ Associated value of the error contains already decompressed data.

    @@ -452,7 +452,7 @@ Associated value of the error contains already decompressed data.

    diff --git a/docs/Enums/LZMA2Error.html b/docs/Enums/LZMA2Error.html index 9b39f623..d7f667b7 100644 --- a/docs/Enums/LZMA2Error.html +++ b/docs/Enums/LZMA2Error.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@ It may indicate that either data is damaged or it might not be compressed with L

    @@ -280,7 +280,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -314,7 +314,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -348,7 +348,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -383,7 +383,7 @@ amount of compressed data read is different from the one stored in LZMA2 packet. diff --git a/docs/Enums/LZMAError.html b/docs/Enums/LZMAError.html index 2ae4cfa8..4e2b7f79 100644 --- a/docs/Enums/LZMAError.html +++ b/docs/Enums/LZMAError.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@ It may indicate that either data is damaged or it might not be compressed with L

    @@ -280,7 +280,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -314,7 +314,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -348,7 +348,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -382,7 +382,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -416,7 +416,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -450,7 +450,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -484,7 +484,7 @@ It may indicate that either data is damaged or it might not be compressed with L diff --git a/docs/Enums/SevenZipError.html b/docs/Enums/SevenZipError.html index 104b0cc2..0380da5e 100644 --- a/docs/Enums/SevenZipError.html +++ b/docs/Enums/SevenZipError.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@ It may indicate that either container is damaged or it might not be 7-Zip contai

    @@ -280,7 +280,7 @@ It may indicate that either container is damaged or it might not be 7-Zip contai @@ -315,7 +315,7 @@ or one of the container’s strucutures is incorrect.

    @@ -350,7 +350,7 @@ or one of the container’s strucutures is incorrect.

    @@ -384,7 +384,7 @@ or one of the container’s strucutures is incorrect.

    @@ -418,7 +418,7 @@ or one of the container’s strucutures is incorrect.

    @@ -452,7 +452,7 @@ or one of the container’s strucutures is incorrect.

    @@ -486,7 +486,7 @@ or one of the container’s strucutures is incorrect.

    @@ -520,7 +520,7 @@ or one of the container’s strucutures is incorrect.

    @@ -554,7 +554,7 @@ or one of the container’s strucutures is incorrect.

    @@ -588,7 +588,7 @@ or one of the container’s strucutures is incorrect.

    @@ -623,7 +623,7 @@ no internal structure was found where it must be.

    diff --git a/docs/Enums/TarError.html b/docs/Enums/TarError.html index 45db134c..25fe722d 100644 --- a/docs/Enums/TarError.html +++ b/docs/Enums/TarError.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@ It may indicate that either container is damaged or it might not be TAR containe

    @@ -280,7 +280,7 @@ It may indicate that either container is damaged or it might not be TAR containe @@ -314,7 +314,7 @@ It may indicate that either container is damaged or it might not be TAR containe @@ -348,7 +348,7 @@ It may indicate that either container is damaged or it might not be TAR containe @@ -382,7 +382,7 @@ It may indicate that either container is damaged or it might not be TAR containe @@ -416,7 +416,7 @@ It may indicate that either container is damaged or it might not be TAR containe diff --git a/docs/Enums/XZError.html b/docs/Enums/XZError.html index 06e25e40..9afe0b78 100644 --- a/docs/Enums/XZError.html +++ b/docs/Enums/XZError.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@ It may indicate that either archive is damaged or it might not be XZ archive at

    @@ -280,7 +280,7 @@ It may indicate that either archive is damaged or it might not be XZ archive at @@ -315,7 +315,7 @@ that archive uses a newer version of XZ format.

    @@ -349,7 +349,7 @@ that archive uses a newer version of XZ format.

    @@ -383,7 +383,7 @@ that archive uses a newer version of XZ format.

    @@ -417,7 +417,7 @@ that archive uses a newer version of XZ format.

    @@ -452,7 +452,7 @@ amount of compressed data read is different from the one stored in archive.

    @@ -487,7 +487,7 @@ Associated value of the error contains already decompressed data.

    @@ -521,7 +521,7 @@ Associated value of the error contains already decompressed data.

    @@ -555,7 +555,7 @@ Associated value of the error contains already decompressed data.

    diff --git a/docs/Enums/ZipError.html b/docs/Enums/ZipError.html index 8715e4cb..08ac5485 100644 --- a/docs/Enums/ZipError.html +++ b/docs/Enums/ZipError.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@ It may indicate that either container is damaged or it might not be ZIP containe

    @@ -280,7 +280,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -314,7 +314,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -348,7 +348,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -382,7 +382,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -416,7 +416,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -450,7 +450,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -484,7 +484,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -518,7 +518,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -553,7 +553,7 @@ Associated value of the error contains entry’s data.

    @@ -587,7 +587,7 @@ Associated value of the error contains entry’s data.

    diff --git a/docs/Enums/ZlibError.html b/docs/Enums/ZlibError.html index 07f2de75..70456110 100644 --- a/docs/Enums/ZlibError.html +++ b/docs/Enums/ZlibError.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@ It may indicate that either archive is damaged or it might not be Zlib archive a

    @@ -280,7 +280,7 @@ It may indicate that either archive is damaged or it might not be Zlib archive a @@ -314,7 +314,7 @@ It may indicate that either archive is damaged or it might not be Zlib archive a @@ -348,7 +348,7 @@ It may indicate that either archive is damaged or it might not be Zlib archive a @@ -383,7 +383,7 @@ Associated value of the error contains already decompressed data.

    diff --git a/docs/Errors.html b/docs/Errors.html index 90af0fb7..88802d2c 100644 --- a/docs/Errors.html +++ b/docs/Errors.html @@ -22,7 +22,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -239,7 +239,7 @@ It may indicate that either data is damaged or it might not be compressed with B

    @@ -275,7 +275,7 @@ It may indicate that either the data is damaged or it might not be compressed wi @@ -311,7 +311,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -347,7 +347,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -383,7 +383,7 @@ It may indicate that either container is damaged or it might not be 7-Zip contai @@ -426,7 +426,7 @@ It may indicate that either container is damaged or it might not be TAR containe @@ -462,7 +462,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -498,7 +498,7 @@ It may indicate that either archive is damaged or it might not be GZip archive a @@ -534,7 +534,7 @@ It may indicate that either archive is damaged or it might not be XZ archive at @@ -570,7 +570,7 @@ It may indicate that either archive is damaged or it might not be Zlib archive a diff --git a/docs/Protocols.html b/docs/Protocols.html index 5f3f0c42..de233343 100644 --- a/docs/Protocols.html +++ b/docs/Protocols.html @@ -22,7 +22,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -238,7 +238,7 @@

    @@ -269,7 +269,7 @@ @@ -300,7 +300,7 @@ @@ -331,7 +331,7 @@ @@ -362,7 +362,7 @@ diff --git a/docs/Protocols/Archive.html b/docs/Protocols/Archive.html index b2edf3a9..fe08c62c 100644 --- a/docs/Protocols/Archive.html +++ b/docs/Protocols/Archive.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    diff --git a/docs/Protocols/CompressionAlgorithm.html b/docs/Protocols/CompressionAlgorithm.html index 94a6c980..c99dbd5b 100644 --- a/docs/Protocols/CompressionAlgorithm.html +++ b/docs/Protocols/CompressionAlgorithm.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    diff --git a/docs/Protocols/Container.html b/docs/Protocols/Container.html index b18e9d4a..91270c64 100644 --- a/docs/Protocols/Container.html +++ b/docs/Protocols/Container.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    diff --git a/docs/Protocols/ContainerEntry.html b/docs/Protocols/ContainerEntry.html index 6cc05f48..b322718b 100644 --- a/docs/Protocols/ContainerEntry.html +++ b/docs/Protocols/ContainerEntry.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    @@ -275,7 +275,7 @@ @@ -305,7 +305,7 @@ @@ -335,7 +335,7 @@ @@ -365,7 +365,7 @@ @@ -401,7 +401,7 @@ @@ -431,7 +431,7 @@ diff --git a/docs/Protocols/DecompressionAlgorithm.html b/docs/Protocols/DecompressionAlgorithm.html index b37a49b4..781851e3 100644 --- a/docs/Protocols/DecompressionAlgorithm.html +++ b/docs/Protocols/DecompressionAlgorithm.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    diff --git a/docs/Structs/GzipHeader.html b/docs/Structs/GzipHeader.html index 2e52ced2..a10626eb 100644 --- a/docs/Structs/GzipHeader.html +++ b/docs/Structs/GzipHeader.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@

    @@ -277,7 +277,7 @@ @@ -307,7 +307,7 @@ @@ -339,7 +339,7 @@ then this property is nil.

    @@ -369,7 +369,7 @@ then this property is nil.

    @@ -399,7 +399,7 @@ then this property is nil.

    @@ -429,7 +429,7 @@ then this property is nil.

    @@ -459,7 +459,7 @@ then this property is nil.

    @@ -516,7 +516,7 @@ it might not be archived with GZip at all.

    diff --git a/docs/Structs/GzipHeader/CompressionMethod.html b/docs/Structs/GzipHeader/CompressionMethod.html index 6717504f..9e54c052 100644 --- a/docs/Structs/GzipHeader/CompressionMethod.html +++ b/docs/Structs/GzipHeader/CompressionMethod.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    diff --git a/docs/Structs/GzipHeader/FileSystemType.html b/docs/Structs/GzipHeader/FileSystemType.html index b70b3792..412eb7c1 100644 --- a/docs/Structs/GzipHeader/FileSystemType.html +++ b/docs/Structs/GzipHeader/FileSystemType.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -250,7 +250,7 @@

    @@ -284,7 +284,7 @@ @@ -318,7 +318,7 @@ @@ -352,7 +352,7 @@ @@ -386,7 +386,7 @@ diff --git a/docs/Structs/SevenZipEntryInfo.html b/docs/Structs/SevenZipEntryInfo.html index 01cdbba8..583949fa 100644 --- a/docs/Structs/SevenZipEntryInfo.html +++ b/docs/Structs/SevenZipEntryInfo.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@

    @@ -277,7 +277,7 @@ @@ -308,7 +308,7 @@ @@ -338,7 +338,7 @@ @@ -368,7 +368,7 @@ @@ -398,7 +398,7 @@ @@ -428,7 +428,7 @@ @@ -458,7 +458,7 @@ @@ -488,7 +488,7 @@ @@ -518,7 +518,7 @@ @@ -548,7 +548,7 @@ @@ -578,7 +578,7 @@ @@ -608,7 +608,7 @@ @@ -638,7 +638,7 @@ @@ -668,7 +668,7 @@ @@ -700,7 +700,7 @@ Used in differential backups to indicate that file should be deleted. @@ -730,7 +730,7 @@ Used in differential backups to indicate that file should be deleted. diff --git a/docs/Structs/SevenZipEntryInfo/DosAttributes.html b/docs/Structs/SevenZipEntryInfo/DosAttributes.html index e81114e4..e46ba5e7 100644 --- a/docs/Structs/SevenZipEntryInfo/DosAttributes.html +++ b/docs/Structs/SevenZipEntryInfo/DosAttributes.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    @@ -275,7 +275,7 @@ @@ -305,7 +305,7 @@ @@ -335,7 +335,7 @@ @@ -365,7 +365,7 @@ @@ -395,7 +395,7 @@ @@ -425,7 +425,7 @@ @@ -455,7 +455,7 @@ diff --git a/docs/Structs/SevenZipEntryInfo/Permissions.html b/docs/Structs/SevenZipEntryInfo/Permissions.html index a35ec749..0b72defb 100644 --- a/docs/Structs/SevenZipEntryInfo/Permissions.html +++ b/docs/Structs/SevenZipEntryInfo/Permissions.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    @@ -275,7 +275,7 @@ @@ -305,7 +305,7 @@ @@ -335,7 +335,7 @@ @@ -365,7 +365,7 @@ @@ -395,7 +395,7 @@ @@ -425,7 +425,7 @@ @@ -455,7 +455,7 @@ @@ -485,7 +485,7 @@ @@ -515,7 +515,7 @@ @@ -545,7 +545,7 @@ @@ -575,7 +575,7 @@ @@ -605,7 +605,7 @@ @@ -635,7 +635,7 @@ diff --git a/docs/Structs/SevenZipEntryInfo/UnixType.html b/docs/Structs/SevenZipEntryInfo/UnixType.html index 7eed36c7..8464339a 100644 --- a/docs/Structs/SevenZipEntryInfo/UnixType.html +++ b/docs/Structs/SevenZipEntryInfo/UnixType.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    @@ -279,7 +279,7 @@ @@ -313,7 +313,7 @@ @@ -347,7 +347,7 @@ @@ -381,7 +381,7 @@ @@ -415,7 +415,7 @@ @@ -449,7 +449,7 @@ diff --git a/docs/Structs/ZlibHeader.html b/docs/Structs/ZlibHeader.html index de55b36e..ebe76f7e 100644 --- a/docs/Structs/ZlibHeader.html +++ b/docs/Structs/ZlibHeader.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@

    @@ -277,7 +277,7 @@ @@ -307,7 +307,7 @@ @@ -337,7 +337,7 @@ @@ -367,7 +367,7 @@ @@ -424,7 +424,7 @@ it might not be archived with Zlib at all.

    diff --git a/docs/Structs/ZlibHeader/CompressionLevel.html b/docs/Structs/ZlibHeader/CompressionLevel.html index 2fcf0c1d..be91de4d 100644 --- a/docs/Structs/ZlibHeader/CompressionLevel.html +++ b/docs/Structs/ZlibHeader/CompressionLevel.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    @@ -279,7 +279,7 @@ @@ -313,7 +313,7 @@ @@ -347,7 +347,7 @@ diff --git a/docs/Structs/ZlibHeader/CompressionMethod.html b/docs/Structs/ZlibHeader/CompressionMethod.html index 8c7143f3..a55cc9ad 100644 --- a/docs/Structs/ZlibHeader/CompressionMethod.html +++ b/docs/Structs/ZlibHeader/CompressionMethod.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    diff --git a/docs/badge.svg b/docs/badge.svg index 1cda4157..2606d804 100644 --- a/docs/badge.svg +++ b/docs/badge.svg @@ -1 +1 @@ -documentationdocumentation96%96% \ No newline at end of file +documentationdocumentation100%100% \ No newline at end of file diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Archives.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Archives.html index ff3f983b..1eb81f45 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Archives.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Archives.html @@ -22,7 +22,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -238,7 +238,7 @@

    @@ -273,7 +273,7 @@ @@ -308,7 +308,7 @@ @@ -343,7 +343,7 @@ @@ -378,7 +378,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 aea8fc0b..026d14b6 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/BZip2.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/BZip2.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -211,7 +211,7 @@ -

    Provides decompression function for BZip2 algorithm.

    +

    Provides functions for compression and decompression for BZip2 algorithm.

    @@ -276,7 +276,7 @@ It may indicate that either data is damaged or it might not be compressed with B

    Decompressed data.

    @@ -288,9 +288,9 @@ It may indicate that either data is damaged or it might not be compressed with B
  • - + - compress(data:) + compress(data:)
    @@ -298,7 +298,14 @@ It may indicate that either data is damaged or it might not be compressed with B
    - +

    Compresses data with BZip2 algortihm.

    +
    +

    Note

    +

    Input data will be split into blocks of size 100 KB. +Use BZip2.compress(data:blockSize:) function to specify size of a block.

    + +
    +

    Declaration

    @@ -308,8 +315,27 @@ It may indicate that either data is damaged or it might not be compressed with B
    +
    +

    Parameters

    + + + + + + + +
    + + data + + +
    +

    Data to compress.

    +
    +
    +
    @@ -327,19 +353,50 @@ It may indicate that either data is damaged or it might not be compressed with B
    -

    Undocumented

    +

    Compresses data with BZip2 algortihm, splitting data into blocks of specified blockSize.

    Declaration

    Swift

    -
    public class BZip2: DecompressionAlgorithm
    +
    public static func compress(data: Data, blockSize: BlockSize) -> Data
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + data + + +
    +

    Data to compress.

    +
    +
    + + blockSize + + +
    +

    Size of blocks in which data will be split.

    +
    +
    +
    @@ -361,7 +418,7 @@ It may indicate that either data is damaged or it might not be compressed with B
    -

    Undocumented

    +

    Represents size of blocks in which data is split during BZip2 compression.

    See more
    @@ -369,12 +426,12 @@ It may indicate that either data is damaged or it might not be compressed with B

    Declaration

    Swift

    -
    public class BZip2: DecompressionAlgorithm
    +
    public enum BlockSize: Int
    diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/BZip2/BlockSize.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/BZip2/BlockSize.html index 8f2c216d..a3e256bd 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/BZip2/BlockSize.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/BZip2/BlockSize.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -205,7 +205,13 @@

    BlockSize

    -

    Undocumented

    +
    +
    +
    public enum BlockSize: Int
    + +
    +
    +

    Represents size of blocks in which data is split during BZip2 compression.

    @@ -227,11 +233,19 @@
    -

    Undocumented

    +

    100 KB.

    +
    +

    Declaration

    +
    +

    Swift

    +
    case one = 1
    + +
    +
    @@ -253,11 +267,19 @@
    -

    Undocumented

    +

    200 KB.

    +
    +

    Declaration

    +
    +

    Swift

    +
    case two = 2
    + +
    +
    @@ -279,11 +301,19 @@
    -

    Undocumented

    +

    300 KB.

    +
    +

    Declaration

    +
    +

    Swift

    +
    case three = 3
    + +
    +
    @@ -305,11 +335,19 @@
    -

    Undocumented

    +

    400 KB.

    +
    +

    Declaration

    +
    +

    Swift

    +
    case four = 4
    + +
    +
    @@ -331,11 +369,19 @@
    -

    Undocumented

    +

    500 KB.

    +
    +

    Declaration

    +
    +

    Swift

    +
    case five = 5
    + +
    +
    @@ -357,11 +403,19 @@
    -

    Undocumented

    +

    600 KB.

    +
    +

    Declaration

    +
    +

    Swift

    +
    case six = 6
    + +
    +
    @@ -383,11 +437,19 @@
    -

    Undocumented

    +

    700 KB.

    +
    +

    Declaration

    +
    +

    Swift

    +
    case seven = 7
    + +
    +
    @@ -409,11 +471,19 @@
    -

    Undocumented

    +

    800 KB.

    +
    +

    Declaration

    +
    +

    Swift

    +
    case eight = 8
    + +
    +
    @@ -435,11 +505,19 @@
    -

    Undocumented

    +

    900 KB.

    +
    +

    Declaration

    +
    +

    Swift

    +
    case nine = 9
    + +
    +
    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 ef688612..f303660b 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/Deflate.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/Deflate.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -211,7 +211,7 @@ -

    Provides compression and decompression functions for Deflate algorithm.

    +

    Provides functions for compression and decompression for Deflate algorithm.

    @@ -281,7 +281,7 @@ It may indicate that either data is damaged or it might not be compressed with D

    Decompressed data.

    @@ -343,7 +343,7 @@ then static Huffman block will be created.

    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 301cc12d..fc132c35 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/GzipArchive.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/GzipArchive.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@

    @@ -315,7 +315,7 @@ it might not be archived with GZip or compressed with Deflate at all.

    Unarchived data.

    @@ -384,7 +384,7 @@ it might not be archived with GZip or compressed with Deflate at all.

    Unarchived data.

    @@ -527,7 +527,7 @@ then - Show on GitHub + Show on GitHub diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/GzipArchive/Member.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/GzipArchive/Member.html index 705a1306..269655ac 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/GzipArchive/Member.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/GzipArchive/Member.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    @@ -275,7 +275,7 @@ 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 bcbf2602..61c7b6ae 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/LZMA.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/LZMA.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -276,7 +276,7 @@ It may indicate that either data is damaged or it might not be compressed with L

    Decompressed data.

    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 6f860229..40e4ee24 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/LZMA2.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/LZMA2.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -276,7 +276,7 @@ It may indicate that either data is damaged or it might not be compressed with L

    Decompressed data.

    diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/SevenZipContainer.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/SevenZipContainer.html index a0a39ad6..3f4777c3 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/SevenZipContainer.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/SevenZipContainer.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -283,7 +283,7 @@ It may indicate that either container is damaged or it might not be 7-Zip contai

    Array of SevenZipEntry as an array of ContainerEntry.

    @@ -353,7 +353,7 @@ It may indicate that either container is damaged or it might not be 7-Zip contai

    Array of SevenZipEntryInfo.

    diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/SevenZipEntry.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/SevenZipEntry.html index 8ad0111f..b2a0168b 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/SevenZipEntry.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/SevenZipEntry.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    @@ -275,7 +275,7 @@ @@ -305,7 +305,7 @@ @@ -335,7 +335,7 @@ @@ -365,7 +365,7 @@ @@ -395,7 +395,7 @@ @@ -438,7 +438,7 @@ @@ -469,7 +469,7 @@ It might not be depending on the content of the container.

    @@ -504,7 +504,7 @@ It might not be depending on the content of the container.

    diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/TarContainer.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/TarContainer.html index c3c5f21c..a7b7656b 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/TarContainer.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/TarContainer.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -281,7 +281,7 @@ but one SHOULD NOT rely on any particular order.

    Array of TarEntry as an array of ContainerEntry.

    diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/TarEntry.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/TarEntry.html index e7905662..bc33e159 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/TarEntry.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/TarEntry.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@

    @@ -276,7 +276,7 @@ @@ -306,7 +306,7 @@ @@ -336,7 +336,7 @@ @@ -382,7 +382,7 @@ @@ -412,7 +412,7 @@ @@ -442,7 +442,7 @@ @@ -472,7 +472,7 @@ @@ -502,7 +502,7 @@ @@ -532,7 +532,7 @@ @@ -562,7 +562,7 @@ @@ -592,7 +592,7 @@ @@ -622,7 +622,7 @@ @@ -652,7 +652,7 @@ @@ -682,7 +682,7 @@ @@ -712,7 +712,7 @@ @@ -742,7 +742,7 @@ @@ -772,7 +772,7 @@ @@ -802,7 +802,7 @@ @@ -832,7 +832,7 @@ diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/TarEntry/EntryType.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/TarEntry/EntryType.html index 118300a6..400f1015 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/TarEntry/EntryType.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/TarEntry/EntryType.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    @@ -279,7 +279,7 @@ @@ -313,7 +313,7 @@ @@ -347,7 +347,7 @@ @@ -381,7 +381,7 @@ @@ -415,7 +415,7 @@ @@ -449,7 +449,7 @@ @@ -483,7 +483,7 @@ @@ -517,7 +517,7 @@ @@ -551,7 +551,7 @@ @@ -585,7 +585,7 @@ 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 e3511b58..e19c6771 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/XZArchive.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/XZArchive.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -281,7 +281,7 @@ It may indicate that either the archive is damaged or it might not be compressed

    Unarchived data.

    @@ -349,7 +349,7 @@ it might not be archived with XZ or LZMA(2) at all.

    Unarchived data.

    diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/ZipContainer.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/ZipContainer.html index 5aabc9ef..8deed83e 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/ZipContainer.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/ZipContainer.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -283,7 +283,7 @@ It may indicate that either container is damaged or it might not be ZIP containe

    Array of ZipEntry as an array of ContainerEntry.

    diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/ZipEntry.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/ZipEntry.html index aa181fd2..cf9df206 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/ZipEntry.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/ZipEntry.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    @@ -275,7 +275,7 @@ @@ -305,7 +305,7 @@ @@ -335,7 +335,7 @@ @@ -367,7 +367,7 @@ Otherwise, it is true if size of data is 0 AND last character of entry’s n @@ -397,7 +397,7 @@ Otherwise, it is true if size of data is 0 AND last character of entry’s n @@ -427,7 +427,7 @@ Otherwise, it is true if size of data is 0 AND last character of entry’s n @@ -457,7 +457,7 @@ Otherwise, it is true if size of data is 0 AND last character of entry’s n @@ -497,7 +497,7 @@ Otherwise, it is true if size of data is 0 AND last character of entry’s n @@ -533,7 +533,7 @@ depending on the type of the problem. An error can indicate that container is da 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 281cd732..85b8e787 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/ZlibArchive.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/ZlibArchive.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -284,7 +284,7 @@ it might not be archived with Zlib or compressed with Deflate at all.

    Unarchived data.

    @@ -346,7 +346,7 @@ It will also be specified in archive’s header that the compressor used the

    Resulting archive’s data.

    diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Compression.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Compression.html index f6f6369a..8f8007bd 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Compression.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Compression.html @@ -22,7 +22,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -225,7 +225,7 @@

    -

    Provides decompression function for BZip2 algorithm.

    +

    Provides functions for compression and decompression for BZip2 algorithm.

    See more
    @@ -238,7 +238,7 @@
    @@ -260,7 +260,7 @@
    -

    Provides compression and decompression functions for Deflate algorithm.

    +

    Provides functions for compression and decompression for Deflate algorithm.

    See more
    @@ -273,7 +273,7 @@
    @@ -308,7 +308,7 @@ @@ -343,7 +343,7 @@ diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Containers.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Containers.html index fd146cb0..70c6d6b1 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Containers.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Containers.html @@ -22,7 +22,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -238,7 +238,7 @@

    @@ -273,7 +273,7 @@ @@ -308,7 +308,7 @@ @@ -343,7 +343,7 @@ @@ -378,7 +378,7 @@ @@ -413,7 +413,7 @@ @@ -448,7 +448,7 @@ 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 b81debfd..5b80384a 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/BZip2Error.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/BZip2Error.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@ It may indicate that either data is damaged or it might not be compressed with B

    @@ -280,7 +280,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -314,7 +314,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -348,7 +348,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -382,7 +382,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -416,7 +416,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -450,7 +450,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -484,7 +484,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -518,7 +518,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -553,7 +553,7 @@ Associated value of the error contains already decompressed data.

    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 443ee8d5..6e25c524 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/DeflateError.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/DeflateError.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@ It may indicate that either the data is damaged or it might not be compressed wi

    @@ -280,7 +280,7 @@ It may indicate that either the data is damaged or it might not be compressed wi @@ -314,7 +314,7 @@ It may indicate that either the data is damaged or it might not be compressed wi @@ -348,7 +348,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 a6de82f2..74a6ccf3 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/GzipError.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/GzipError.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@ It may indicate that either archive is damaged or it might not be GZip archive a

    @@ -280,7 +280,7 @@ It may indicate that either archive is damaged or it might not be GZip archive a @@ -315,7 +315,7 @@ that archive uses a newer version of GZip format.

    @@ -349,7 +349,7 @@ that archive uses a newer version of GZip format.

    @@ -384,7 +384,7 @@ Associated value of the error contains already decompressed data.

    @@ -418,7 +418,7 @@ Associated value of the error contains already decompressed data.

    @@ -452,7 +452,7 @@ Associated value of the error 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 9b39f623..d7f667b7 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/LZMA2Error.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/LZMA2Error.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@ It may indicate that either data is damaged or it might not be compressed with L

    @@ -280,7 +280,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -314,7 +314,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -348,7 +348,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -383,7 +383,7 @@ amount of compressed data read is 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 2ae4cfa8..4e2b7f79 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/LZMAError.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/LZMAError.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@ It may indicate that either data is damaged or it might not be compressed with L

    @@ -280,7 +280,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -314,7 +314,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -348,7 +348,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -382,7 +382,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -416,7 +416,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -450,7 +450,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -484,7 +484,7 @@ It may indicate that either data is damaged or it might not be compressed with L diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/SevenZipError.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/SevenZipError.html index 104b0cc2..0380da5e 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/SevenZipError.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/SevenZipError.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@ It may indicate that either container is damaged or it might not be 7-Zip contai

    @@ -280,7 +280,7 @@ It may indicate that either container is damaged or it might not be 7-Zip contai @@ -315,7 +315,7 @@ or one of the container’s strucutures is incorrect.

    @@ -350,7 +350,7 @@ or one of the container’s strucutures is incorrect.

    @@ -384,7 +384,7 @@ or one of the container’s strucutures is incorrect.

    @@ -418,7 +418,7 @@ or one of the container’s strucutures is incorrect.

    @@ -452,7 +452,7 @@ or one of the container’s strucutures is incorrect.

    @@ -486,7 +486,7 @@ or one of the container’s strucutures is incorrect.

    @@ -520,7 +520,7 @@ or one of the container’s strucutures is incorrect.

    @@ -554,7 +554,7 @@ or one of the container’s strucutures is incorrect.

    @@ -588,7 +588,7 @@ or one of the container’s strucutures is incorrect.

    @@ -623,7 +623,7 @@ no internal structure was found where it must be.

    diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/TarError.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/TarError.html index 45db134c..25fe722d 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/TarError.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/TarError.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@ It may indicate that either container is damaged or it might not be TAR containe

    @@ -280,7 +280,7 @@ It may indicate that either container is damaged or it might not be TAR containe @@ -314,7 +314,7 @@ It may indicate that either container is damaged or it might not be TAR containe @@ -348,7 +348,7 @@ It may indicate that either container is damaged or it might not be TAR containe @@ -382,7 +382,7 @@ It may indicate that either container is damaged or it might not be TAR containe @@ -416,7 +416,7 @@ It may indicate that either container is damaged or it might not be TAR containe 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 06e25e40..9afe0b78 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/XZError.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/XZError.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@ It may indicate that either archive is damaged or it might not be XZ archive at

    @@ -280,7 +280,7 @@ It may indicate that either archive is damaged or it might not be XZ archive at @@ -315,7 +315,7 @@ that archive uses a newer version of XZ format.

    @@ -349,7 +349,7 @@ that archive uses a newer version of XZ format.

    @@ -383,7 +383,7 @@ that archive uses a newer version of XZ format.

    @@ -417,7 +417,7 @@ that archive uses a newer version of XZ format.

    @@ -452,7 +452,7 @@ amount of compressed data read is different from the one stored in archive.

    @@ -487,7 +487,7 @@ Associated value of the error contains already decompressed data.

    @@ -521,7 +521,7 @@ Associated value of the error contains already decompressed data.

    @@ -555,7 +555,7 @@ Associated value of the error 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 index 8715e4cb..08ac5485 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/ZipError.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/ZipError.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@ It may indicate that either container is damaged or it might not be ZIP containe

    @@ -280,7 +280,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -314,7 +314,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -348,7 +348,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -382,7 +382,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -416,7 +416,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -450,7 +450,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -484,7 +484,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -518,7 +518,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -553,7 +553,7 @@ Associated value of the error contains entry’s data.

    @@ -587,7 +587,7 @@ Associated value of the error contains entry’s data.

    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 07f2de75..70456110 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/ZlibError.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/ZlibError.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@ It may indicate that either archive is damaged or it might not be Zlib archive a

    @@ -280,7 +280,7 @@ It may indicate that either archive is damaged or it might not be Zlib archive a @@ -314,7 +314,7 @@ It may indicate that either archive is damaged or it might not be Zlib archive a @@ -348,7 +348,7 @@ It may indicate that either archive is damaged or it might not be Zlib archive a @@ -383,7 +383,7 @@ Associated value of the error contains already decompressed data.

    diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Errors.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Errors.html index 90af0fb7..88802d2c 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Errors.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Errors.html @@ -22,7 +22,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -239,7 +239,7 @@ It may indicate that either data is damaged or it might not be compressed with B

    @@ -275,7 +275,7 @@ It may indicate that either the data is damaged or it might not be compressed wi @@ -311,7 +311,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -347,7 +347,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -383,7 +383,7 @@ It may indicate that either container is damaged or it might not be 7-Zip contai @@ -426,7 +426,7 @@ It may indicate that either container is damaged or it might not be TAR containe @@ -462,7 +462,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -498,7 +498,7 @@ It may indicate that either archive is damaged or it might not be GZip archive a @@ -534,7 +534,7 @@ It may indicate that either archive is damaged or it might not be XZ archive at @@ -570,7 +570,7 @@ It may indicate that either archive is damaged or it might not be Zlib archive a diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols.html index 5f3f0c42..de233343 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols.html @@ -22,7 +22,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -238,7 +238,7 @@

    @@ -269,7 +269,7 @@ @@ -300,7 +300,7 @@ @@ -331,7 +331,7 @@ @@ -362,7 +362,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 b2edf3a9..fe08c62c 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/Archive.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/Archive.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/CompressionAlgorithm.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/CompressionAlgorithm.html index 94a6c980..c99dbd5b 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/CompressionAlgorithm.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/CompressionAlgorithm.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/Container.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/Container.html index b18e9d4a..91270c64 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/Container.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/Container.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/ContainerEntry.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/ContainerEntry.html index 6cc05f48..b322718b 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/ContainerEntry.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/ContainerEntry.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    @@ -275,7 +275,7 @@ @@ -305,7 +305,7 @@ @@ -335,7 +335,7 @@ @@ -365,7 +365,7 @@ @@ -401,7 +401,7 @@ @@ -431,7 +431,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 b37a49b4..781851e3 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/DecompressionAlgorithm.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/DecompressionAlgorithm.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,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 2e52ced2..a10626eb 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/GzipHeader.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/GzipHeader.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@

    @@ -277,7 +277,7 @@ @@ -307,7 +307,7 @@ @@ -339,7 +339,7 @@ then this property is nil.

    @@ -369,7 +369,7 @@ then this property is nil.

    @@ -399,7 +399,7 @@ then this property is nil.

    @@ -429,7 +429,7 @@ then this property is nil.

    @@ -459,7 +459,7 @@ then this property is nil.

    @@ -516,7 +516,7 @@ it might not be archived 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 6717504f..9e54c052 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 @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,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 b70b3792..412eb7c1 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 @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -250,7 +250,7 @@

    @@ -284,7 +284,7 @@ @@ -318,7 +318,7 @@ @@ -352,7 +352,7 @@ @@ -386,7 +386,7 @@ diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/SevenZipEntryInfo.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/SevenZipEntryInfo.html index 01cdbba8..583949fa 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/SevenZipEntryInfo.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/SevenZipEntryInfo.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@

    @@ -277,7 +277,7 @@ @@ -308,7 +308,7 @@ @@ -338,7 +338,7 @@ @@ -368,7 +368,7 @@ @@ -398,7 +398,7 @@ @@ -428,7 +428,7 @@ @@ -458,7 +458,7 @@ @@ -488,7 +488,7 @@ @@ -518,7 +518,7 @@ @@ -548,7 +548,7 @@ @@ -578,7 +578,7 @@ @@ -608,7 +608,7 @@ @@ -638,7 +638,7 @@ @@ -668,7 +668,7 @@ @@ -700,7 +700,7 @@ Used in differential backups to indicate that file should be deleted. @@ -730,7 +730,7 @@ Used in differential backups to indicate that file should be deleted. diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/SevenZipEntryInfo/DosAttributes.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/SevenZipEntryInfo/DosAttributes.html index e81114e4..e46ba5e7 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/SevenZipEntryInfo/DosAttributes.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/SevenZipEntryInfo/DosAttributes.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    @@ -275,7 +275,7 @@ @@ -305,7 +305,7 @@ @@ -335,7 +335,7 @@ @@ -365,7 +365,7 @@ @@ -395,7 +395,7 @@ @@ -425,7 +425,7 @@ @@ -455,7 +455,7 @@ diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/SevenZipEntryInfo/Permissions.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/SevenZipEntryInfo/Permissions.html index a35ec749..0b72defb 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/SevenZipEntryInfo/Permissions.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/SevenZipEntryInfo/Permissions.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    @@ -275,7 +275,7 @@ @@ -305,7 +305,7 @@ @@ -335,7 +335,7 @@ @@ -365,7 +365,7 @@ @@ -395,7 +395,7 @@ @@ -425,7 +425,7 @@ @@ -455,7 +455,7 @@ @@ -485,7 +485,7 @@ @@ -515,7 +515,7 @@ @@ -545,7 +545,7 @@ @@ -575,7 +575,7 @@ @@ -605,7 +605,7 @@ @@ -635,7 +635,7 @@ diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/SevenZipEntryInfo/UnixType.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/SevenZipEntryInfo/UnixType.html index 7eed36c7..8464339a 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/SevenZipEntryInfo/UnixType.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/SevenZipEntryInfo/UnixType.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    @@ -279,7 +279,7 @@ @@ -313,7 +313,7 @@ @@ -347,7 +347,7 @@ @@ -381,7 +381,7 @@ @@ -415,7 +415,7 @@ @@ -449,7 +449,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 de55b36e..ebe76f7e 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/ZlibHeader.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/ZlibHeader.html @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -246,7 +246,7 @@

    @@ -277,7 +277,7 @@ @@ -307,7 +307,7 @@ @@ -337,7 +337,7 @@ @@ -367,7 +367,7 @@ @@ -424,7 +424,7 @@ it might not be archived 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 2fcf0c1d..be91de4d 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 @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    @@ -279,7 +279,7 @@ @@ -313,7 +313,7 @@ @@ -347,7 +347,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 8c7143f3..a55cc9ad 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 @@ -23,7 +23,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -245,7 +245,7 @@

    diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/index.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/index.html index 8175ca3a..62379449 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/index.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/index.html @@ -22,7 +22,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -253,6 +253,7 @@ And yes, it is also in Objective-C.

    • Deflate
    • +
    • BZip2
  • Archives: @@ -397,10 +398,8 @@ For example:

    which uses SWCompression for unarchiving several types of archives.

    Performace

    -

    TL;DR Constantly trying to improve performance; -use whole module optimizations, which are enabled by default for Release configurations.

    - -

    Further thoughts, details and notes about performance you can read in a separate document.

    +

    Usage of whole module optimizations is recommended for best performance. +These optimizations are enabled by default for Release configurations.

    Tests Results document contains results of performance testing of various algorithms.

    Running tests locally

    @@ -429,7 +428,6 @@ It is intended to fix this problem, but solution requires backwards-incompatible

    Future plans

    diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/search.json b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/search.json index 4912cb19..30217920 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/search.json +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/search.json @@ -1 +1 @@ -{"Protocols/DecompressionAlgorithm.html#/s:13SWCompression22DecompressionAlgorithmP10decompress10Foundation4DataVAG4data_tKFZ":{"name":"decompress(data:)","abstract":"

    Decompress data compressed with particular algorithm.

    ","parent_name":"DecompressionAlgorithm"},"Protocols/CompressionAlgorithm.html#/s:13SWCompression20CompressionAlgorithmP8compress10Foundation4DataVAG4data_tKFZ":{"name":"compress(data:)","abstract":"

    Cmpress data with particular algorithm.

    ","parent_name":"CompressionAlgorithm"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP4nameSSv":{"name":"name","abstract":"

    Retrieve name of the entry from the container.

    ","parent_name":"ContainerEntry"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP4sizeSiv":{"name":"size","abstract":"

    Retrieve size of the entry’s data from the container.

    ","parent_name":"ContainerEntry"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP11isDirectorySbv":{"name":"isDirectory","abstract":"

    True, if entry is a directory.

    ","parent_name":"ContainerEntry"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP6isLinkSbv":{"name":"isLink","abstract":"

    True, if entry is a symbolic link.

    ","parent_name":"ContainerEntry"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP8linkPathSSSgv":{"name":"linkPath","abstract":"

    Path to a linked file for symbolic link entry.

    ","parent_name":"ContainerEntry"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP15entryAttributess10DictionaryVySC16FileAttributeKeyVypGv":{"name":"entryAttributes","abstract":"

    Provides a dictionary with various attributes of the entry.","parent_name":"ContainerEntry"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP4data10Foundation4DataVyKF":{"name":"data()","abstract":"

    Retrieve entry’s data from the container.

    ","parent_name":"ContainerEntry"},"Protocols/Container.html#/s:13SWCompression9ContainerP4openSayAA0B5Entry_pG10Foundation4DataV9container_tKFZ":{"name":"open(container:)","abstract":"

    Retrieve all the entries from the container.

    ","parent_name":"Container"},"Protocols/Archive.html#/s:13SWCompression7ArchiveP9unarchive10Foundation4DataVAG7archive_tKFZ":{"name":"unarchive(archive:)","abstract":"

    Unarchive data from the archive.

    ","parent_name":"Archive"},"Protocols/Archive.html":{"name":"Archive","abstract":"

    A type that represents an archive.

    "},"Protocols/Container.html":{"name":"Container","abstract":"

    A type that represents a container of files, directories and/or other data.

    "},"Protocols/ContainerEntry.html":{"name":"ContainerEntry","abstract":"

    A type that represents an entry from a container (file or directory) with attributes.

    "},"Protocols/CompressionAlgorithm.html":{"name":"CompressionAlgorithm","abstract":"

    A type that provides an implementation of a particular compression algorithm.

    "},"Protocols/DecompressionAlgorithm.html":{"name":"DecompressionAlgorithm","abstract":"

    A type that provides an implementation of a particular decompression algorithm.

    "},"Enums/ZlibError.html#/s:13SWCompression9ZlibErrorO22wrongCompressionMethodA2CmF":{"name":"wrongCompressionMethod","abstract":"

    Compression method used in archive is different from Deflate, which is the only supported one.

    ","parent_name":"ZlibError"},"Enums/ZlibError.html#/s:13SWCompression9ZlibErrorO20wrongCompressionInfoA2CmF":{"name":"wrongCompressionInfo","abstract":"

    Compression info has value incompatible with Deflate compression method.

    ","parent_name":"ZlibError"},"Enums/ZlibError.html#/s:13SWCompression9ZlibErrorO11wrongFcheckA2CmF":{"name":"wrongFcheck","abstract":"

    First two bytes of archive’s flags are inconsistent with each other.

    ","parent_name":"ZlibError"},"Enums/ZlibError.html#/s:13SWCompression9ZlibErrorO21wrongCompressionLevelA2CmF":{"name":"wrongCompressionLevel","abstract":"

    Compression level has value, which is different from the supported ones.

    ","parent_name":"ZlibError"},"Enums/ZlibError.html#/s:13SWCompression9ZlibErrorO12wrongAdler32AC10Foundation4DataVcACmF":{"name":"wrongAdler32","abstract":"

    Computed checksum of uncompressed data doesn’t match the value stored in archive.","parent_name":"ZlibError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO10wrongMagicA2CmF":{"name":"wrongMagic","abstract":"

    Either ‘magic’ number in header or footer isn’t equal to a predefined value.

    ","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO15wrongFieldValueA2CmF":{"name":"wrongFieldValue","abstract":"

    One of the fields in archive has an incorrect value.

    ","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO18fieldReservedValueA2CmF":{"name":"fieldReservedValue","abstract":"

    One of the reserved fields in archive has an unexpected value, which can also mean (apart from damaged archive),","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO12wrongInfoCRCA2CmF":{"name":"wrongInfoCRC","abstract":"

    Checksum of one of the fields of archive doesn’t match the value stored in archive.

    ","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO13wrongFilterIDA2CmF":{"name":"wrongFilterID","abstract":"

    Filter used in archvie is unsupported.

    ","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO15checkTypeSHA256A2CmF":{"name":"checkTypeSHA256","abstract":"

    Archive uses SHA-256 checksum which is unsupported.

    ","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO13wrongDataSizeA2CmF":{"name":"wrongDataSize","abstract":"

    Either size of decompressed data isn’t equal to the one specified in archive or","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO10wrongCheckAC10Foundation4DataVcACmF":{"name":"wrongCheck","abstract":"

    Computed checksum of uncompressed data doesn’t match the value stored in the archive.","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO12wrongPaddingA2CmF":{"name":"wrongPadding","abstract":"

    Padding (null-bytes appended to an archive’s structure) is incorrect.

    ","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO21multiByteIntegerErrorA2CmF":{"name":"multiByteIntegerError","abstract":"

    Either null byte encountered or exceeded maximum amount bytes during reading multi byte number.

    ","parent_name":"XZError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO10wrongMagicA2CmF":{"name":"wrongMagic","abstract":"

    First two bytes (‘magic’ number) of archive isn’t 31 and 139.

    ","parent_name":"GzipError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO22wrongCompressionMethodA2CmF":{"name":"wrongCompressionMethod","abstract":"

    Compression method used in archive is different from Deflate, which is the only supported one.

    ","parent_name":"GzipError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO10wrongFlagsA2CmF":{"name":"wrongFlags","abstract":"

    One of the reserved fields in archive has an unexpected value, which can also mean (apart from damaged archive),","parent_name":"GzipError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO14wrongHeaderCRCA2CmF":{"name":"wrongHeaderCRC","abstract":"

    Computed CRC of archive’s header doesn’t match the value stored in archive.

    ","parent_name":"GzipError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO8wrongCRCAC10Foundation4DataVcACmF":{"name":"wrongCRC","abstract":"

    Computed checksum of uncompressed data doesn’t match the value stored in archive.","parent_name":"GzipError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO10wrongISizeA2CmF":{"name":"wrongISize","abstract":"

    Computed ‘isize’ didn’t match the value stored in the archive.

    ","parent_name":"GzipError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO21cannotEncodeISOLatin1A2CmF":{"name":"cannotEncodeISOLatin1","abstract":"

    Either specified file name or comment cannot be encoded using ISO Latin-1 encoding.

    ","parent_name":"GzipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO27notFoundCentralDirectoryEndA2CmF":{"name":"notFoundCentralDirectoryEnd","abstract":"

    End of Central Directoty record wasn’t found.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO14wrongSignatureA2CmF":{"name":"wrongSignature","abstract":"

    Wrong signature of one of container’s structures.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO9wrongSizeA2CmF":{"name":"wrongSize","abstract":"

    Wrong either compressed or uncompressed size of a container’s entry.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO12wrongVersionA2CmF":{"name":"wrongVersion","abstract":"

    Version needed to process container is unsupported.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO24multiVolumesNotSupportedA2CmF":{"name":"multiVolumesNotSupported","abstract":"

    Container is either spanned or consists of several volumes. These features aren’t supported.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO22encryptionNotSupportedA2CmF":{"name":"encryptionNotSupported","abstract":"

    Entry or record is encrypted. This feature isn’t supported.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO20patchingNotSupportedA2CmF":{"name":"patchingNotSupported","abstract":"

    Entry contains patched data. This feature isn’t supported.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO23compressionNotSupportedA2CmF":{"name":"compressionNotSupported","abstract":"

    Entry is compressed using unsupported compression method.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO16wrongLocalHeaderA2CmF":{"name":"wrongLocalHeader","abstract":"

    Local header of an entry is inconsistent with Central Directory.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO10wrongCRC32AC10Foundation4DataVcACmF":{"name":"wrongCRC32","abstract":"

    Computed checksum of entry’s data doesn’t match the value stored in container.","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO14wrongTextFieldA2CmF":{"name":"wrongTextField","abstract":"

    Either entry’s comment or file name cannot be processed using UTF-8 encoding.

    ","parent_name":"ZipError"},"Enums/TarError.html#/s:13SWCompression8TarErrorO20tooSmallFileIsPassedA2CmF":{"name":"tooSmallFileIsPassed","abstract":"

    Size of data is too small, even to contain only one header.

    ","parent_name":"TarError"},"Enums/TarError.html#/s:13SWCompression8TarErrorO16fieldIsNotNumberA2CmF":{"name":"fieldIsNotNumber","abstract":"

    Failed to process a field as a number.

    ","parent_name":"TarError"},"Enums/TarError.html#/s:13SWCompression8TarErrorO19wrongHeaderChecksumA2CmF":{"name":"wrongHeaderChecksum","abstract":"

    Computed checksum of a header doesn’t match the value stored in container.

    ","parent_name":"TarError"},"Enums/TarError.html#/s:13SWCompression8TarErrorO17wrongUstarVersionA2CmF":{"name":"wrongUstarVersion","abstract":"

    Unsupported version of USTAR format.

    ","parent_name":"TarError"},"Enums/TarError.html#/s:13SWCompression8TarErrorO19wrongPaxHeaderEntryA2CmF":{"name":"wrongPaxHeaderEntry","abstract":"

    Entry from PAX extended header is in incorrect format.

    ","parent_name":"TarError"},"Enums/TarError.html#/s:13SWCompression8TarErrorO14notAsciiStringA2CmF":{"name":"notAsciiString","abstract":"

    Failed to process a field as an ASCII string.

    ","parent_name":"TarError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO14wrongSignatureA2CmF":{"name":"wrongSignature","abstract":"

    Wrong container’s signature.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO18wrongFormatVersionA2CmF":{"name":"wrongFormatVersion","abstract":"

    Unsupporte version of container’s format.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO8wrongCRCA2CmF":{"name":"wrongCRC","abstract":"

    CRC either of one of the files from the container","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO9wrongSizeA2CmF":{"name":"wrongSize","abstract":"

    Size either of one of the files from the container","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO20startPosNotSupportedA2CmF":{"name":"startPosNotSupported","abstract":"

    Files have StartPos property. This feature isn’t supported.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO20externalNotSupportedA2CmF":{"name":"externalNotSupported","abstract":"

    External feature isn’t supported.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO23multiStreamNotSupportedA2CmF":{"name":"multiStreamNotSupported","abstract":"

    Coders with multiple in and/or out streams aren’t supported.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO29additionalStreamsNotSupportedA2CmF":{"name":"additionalStreamsNotSupported","abstract":"

    Additional streams feature isn’t supported.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO23compressionNotSupportedA2CmF":{"name":"compressionNotSupported","abstract":"

    Entry is compressed using unsupported compression method.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO22encryptionNotSupportedA2CmF":{"name":"encryptionNotSupported","abstract":"

    Entry or container’s header is encrypted. This feature isn’t supported.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO17dataIsUnavailableA2CmF":{"name":"dataIsUnavailable","abstract":"

    Entry’s data isn’t available.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO017internalStructureD0A2CmF":{"name":"internalStructureError","abstract":"

    Unknown/incorrect internal 7-Zip structure was encountered or","parent_name":"SevenZipError"},"Enums/LZMA2Error.html#/s:13SWCompression10LZMA2ErrorO15wrongPropertiesA2CmF":{"name":"wrongProperties","abstract":"

    Reserved bits of LZMA2 properties’ byte aren’t equal to zero.

    ","parent_name":"LZMA2Error"},"Enums/LZMA2Error.html#/s:13SWCompression10LZMA2ErrorO19wrongDictionarySizeA2CmF":{"name":"wrongDictionarySize","abstract":"

    Dictionary size is too big.

    ","parent_name":"LZMA2Error"},"Enums/LZMA2Error.html#/s:13SWCompression10LZMA2ErrorO16wrongControlByteA2CmF":{"name":"wrongControlByte","abstract":"

    Unknown conrol byte value of LZMA2 packet.

    ","parent_name":"LZMA2Error"},"Enums/LZMA2Error.html#/s:13SWCompression10LZMA2ErrorO10wrongResetA2CmF":{"name":"wrongReset","abstract":"

    Unknown reset instruction encountered in LZMA2 packet.

    ","parent_name":"LZMA2Error"},"Enums/LZMA2Error.html#/s:13SWCompression10LZMA2ErrorO10wrongSizesA2CmF":{"name":"wrongSizes","abstract":"

    Either size of decompressed data isn’t equal to the one specified in LZMA2 packet or","parent_name":"LZMA2Error"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO15wrongPropertiesA2CmF":{"name":"wrongProperties","abstract":"

    Properties’ byte is greater than 225.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO21rangeDecoderInitErrorA2CmF":{"name":"rangeDecoderInitError","abstract":"

    Unable to initialize RanderDecorer.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO24exceededUncompressedSizeA2CmF":{"name":"exceededUncompressedSize","abstract":"

    Size of uncompressed data hit specified limit in the middle of decoding.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO13windowIsEmptyA2CmF":{"name":"windowIsEmpty","abstract":"

    Unable to perfrom repeat-distance decoding because there is nothing to repeat.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO23rangeDecoderFinishErrorA2CmF":{"name":"rangeDecoderFinishError","abstract":"

    End of stream marker is reached, but range decoder is in incorrect state.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO16repeatWillExceedA2CmF":{"name":"repeatWillExceed","abstract":"

    The number of bytes to repeat is greater than the amount bytes that is left to decode.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO17notEnoughToRepeatA2CmF":{"name":"notEnoughToRepeat","abstract":"

    The amount of already decoded bytes is smaller than repeat length.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO23decoderIsNotInitialisedA2CmF":{"name":"decoderIsNotInitialised","abstract":"

    LZMADecoder wasn’t properly initialized before decoding data.

    ","parent_name":"LZMAError"},"Enums/DeflateError.html#/s:13SWCompression12DeflateErrorO29wrongUncompressedBlockLengthsA2CmF":{"name":"wrongUncompressedBlockLengths","abstract":"

    Uncompressed block’s length and nlength bytes isn’t consistent with each other.

    ","parent_name":"DeflateError"},"Enums/DeflateError.html#/s:13SWCompression12DeflateErrorO14wrongBlockTypeA2CmF":{"name":"wrongBlockType","abstract":"

    Unknown block type (not 0, 1 or 2).

    ","parent_name":"DeflateError"},"Enums/DeflateError.html#/s:13SWCompression12DeflateErrorO11wrongSymbolA2CmF":{"name":"wrongSymbol","abstract":"

    Decoded symbol was found in Huffman tree but is unknown.

    ","parent_name":"DeflateError"},"Enums/DeflateError.html#/s:13SWCompression12DeflateErrorO14symbolNotFoundA2CmF":{"name":"symbolNotFound","abstract":"

    Symbol wasn’t found in Huffman tree.

    ","parent_name":"DeflateError"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO10wrongMagicA2CmF":{"name":"wrongMagic","abstract":"

    ‘Magic’ number is not 0x425a.

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO22wrongCompressionMethodA2CmF":{"name":"wrongCompressionMethod","abstract":"

    Compression method is not type ‘h’ (not Huffman).

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO14wrongBlockSizeA2CmF":{"name":"wrongBlockSize","abstract":"

    Unsupported block size (not from ‘0’ to ‘9’).

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO14wrongBlockTypeA2CmF":{"name":"wrongBlockType","abstract":"

    Unsupported block type (is neither ‘pi’ nor ‘sqrt(pi)’).

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO15randomizedBlockA2CmF":{"name":"randomizedBlock","abstract":"

    Block is randomized.

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO18wrongHuffmanGroupsA2CmF":{"name":"wrongHuffmanGroups","abstract":"

    Wrong number of Huffman tables/groups (should be between 2 and 6).

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO13wrongSelectorA2CmF":{"name":"wrongSelector","abstract":"

    Selector is greater than the total number of Huffman tables/groups.

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO22wrongHuffmanLengthCodeA2CmF":{"name":"wrongHuffmanLengthCode","abstract":"

    Wrong code of Huffman length (should be between 0 and 20).

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO14symbolNotFoundA2CmF":{"name":"symbolNotFound","abstract":"

    Symbol wasn’t found in Huffman tree.

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO8wrongCRCAC10Foundation4DataVcACmF":{"name":"wrongCRC","abstract":"

    Computed checksum of uncompressed data doesn’t match the value stored in archive.","parent_name":"BZip2Error"},"Enums/BZip2Error.html":{"name":"BZip2Error","abstract":"

    Represents an error, which happened during BZip2 decompression."},"Enums/DeflateError.html":{"name":"DeflateError","abstract":"

    Represents an error, which happened during Deflate compression or decompression."},"Enums/LZMAError.html":{"name":"LZMAError","abstract":"

    Represents an error, which happened during LZMA decompression."},"Enums/LZMA2Error.html":{"name":"LZMA2Error","abstract":"

    Represents an error, which happened during LZMA2 decompression."},"Enums/SevenZipError.html":{"name":"SevenZipError","abstract":"

    Represents an error, which happened during processing 7-Zip container."},"Enums/TarError.html":{"name":"TarError","abstract":"

    Represents an error, which happened during processing TAR container."},"Enums/ZipError.html":{"name":"ZipError","abstract":"

    Represents an error, which happened during processing ZIP container."},"Enums/GzipError.html":{"name":"GzipError","abstract":"

    Represents an error, which happened during processing GZip archive."},"Enums/XZError.html":{"name":"XZError","abstract":"

    Represents an error, which happened during unarchiving XZ archive."},"Enums/ZlibError.html":{"name":"ZlibError","abstract":"

    Represents an error, which happened during processing Zlib archive."},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC4nameSSv":{"name":"name","abstract":"

    Name of the file or directory.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC7commentSSSgv":{"name":"comment","abstract":"

    Comment associated with the entry.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC10attributess6UInt32Vv":{"name":"attributes","abstract":"

    File or directory attributes related to the file system of the container’s creator.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC4sizeSiv":{"name":"size","abstract":"

    Size of the data associated with the entry.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC11isDirectorySbv":{"name":"isDirectory","abstract":"

    True, if entry is a directory.","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC6isLinkSbv":{"name":"isLink","abstract":"

    True, if entry is a symbolic link.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC8linkPathSSSgv":{"name":"linkPath","abstract":"

    Path to a linked file for symbolic link entry.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC10isTextFileSbv":{"name":"isTextFile","abstract":"

    True if entry is likely to be text or ASCII file.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC15entryAttributess10DictionaryVySC16FileAttributeKeyVypGv":{"name":"entryAttributes","abstract":"

    Provides a dictionary with various attributes of the entry.","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC4data10Foundation4DataVyKF":{"name":"data()","abstract":"

    Returns data associated with this entry.

    ","parent_name":"ZipEntry"},"Classes/ZipContainer.html#/s:13SWCompression12ZipContainerC4openSayAA0C5Entry_pG10Foundation4DataV9container_tKFZ":{"name":"open(container:)","abstract":"

    Processes ZIP container and returns an array of ContainerEntry (which are actually ZipEntry).

    ","parent_name":"ZipContainer"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO6normalA2EmF":{"name":"normal","abstract":"

    Normal file.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO8hardLinkA2EmF":{"name":"hardLink","abstract":"

    Hard linked entry.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO12symbolicLinkA2EmF":{"name":"symbolicLink","abstract":"

    Symbolically linked entry.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO16characterSpecialA2EmF":{"name":"characterSpecial","abstract":"

    Character special file.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO12blockSpecialA2EmF":{"name":"blockSpecial","abstract":"

    Block special file.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO9directoryA2EmF":{"name":"directory","abstract":"

    Directory.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO4fifoA2EmF":{"name":"fifo","abstract":"

    FIFO special file.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO10contiguousA2EmF":{"name":"contiguous","abstract":"

    Contiguous file.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO20globalExtendedHeaderA2EmF":{"name":"globalExtendedHeader","abstract":"

    PAX global extended header. (Should not be encountered separately).

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO19localExtendedHeaderA2EmF":{"name":"localExtendedHeader","abstract":"

    PAX local extended header. (Should not be encountered separately).

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO23vendorUnknownOrReservedA2EmF":{"name":"vendorUnknownOrReserved","abstract":"

    Either unknown type, vendor specific or reserved value.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html":{"name":"EntryType","abstract":"

    Represents a type of an entry.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC4nameSSv":{"name":"name","abstract":"

    Name of the file or directory.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC11isDirectorySbv":{"name":"isDirectory","abstract":"

    True, if entry is a directory.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC4sizeSiv":{"name":"size","abstract":"

    Size of the data associated with the entry.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC15entryAttributess10DictionaryVySC16FileAttributeKeyVypGv":{"name":"entryAttributes","abstract":"

    Provides a dictionary with various attributes of the entry.","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC4modeSiSgv":{"name":"mode","abstract":"

    File mode.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC7ownerIDSiSgv":{"name":"ownerID","abstract":"

    Owner’s ID.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC7groupIDSiSgv":{"name":"groupID","abstract":"

    Owner’s group ID.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC16modificationTime10Foundation4DateVv":{"name":"modificationTime","abstract":"

    The most recent modification time of the original file or directory.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC4typeAC0C4TypeOv":{"name":"type","abstract":"

    Type of entry.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC13ownerUserNameSSSgv":{"name":"ownerUserName","abstract":"

    Owner’s user name.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC14ownerGroupNameSSSgv":{"name":"ownerGroupName","abstract":"

    Owner’s group name.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC10accessTime10Foundation4DateVSgv":{"name":"accessTime","abstract":"

    The most recent access time of the original file or directory (PAX only).

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC12creationTime10Foundation4DateVSgv":{"name":"creationTime","abstract":"

    The creation time of the original file or directory (PAX only).

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC7charsetSSSgv":{"name":"charset","abstract":"

    Name of the character set used to encode entry’s data (PAX only).

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC7commentSSSgv":{"name":"comment","abstract":"

    Comment associated with the entry (PAX only).

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC6isLinkSbv":{"name":"isLink","abstract":"

    True if entry is a symbolic link.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC8linkPathSSSgv":{"name":"linkPath","abstract":"

    Path to a linked file for symbolic link entry.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC28unknownExtendedHeaderEntriess10DictionaryVyS2SGv":{"name":"unknownExtendedHeaderEntries","abstract":"

    Other entries from PAX extended headers.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC4data10Foundation4DataVyF":{"name":"data()","abstract":"

    Returns data associated with this entry.

    ","parent_name":"TarEntry"},"Classes/TarContainer.html#/s:13SWCompression12TarContainerC4openSayAA0C5Entry_pG10Foundation4DataV9container_tKFZ":{"name":"open(container:)","abstract":"

    Processes TAR container and returns an array of ContainerEntry (which are actually TarEntry).

    ","parent_name":"TarContainer"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO4fifoA2EmF":{"name":"fifo","abstract":"

    FIFO special file.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO16characterSpecialA2EmF":{"name":"characterSpecial","abstract":"

    Character special file.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO9directoryA2EmF":{"name":"directory","abstract":"

    Directory.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO12blockSpecialA2EmF":{"name":"blockSpecial","abstract":"

    Block special file.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO7regularA2EmF":{"name":"regular","abstract":"

    Regular file.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO12symbolicLinkA2EmF":{"name":"symbolicLink","abstract":"

    Symbolic link.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO6socketA2EmF":{"name":"socket","abstract":"

    Socket.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV8rawValues6UInt32Vv":{"name":"rawValue","abstract":"

    Raw bit flags value.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesVAEs6UInt32V8rawValue_tcfc":{"name":"init(rawValue:)","abstract":"

    Initializes attributes with bit flags.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV7archiveAEvZ":{"name":"archive","abstract":"

    File is archive or archived.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV9directoryAEvZ":{"name":"directory","abstract":"

    File is a directory.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV6volumeAEvZ":{"name":"volume","abstract":"

    File is a volume.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV6systemAEvZ":{"name":"system","abstract":"

    File is a system file.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV6hiddenAEvZ":{"name":"hidden","abstract":"

    File is hidden.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV8readOnlyAEvZ":{"name":"readOnly","abstract":"

    File is read-only.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV8rawValues6UInt32Vv":{"name":"rawValue","abstract":"

    Raw bit flags value (in decimal).

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsVAEs6UInt32V8rawValue_tcfc":{"name":"init(rawValue:)","abstract":"

    Initializes permissions with bit flags in decimal.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV6setuidAEvZ":{"name":"setuid","abstract":"

    Set UID.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV6setgidAEvZ":{"name":"setgid","abstract":"

    Set GID.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV6stickyAEvZ":{"name":"sticky","abstract":"

    Sticky bit.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV9readOwnerAEvZ":{"name":"readOwner","abstract":"

    Owner can read.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV10writeOwnerAEvZ":{"name":"writeOwner","abstract":"

    Owner can write.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV12executeOwnerAEvZ":{"name":"executeOwner","abstract":"

    Owner can execute.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV9readGroupAEvZ":{"name":"readGroup","abstract":"

    Group can read.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV10writeGroupAEvZ":{"name":"writeGroup","abstract":"

    Group can write.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV12executeGroupAEvZ":{"name":"executeGroup","abstract":"

    Group can execute.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV9readOtherAEvZ":{"name":"readOther","abstract":"

    Others can read.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV10writeOtherAEvZ":{"name":"writeOther","abstract":"

    Others can write.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV12executeOtherAEvZ":{"name":"executeOther","abstract":"

    Others can execute.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html":{"name":"Permissions","abstract":"

    Represents file access permissions in UNIX format.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo/DosAttributes.html":{"name":"DosAttributes","abstract":"

    Represents file attributes in DOS format.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo/UnixType.html":{"name":"UnixType","abstract":"

    Represents file type in UNIX format.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV4nameSSSgv":{"name":"name","abstract":"

    Entry’s name.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV4sizeSiSgv":{"name":"size","abstract":"

    Entry’s data size.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV11isDirectorySbv":{"name":"isDirectory","abstract":"

    True, if entry is a directory.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV10accessTime10Foundation4DateVSgv":{"name":"accessTime","abstract":"

    Entry’s last access time and date.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV12creationTime10Foundation4DateVSgv":{"name":"creationTime","abstract":"

    Entry’s creation time and date.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV16modificationTime10Foundation4DateVSgv":{"name":"modificationTime","abstract":"

    Entry’s last modification time and date.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV13winAttributess6UInt32VSgv":{"name":"winAttributes","abstract":"

    7-Zip internal property which may contain UNIX permissions, type and/or DOS attributes.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV11permissionsAC11PermissionsVSgv":{"name":"permissions","abstract":"

    Entry’s UNIX file access permissions.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV13dosAttributesAC03DosG0VSgv":{"name":"dosAttributes","abstract":"

    Entry’s DOS attributes.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV8unixTypeAC04UnixG0OSgv":{"name":"unixType","abstract":"

    Entry’s UNIX file type.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV9hasStreamSbv":{"name":"hasStream","abstract":"

    7-Zip internal propety. Indicates whether entry has a stream (data) inside container.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV7isEmptySbv":{"name":"isEmpty","abstract":"

    True, if entry is an empty file. 7-Zip internal property.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV6isAntiSbv":{"name":"isAnti","abstract":"

    True if entry is an anti-file.","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV3crcs6UInt32VSgv":{"name":"crc","abstract":"

    CRC32 of entry’s data.

    ","parent_name":"SevenZipEntryInfo"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC4infoAA0bcD4InfoVv":{"name":"info","abstract":"

    Various information about entry.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC4nameSSv":{"name":"name","abstract":"

    Entry’s name.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC4sizeSiv":{"name":"size","abstract":"

    Entry’s data size.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC11isDirectorySbv":{"name":"isDirectory","abstract":"

    True, if entry is a directory.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC6isLinkSbv":{"name":"isLink","abstract":"

    True, if entry is a symbolic link.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC8linkPathSSSgv":{"name":"linkPath","abstract":"

    Path to a linked file for symbolic link entry.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC15entryAttributess10DictionaryVySC16FileAttributeKeyVypGv":{"name":"entryAttributes","abstract":"

    Provides a dictionary with various attributes of the entry.","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC15dataIsAvailableSbv":{"name":"dataIsAvailable","abstract":"

    True, if data for entry is available.","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC4data10Foundation4DataVyKF":{"name":"data()","abstract":"

    Returns data associated with this entry.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipContainer.html#/s:13SWCompression17SevenZipContainerC4openSayAA0D5Entry_pG10Foundation4DataV9container_tKFZ":{"name":"open(container:)","abstract":"

    Processes 7-Zip container and returns an array of ContainerEntry (which are actually SevenZipEntry).

    ","parent_name":"SevenZipContainer"},"Classes/SevenZipContainer.html#/s:13SWCompression17SevenZipContainerC4infoSayAA0bC9EntryInfoVG10Foundation4DataV9container_tKFZ":{"name":"info(container:)","abstract":"

    Processes ZIP container and returns an array of SevenZipEntryInfo,","parent_name":"SevenZipContainer"},"Classes/SevenZipContainer.html":{"name":"SevenZipContainer","abstract":"

    Provides open functions for 7-Zip containers.

    "},"Classes/SevenZipEntry.html":{"name":"SevenZipEntry","abstract":"

    Represents an entry in 7-Zip container.

    "},"Structs/SevenZipEntryInfo.html":{"name":"SevenZipEntryInfo","abstract":"

    Provides information about 7-Zip entry.

    "},"Classes/TarContainer.html":{"name":"TarContainer","abstract":"

    Provides open function for TAR containers.

    "},"Classes/TarEntry.html":{"name":"TarEntry","abstract":"

    Represents either a file or directory entry in TAR container.

    "},"Classes/ZipContainer.html":{"name":"ZipContainer","abstract":"

    Provides open function for ZIP containers.

    "},"Classes/ZipEntry.html":{"name":"ZipEntry","abstract":"

    Represents either a file or directory entry in ZIP container.

    "},"Structs/ZlibHeader/CompressionLevel.html#/s:13SWCompression10ZlibHeaderV16CompressionLevelO16fastestAlgorithmA2EmF":{"name":"fastestAlgorithm","abstract":"

    Fastest algorithm.

    ","parent_name":"CompressionLevel"},"Structs/ZlibHeader/CompressionLevel.html#/s:13SWCompression10ZlibHeaderV16CompressionLevelO13fastAlgorithmA2EmF":{"name":"fastAlgorithm","abstract":"

    Fast algorithm.

    ","parent_name":"CompressionLevel"},"Structs/ZlibHeader/CompressionLevel.html#/s:13SWCompression10ZlibHeaderV16CompressionLevelO16defaultAlgorithmA2EmF":{"name":"defaultAlgorithm","abstract":"

    Default algorithm.

    ","parent_name":"CompressionLevel"},"Structs/ZlibHeader/CompressionLevel.html#/s:13SWCompression10ZlibHeaderV16CompressionLevelO13slowAlgorithmA2EmF":{"name":"slowAlgorithm","abstract":"

    Slowest algorithm but with maximum compression.

    ","parent_name":"CompressionLevel"},"Structs/ZlibHeader/CompressionMethod.html#/s:13SWCompression10ZlibHeaderV17CompressionMethodO7deflateA2EmF":{"name":"deflate","abstract":"

    The only one supported compression method (Deflate).

    ","parent_name":"CompressionMethod"},"Structs/ZlibHeader/CompressionMethod.html":{"name":"CompressionMethod","abstract":"

    Supported compression methods in zlib archive.

    ","parent_name":"ZlibHeader"},"Structs/ZlibHeader/CompressionLevel.html":{"name":"CompressionLevel","abstract":"

    Levels of compression which can be used to create Zlib archive.

    ","parent_name":"ZlibHeader"},"Structs/ZlibHeader.html#/s:13SWCompression10ZlibHeaderV17compressionMethodAC011CompressionE0Ov":{"name":"compressionMethod","abstract":"

    Compression method of archive. Currently, always equals to .deflate.

    ","parent_name":"ZlibHeader"},"Structs/ZlibHeader.html#/s:13SWCompression10ZlibHeaderV16compressionLevelAC011CompressionE0Ov":{"name":"compressionLevel","abstract":"

    Level of compression used in archive.

    ","parent_name":"ZlibHeader"},"Structs/ZlibHeader.html#/s:13SWCompression10ZlibHeaderV10windowSizeSiv":{"name":"windowSize","abstract":"

    Size of ‘window’: moving interval of data which was used to make archive.

    ","parent_name":"ZlibHeader"},"Structs/ZlibHeader.html#/s:13SWCompression10ZlibHeaderVAC10Foundation4DataV7archive_tKcfc":{"name":"init(archive:)","abstract":"

    Initializes the structure with the values from Zlib archive.

    ","parent_name":"ZlibHeader"},"Classes/ZlibArchive.html#/s:13SWCompression11ZlibArchiveC9unarchive10Foundation4DataVAG7archive_tKFZ":{"name":"unarchive(archive:)","abstract":"

    Unarchives Zlib archive.

    ","parent_name":"ZlibArchive"},"Classes/ZlibArchive.html#/s:13SWCompression11ZlibArchiveC7archive10Foundation4DataVAG4data_tFZ":{"name":"archive(data:)","abstract":"

    Archives data into Zlib archive.","parent_name":"ZlibArchive"},"Classes/XZArchive.html#/s:13SWCompression9XZArchiveC9unarchive10Foundation4DataVAG7archive_tKFZ":{"name":"unarchive(archive:)","abstract":"

    Unarchives XZ archive.

    ","parent_name":"XZArchive"},"Classes/XZArchive.html#/s:13SWCompression9XZArchiveC14multiUnarchiveSay10Foundation4DataVGAG7archive_tKFZ":{"name":"multiUnarchive(archive:)","abstract":"

    Unarchives XZ archive which contains one or more streams.

    ","parent_name":"XZArchive"},"Structs/GzipHeader/FileSystemType.html#/s:13SWCompression10GzipHeaderV14FileSystemTypeO4unixA2EmF":{"name":"unix","abstract":"

    One of many UNIX-like systems.

    ","parent_name":"FileSystemType"},"Structs/GzipHeader/FileSystemType.html#/s:13SWCompression10GzipHeaderV14FileSystemTypeO9macintoshA2EmF":{"name":"macintosh","abstract":"

    Older Macintosh systems.

    ","parent_name":"FileSystemType"},"Structs/GzipHeader/FileSystemType.html#/s:13SWCompression10GzipHeaderV14FileSystemTypeO4ntfsA2EmF":{"name":"ntfs","abstract":"

    File system used in Microsoft™®© Windows™®©.

    ","parent_name":"FileSystemType"},"Structs/GzipHeader/FileSystemType.html#/s:13SWCompression10GzipHeaderV14FileSystemTypeO7unknownA2EmF":{"name":"unknown","abstract":"

    File system was unknown to the archiver.

    ","parent_name":"FileSystemType"},"Structs/GzipHeader/FileSystemType.html#/s:13SWCompression10GzipHeaderV14FileSystemTypeO5otherA2EmF":{"name":"other","abstract":"

    File system is one of the rare systems.

    ","parent_name":"FileSystemType"},"Structs/GzipHeader/CompressionMethod.html#/s:13SWCompression10GzipHeaderV17CompressionMethodO7deflateA2EmF":{"name":"deflate","abstract":"

    The only one supported compression method (Deflate).

    ","parent_name":"CompressionMethod"},"Structs/GzipHeader/CompressionMethod.html":{"name":"CompressionMethod","abstract":"

    Supported compression methods in GZip archive.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader/FileSystemType.html":{"name":"FileSystemType","abstract":"

    Type of file system on which GZip archive was created.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderV17compressionMethodAC011CompressionE0Ov":{"name":"compressionMethod","abstract":"

    Compression method of archive. Currently, always equals to .deflate.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderV16modificationTime10Foundation4DateVSgv":{"name":"modificationTime","abstract":"

    The most recent modification time of the original file.","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderV6osTypeAC010FileSystemE0Ov":{"name":"osType","abstract":"

    Type of file system on which archivation took place.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderV8fileNameSSSgv":{"name":"fileName","abstract":"

    Name of the original file. If archive doesn’t contain file’s name, then nil.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderV7commentSSSgv":{"name":"comment","abstract":"

    Comment stored in archive. If archive doesn’t contain any comment, then nil.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderV10isTextFileSbv":{"name":"isTextFile","abstract":"

    Check if file is likely to be text file or ASCII-file.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderVAC10Foundation4DataV7archive_tKcfc":{"name":"init(archive:)","abstract":"

    Initializes the structure with the values from the first ‘member’ of GZip archive.

    ","parent_name":"GzipHeader"},"Classes/GzipArchive/Member.html#/s:13SWCompression11GzipArchiveC6MemberV6headerAA0B6HeaderVv":{"name":"header","abstract":"

    GZip header of a member.

    ","parent_name":"Member"},"Classes/GzipArchive/Member.html#/s:13SWCompression11GzipArchiveC6MemberV4data10Foundation4DataVv":{"name":"data","abstract":"

    Unarchived data from a member.

    ","parent_name":"Member"},"Classes/GzipArchive/Member.html":{"name":"Member","abstract":"

    Represents a member of multi-member of GZip archive.

    ","parent_name":"GzipArchive"},"Classes/GzipArchive.html#/s:13SWCompression11GzipArchiveC9unarchive10Foundation4DataVAG7archive_tKFZ":{"name":"unarchive(archive:)","abstract":"

    Unarchives GZip archive.

    ","parent_name":"GzipArchive"},"Classes/GzipArchive.html#/s:13SWCompression11GzipArchiveC14multiUnarchiveSayAC6MemberVG10Foundation4DataV7archive_tKFZ":{"name":"multiUnarchive(archive:)","abstract":"

    Unarchives multi-member GZip archive.","parent_name":"GzipArchive"},"Classes/GzipArchive.html#/s:13SWCompression11GzipArchiveC7archive10Foundation4DataVAG4data_SSSg7commentAI8fileNameSb14writeHeaderCRCSb10isTextFileAA0bL0V0P10SystemTypeOSg02osR0AE4DateVSg16modificationTimetKFZ":{"name":"archive(data:comment:fileName:writeHeaderCRC:isTextFile:osType:modificationTime:)","abstract":"

    Archives data into GZip archive, using various specified options.","parent_name":"GzipArchive"},"Classes/GzipArchive.html":{"name":"GzipArchive","abstract":"

    Provides unarchive and archive functions for GZip archives.

    "},"Structs/GzipHeader.html":{"name":"GzipHeader","abstract":"

    Represents a GZip archive’s header.

    "},"Classes/XZArchive.html":{"name":"XZArchive","abstract":"

    Provides unarchive function for XZ archives.

    "},"Classes/ZlibArchive.html":{"name":"ZlibArchive","abstract":"

    Provides unarchive and archive functions for Zlib archives.

    "},"Structs/ZlibHeader.html":{"name":"ZlibHeader","abstract":"

    Represents a Zlib archive’s header.

    "},"Classes/LZMA2.html#/s:13SWCompression5LZMA2C10decompress10Foundation4DataVAG4data_tKFZ":{"name":"decompress(data:)","abstract":"

    Decompresses data using LZMA2 algortihm.

    ","parent_name":"LZMA2"},"Classes/LZMA.html#/s:13SWCompression4LZMAC10decompress10Foundation4DataVAG4data_tKFZ":{"name":"decompress(data:)","abstract":"

    Decompresses data using LZMA algortihm.

    ","parent_name":"LZMA"},"Classes/Deflate.html#/s:13SWCompression7DeflateC10decompress10Foundation4DataVAG4data_tKFZ":{"name":"decompress(data:)","abstract":"

    Decompresses data using Deflate algortihm.

    ","parent_name":"Deflate"},"Classes/Deflate.html#/s:13SWCompression7DeflateC8compress10Foundation4DataVAG4data_tFZ":{"name":"compress(data:)","abstract":"

    Compresses data with Deflate algortihm.

    ","parent_name":"Deflate"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO3oneA2EmF":{"name":"one","abstract":"

    Undocumented

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO3twoA2EmF":{"name":"two","abstract":"

    Undocumented

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO5threeA2EmF":{"name":"three","abstract":"

    Undocumented

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO4fourA2EmF":{"name":"four","abstract":"

    Undocumented

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO4fiveA2EmF":{"name":"five","abstract":"

    Undocumented

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO3sixA2EmF":{"name":"six","abstract":"

    Undocumented

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO5sevenA2EmF":{"name":"seven","abstract":"

    Undocumented

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO5eightA2EmF":{"name":"eight","abstract":"

    Undocumented

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO4nineA2EmF":{"name":"nine","abstract":"

    Undocumented

    ","parent_name":"BlockSize"},"Classes/BZip2.html#/s:13SWCompression5BZip2C10decompress10Foundation4DataVAG4data_tKFZ":{"name":"decompress(data:)","abstract":"

    Decompresses data using BZip2 algortihm.

    ","parent_name":"BZip2"},"Classes/BZip2.html#/s:13SWCompression20CompressionAlgorithmP8compress10Foundation4DataVAG4data_tKFZ":{"name":"compress(data:)","parent_name":"BZip2"},"Classes/BZip2.html#/s:13SWCompression5BZip2C8compress10Foundation4DataVAG4data_AC9BlockSizeO05blockH0tFZ":{"name":"compress(data:blockSize:)","abstract":"

    Undocumented

    ","parent_name":"BZip2"},"Classes/BZip2/BlockSize.html":{"name":"BlockSize","abstract":"

    Undocumented

    ","parent_name":"BZip2"},"Classes/BZip2.html":{"name":"BZip2","abstract":"

    Provides decompression function for BZip2 algorithm.

    "},"Classes/Deflate.html":{"name":"Deflate","abstract":"

    Provides compression and decompression functions for Deflate algorithm.

    "},"Classes/LZMA.html":{"name":"LZMA","abstract":"

    Provides decompression function for LZMA algorithm.

    "},"Classes/LZMA2.html":{"name":"LZMA2","abstract":"

    Provides decompression function for LZMA2 algorithm.

    "},"Compression.html":{"name":"Compression"},"Archives.html":{"name":"Archives"},"Containers.html":{"name":"Containers"},"Errors.html":{"name":"Errors"},"Protocols.html":{"name":"Protocols"}} \ No newline at end of file +{"Protocols/DecompressionAlgorithm.html#/s:13SWCompression22DecompressionAlgorithmP10decompress10Foundation4DataVAG4data_tKFZ":{"name":"decompress(data:)","abstract":"

    Decompress data compressed with particular algorithm.

    ","parent_name":"DecompressionAlgorithm"},"Protocols/CompressionAlgorithm.html#/s:13SWCompression20CompressionAlgorithmP8compress10Foundation4DataVAG4data_tKFZ":{"name":"compress(data:)","abstract":"

    Cmpress data with particular algorithm.

    ","parent_name":"CompressionAlgorithm"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP4nameSSv":{"name":"name","abstract":"

    Retrieve name of the entry from the container.

    ","parent_name":"ContainerEntry"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP4sizeSiv":{"name":"size","abstract":"

    Retrieve size of the entry’s data from the container.

    ","parent_name":"ContainerEntry"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP11isDirectorySbv":{"name":"isDirectory","abstract":"

    True, if entry is a directory.

    ","parent_name":"ContainerEntry"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP6isLinkSbv":{"name":"isLink","abstract":"

    True, if entry is a symbolic link.

    ","parent_name":"ContainerEntry"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP8linkPathSSSgv":{"name":"linkPath","abstract":"

    Path to a linked file for symbolic link entry.

    ","parent_name":"ContainerEntry"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP15entryAttributess10DictionaryVySC16FileAttributeKeyVypGv":{"name":"entryAttributes","abstract":"

    Provides a dictionary with various attributes of the entry.","parent_name":"ContainerEntry"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP4data10Foundation4DataVyKF":{"name":"data()","abstract":"

    Retrieve entry’s data from the container.

    ","parent_name":"ContainerEntry"},"Protocols/Container.html#/s:13SWCompression9ContainerP4openSayAA0B5Entry_pG10Foundation4DataV9container_tKFZ":{"name":"open(container:)","abstract":"

    Retrieve all the entries from the container.

    ","parent_name":"Container"},"Protocols/Archive.html#/s:13SWCompression7ArchiveP9unarchive10Foundation4DataVAG7archive_tKFZ":{"name":"unarchive(archive:)","abstract":"

    Unarchive data from the archive.

    ","parent_name":"Archive"},"Protocols/Archive.html":{"name":"Archive","abstract":"

    A type that represents an archive.

    "},"Protocols/Container.html":{"name":"Container","abstract":"

    A type that represents a container of files, directories and/or other data.

    "},"Protocols/ContainerEntry.html":{"name":"ContainerEntry","abstract":"

    A type that represents an entry from a container (file or directory) with attributes.

    "},"Protocols/CompressionAlgorithm.html":{"name":"CompressionAlgorithm","abstract":"

    A type that provides an implementation of a particular compression algorithm.

    "},"Protocols/DecompressionAlgorithm.html":{"name":"DecompressionAlgorithm","abstract":"

    A type that provides an implementation of a particular decompression algorithm.

    "},"Enums/ZlibError.html#/s:13SWCompression9ZlibErrorO22wrongCompressionMethodA2CmF":{"name":"wrongCompressionMethod","abstract":"

    Compression method used in archive is different from Deflate, which is the only supported one.

    ","parent_name":"ZlibError"},"Enums/ZlibError.html#/s:13SWCompression9ZlibErrorO20wrongCompressionInfoA2CmF":{"name":"wrongCompressionInfo","abstract":"

    Compression info has value incompatible with Deflate compression method.

    ","parent_name":"ZlibError"},"Enums/ZlibError.html#/s:13SWCompression9ZlibErrorO11wrongFcheckA2CmF":{"name":"wrongFcheck","abstract":"

    First two bytes of archive’s flags are inconsistent with each other.

    ","parent_name":"ZlibError"},"Enums/ZlibError.html#/s:13SWCompression9ZlibErrorO21wrongCompressionLevelA2CmF":{"name":"wrongCompressionLevel","abstract":"

    Compression level has value, which is different from the supported ones.

    ","parent_name":"ZlibError"},"Enums/ZlibError.html#/s:13SWCompression9ZlibErrorO12wrongAdler32AC10Foundation4DataVcACmF":{"name":"wrongAdler32","abstract":"

    Computed checksum of uncompressed data doesn’t match the value stored in archive.","parent_name":"ZlibError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO10wrongMagicA2CmF":{"name":"wrongMagic","abstract":"

    Either ‘magic’ number in header or footer isn’t equal to a predefined value.

    ","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO15wrongFieldValueA2CmF":{"name":"wrongFieldValue","abstract":"

    One of the fields in archive has an incorrect value.

    ","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO18fieldReservedValueA2CmF":{"name":"fieldReservedValue","abstract":"

    One of the reserved fields in archive has an unexpected value, which can also mean (apart from damaged archive),","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO12wrongInfoCRCA2CmF":{"name":"wrongInfoCRC","abstract":"

    Checksum of one of the fields of archive doesn’t match the value stored in archive.

    ","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO13wrongFilterIDA2CmF":{"name":"wrongFilterID","abstract":"

    Filter used in archvie is unsupported.

    ","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO15checkTypeSHA256A2CmF":{"name":"checkTypeSHA256","abstract":"

    Archive uses SHA-256 checksum which is unsupported.

    ","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO13wrongDataSizeA2CmF":{"name":"wrongDataSize","abstract":"

    Either size of decompressed data isn’t equal to the one specified in archive or","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO10wrongCheckAC10Foundation4DataVcACmF":{"name":"wrongCheck","abstract":"

    Computed checksum of uncompressed data doesn’t match the value stored in the archive.","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO12wrongPaddingA2CmF":{"name":"wrongPadding","abstract":"

    Padding (null-bytes appended to an archive’s structure) is incorrect.

    ","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO21multiByteIntegerErrorA2CmF":{"name":"multiByteIntegerError","abstract":"

    Either null byte encountered or exceeded maximum amount bytes during reading multi byte number.

    ","parent_name":"XZError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO10wrongMagicA2CmF":{"name":"wrongMagic","abstract":"

    First two bytes (‘magic’ number) of archive isn’t 31 and 139.

    ","parent_name":"GzipError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO22wrongCompressionMethodA2CmF":{"name":"wrongCompressionMethod","abstract":"

    Compression method used in archive is different from Deflate, which is the only supported one.

    ","parent_name":"GzipError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO10wrongFlagsA2CmF":{"name":"wrongFlags","abstract":"

    One of the reserved fields in archive has an unexpected value, which can also mean (apart from damaged archive),","parent_name":"GzipError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO14wrongHeaderCRCA2CmF":{"name":"wrongHeaderCRC","abstract":"

    Computed CRC of archive’s header doesn’t match the value stored in archive.

    ","parent_name":"GzipError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO8wrongCRCAC10Foundation4DataVcACmF":{"name":"wrongCRC","abstract":"

    Computed checksum of uncompressed data doesn’t match the value stored in archive.","parent_name":"GzipError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO10wrongISizeA2CmF":{"name":"wrongISize","abstract":"

    Computed ‘isize’ didn’t match the value stored in the archive.

    ","parent_name":"GzipError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO21cannotEncodeISOLatin1A2CmF":{"name":"cannotEncodeISOLatin1","abstract":"

    Either specified file name or comment cannot be encoded using ISO Latin-1 encoding.

    ","parent_name":"GzipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO27notFoundCentralDirectoryEndA2CmF":{"name":"notFoundCentralDirectoryEnd","abstract":"

    End of Central Directoty record wasn’t found.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO14wrongSignatureA2CmF":{"name":"wrongSignature","abstract":"

    Wrong signature of one of container’s structures.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO9wrongSizeA2CmF":{"name":"wrongSize","abstract":"

    Wrong either compressed or uncompressed size of a container’s entry.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO12wrongVersionA2CmF":{"name":"wrongVersion","abstract":"

    Version needed to process container is unsupported.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO24multiVolumesNotSupportedA2CmF":{"name":"multiVolumesNotSupported","abstract":"

    Container is either spanned or consists of several volumes. These features aren’t supported.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO22encryptionNotSupportedA2CmF":{"name":"encryptionNotSupported","abstract":"

    Entry or record is encrypted. This feature isn’t supported.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO20patchingNotSupportedA2CmF":{"name":"patchingNotSupported","abstract":"

    Entry contains patched data. This feature isn’t supported.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO23compressionNotSupportedA2CmF":{"name":"compressionNotSupported","abstract":"

    Entry is compressed using unsupported compression method.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO16wrongLocalHeaderA2CmF":{"name":"wrongLocalHeader","abstract":"

    Local header of an entry is inconsistent with Central Directory.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO10wrongCRC32AC10Foundation4DataVcACmF":{"name":"wrongCRC32","abstract":"

    Computed checksum of entry’s data doesn’t match the value stored in container.","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO14wrongTextFieldA2CmF":{"name":"wrongTextField","abstract":"

    Either entry’s comment or file name cannot be processed using UTF-8 encoding.

    ","parent_name":"ZipError"},"Enums/TarError.html#/s:13SWCompression8TarErrorO20tooSmallFileIsPassedA2CmF":{"name":"tooSmallFileIsPassed","abstract":"

    Size of data is too small, even to contain only one header.

    ","parent_name":"TarError"},"Enums/TarError.html#/s:13SWCompression8TarErrorO16fieldIsNotNumberA2CmF":{"name":"fieldIsNotNumber","abstract":"

    Failed to process a field as a number.

    ","parent_name":"TarError"},"Enums/TarError.html#/s:13SWCompression8TarErrorO19wrongHeaderChecksumA2CmF":{"name":"wrongHeaderChecksum","abstract":"

    Computed checksum of a header doesn’t match the value stored in container.

    ","parent_name":"TarError"},"Enums/TarError.html#/s:13SWCompression8TarErrorO17wrongUstarVersionA2CmF":{"name":"wrongUstarVersion","abstract":"

    Unsupported version of USTAR format.

    ","parent_name":"TarError"},"Enums/TarError.html#/s:13SWCompression8TarErrorO19wrongPaxHeaderEntryA2CmF":{"name":"wrongPaxHeaderEntry","abstract":"

    Entry from PAX extended header is in incorrect format.

    ","parent_name":"TarError"},"Enums/TarError.html#/s:13SWCompression8TarErrorO14notAsciiStringA2CmF":{"name":"notAsciiString","abstract":"

    Failed to process a field as an ASCII string.

    ","parent_name":"TarError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO14wrongSignatureA2CmF":{"name":"wrongSignature","abstract":"

    Wrong container’s signature.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO18wrongFormatVersionA2CmF":{"name":"wrongFormatVersion","abstract":"

    Unsupporte version of container’s format.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO8wrongCRCA2CmF":{"name":"wrongCRC","abstract":"

    CRC either of one of the files from the container","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO9wrongSizeA2CmF":{"name":"wrongSize","abstract":"

    Size either of one of the files from the container","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO20startPosNotSupportedA2CmF":{"name":"startPosNotSupported","abstract":"

    Files have StartPos property. This feature isn’t supported.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO20externalNotSupportedA2CmF":{"name":"externalNotSupported","abstract":"

    External feature isn’t supported.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO23multiStreamNotSupportedA2CmF":{"name":"multiStreamNotSupported","abstract":"

    Coders with multiple in and/or out streams aren’t supported.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO29additionalStreamsNotSupportedA2CmF":{"name":"additionalStreamsNotSupported","abstract":"

    Additional streams feature isn’t supported.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO23compressionNotSupportedA2CmF":{"name":"compressionNotSupported","abstract":"

    Entry is compressed using unsupported compression method.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO22encryptionNotSupportedA2CmF":{"name":"encryptionNotSupported","abstract":"

    Entry or container’s header is encrypted. This feature isn’t supported.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO17dataIsUnavailableA2CmF":{"name":"dataIsUnavailable","abstract":"

    Entry’s data isn’t available.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO017internalStructureD0A2CmF":{"name":"internalStructureError","abstract":"

    Unknown/incorrect internal 7-Zip structure was encountered or","parent_name":"SevenZipError"},"Enums/LZMA2Error.html#/s:13SWCompression10LZMA2ErrorO15wrongPropertiesA2CmF":{"name":"wrongProperties","abstract":"

    Reserved bits of LZMA2 properties’ byte aren’t equal to zero.

    ","parent_name":"LZMA2Error"},"Enums/LZMA2Error.html#/s:13SWCompression10LZMA2ErrorO19wrongDictionarySizeA2CmF":{"name":"wrongDictionarySize","abstract":"

    Dictionary size is too big.

    ","parent_name":"LZMA2Error"},"Enums/LZMA2Error.html#/s:13SWCompression10LZMA2ErrorO16wrongControlByteA2CmF":{"name":"wrongControlByte","abstract":"

    Unknown conrol byte value of LZMA2 packet.

    ","parent_name":"LZMA2Error"},"Enums/LZMA2Error.html#/s:13SWCompression10LZMA2ErrorO10wrongResetA2CmF":{"name":"wrongReset","abstract":"

    Unknown reset instruction encountered in LZMA2 packet.

    ","parent_name":"LZMA2Error"},"Enums/LZMA2Error.html#/s:13SWCompression10LZMA2ErrorO10wrongSizesA2CmF":{"name":"wrongSizes","abstract":"

    Either size of decompressed data isn’t equal to the one specified in LZMA2 packet or","parent_name":"LZMA2Error"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO15wrongPropertiesA2CmF":{"name":"wrongProperties","abstract":"

    Properties’ byte is greater than 225.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO21rangeDecoderInitErrorA2CmF":{"name":"rangeDecoderInitError","abstract":"

    Unable to initialize RanderDecorer.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO24exceededUncompressedSizeA2CmF":{"name":"exceededUncompressedSize","abstract":"

    Size of uncompressed data hit specified limit in the middle of decoding.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO13windowIsEmptyA2CmF":{"name":"windowIsEmpty","abstract":"

    Unable to perfrom repeat-distance decoding because there is nothing to repeat.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO23rangeDecoderFinishErrorA2CmF":{"name":"rangeDecoderFinishError","abstract":"

    End of stream marker is reached, but range decoder is in incorrect state.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO16repeatWillExceedA2CmF":{"name":"repeatWillExceed","abstract":"

    The number of bytes to repeat is greater than the amount bytes that is left to decode.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO17notEnoughToRepeatA2CmF":{"name":"notEnoughToRepeat","abstract":"

    The amount of already decoded bytes is smaller than repeat length.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO23decoderIsNotInitialisedA2CmF":{"name":"decoderIsNotInitialised","abstract":"

    LZMADecoder wasn’t properly initialized before decoding data.

    ","parent_name":"LZMAError"},"Enums/DeflateError.html#/s:13SWCompression12DeflateErrorO29wrongUncompressedBlockLengthsA2CmF":{"name":"wrongUncompressedBlockLengths","abstract":"

    Uncompressed block’s length and nlength bytes isn’t consistent with each other.

    ","parent_name":"DeflateError"},"Enums/DeflateError.html#/s:13SWCompression12DeflateErrorO14wrongBlockTypeA2CmF":{"name":"wrongBlockType","abstract":"

    Unknown block type (not 0, 1 or 2).

    ","parent_name":"DeflateError"},"Enums/DeflateError.html#/s:13SWCompression12DeflateErrorO11wrongSymbolA2CmF":{"name":"wrongSymbol","abstract":"

    Decoded symbol was found in Huffman tree but is unknown.

    ","parent_name":"DeflateError"},"Enums/DeflateError.html#/s:13SWCompression12DeflateErrorO14symbolNotFoundA2CmF":{"name":"symbolNotFound","abstract":"

    Symbol wasn’t found in Huffman tree.

    ","parent_name":"DeflateError"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO10wrongMagicA2CmF":{"name":"wrongMagic","abstract":"

    ‘Magic’ number is not 0x425a.

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO22wrongCompressionMethodA2CmF":{"name":"wrongCompressionMethod","abstract":"

    Compression method is not type ‘h’ (not Huffman).

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO14wrongBlockSizeA2CmF":{"name":"wrongBlockSize","abstract":"

    Unsupported block size (not from ‘0’ to ‘9’).

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO14wrongBlockTypeA2CmF":{"name":"wrongBlockType","abstract":"

    Unsupported block type (is neither ‘pi’ nor ‘sqrt(pi)’).

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO15randomizedBlockA2CmF":{"name":"randomizedBlock","abstract":"

    Block is randomized.

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO18wrongHuffmanGroupsA2CmF":{"name":"wrongHuffmanGroups","abstract":"

    Wrong number of Huffman tables/groups (should be between 2 and 6).

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO13wrongSelectorA2CmF":{"name":"wrongSelector","abstract":"

    Selector is greater than the total number of Huffman tables/groups.

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO22wrongHuffmanLengthCodeA2CmF":{"name":"wrongHuffmanLengthCode","abstract":"

    Wrong code of Huffman length (should be between 0 and 20).

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO14symbolNotFoundA2CmF":{"name":"symbolNotFound","abstract":"

    Symbol wasn’t found in Huffman tree.

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO8wrongCRCAC10Foundation4DataVcACmF":{"name":"wrongCRC","abstract":"

    Computed checksum of uncompressed data doesn’t match the value stored in archive.","parent_name":"BZip2Error"},"Enums/BZip2Error.html":{"name":"BZip2Error","abstract":"

    Represents an error, which happened during BZip2 decompression."},"Enums/DeflateError.html":{"name":"DeflateError","abstract":"

    Represents an error, which happened during Deflate compression or decompression."},"Enums/LZMAError.html":{"name":"LZMAError","abstract":"

    Represents an error, which happened during LZMA decompression."},"Enums/LZMA2Error.html":{"name":"LZMA2Error","abstract":"

    Represents an error, which happened during LZMA2 decompression."},"Enums/SevenZipError.html":{"name":"SevenZipError","abstract":"

    Represents an error, which happened during processing 7-Zip container."},"Enums/TarError.html":{"name":"TarError","abstract":"

    Represents an error, which happened during processing TAR container."},"Enums/ZipError.html":{"name":"ZipError","abstract":"

    Represents an error, which happened during processing ZIP container."},"Enums/GzipError.html":{"name":"GzipError","abstract":"

    Represents an error, which happened during processing GZip archive."},"Enums/XZError.html":{"name":"XZError","abstract":"

    Represents an error, which happened during unarchiving XZ archive."},"Enums/ZlibError.html":{"name":"ZlibError","abstract":"

    Represents an error, which happened during processing Zlib archive."},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC4nameSSv":{"name":"name","abstract":"

    Name of the file or directory.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC7commentSSSgv":{"name":"comment","abstract":"

    Comment associated with the entry.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC10attributess6UInt32Vv":{"name":"attributes","abstract":"

    File or directory attributes related to the file system of the container’s creator.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC4sizeSiv":{"name":"size","abstract":"

    Size of the data associated with the entry.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC11isDirectorySbv":{"name":"isDirectory","abstract":"

    True, if entry is a directory.","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC6isLinkSbv":{"name":"isLink","abstract":"

    True, if entry is a symbolic link.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC8linkPathSSSgv":{"name":"linkPath","abstract":"

    Path to a linked file for symbolic link entry.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC10isTextFileSbv":{"name":"isTextFile","abstract":"

    True if entry is likely to be text or ASCII file.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC15entryAttributess10DictionaryVySC16FileAttributeKeyVypGv":{"name":"entryAttributes","abstract":"

    Provides a dictionary with various attributes of the entry.","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC4data10Foundation4DataVyKF":{"name":"data()","abstract":"

    Returns data associated with this entry.

    ","parent_name":"ZipEntry"},"Classes/ZipContainer.html#/s:13SWCompression12ZipContainerC4openSayAA0C5Entry_pG10Foundation4DataV9container_tKFZ":{"name":"open(container:)","abstract":"

    Processes ZIP container and returns an array of ContainerEntry (which are actually ZipEntry).

    ","parent_name":"ZipContainer"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO6normalA2EmF":{"name":"normal","abstract":"

    Normal file.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO8hardLinkA2EmF":{"name":"hardLink","abstract":"

    Hard linked entry.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO12symbolicLinkA2EmF":{"name":"symbolicLink","abstract":"

    Symbolically linked entry.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO16characterSpecialA2EmF":{"name":"characterSpecial","abstract":"

    Character special file.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO12blockSpecialA2EmF":{"name":"blockSpecial","abstract":"

    Block special file.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO9directoryA2EmF":{"name":"directory","abstract":"

    Directory.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO4fifoA2EmF":{"name":"fifo","abstract":"

    FIFO special file.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO10contiguousA2EmF":{"name":"contiguous","abstract":"

    Contiguous file.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO20globalExtendedHeaderA2EmF":{"name":"globalExtendedHeader","abstract":"

    PAX global extended header. (Should not be encountered separately).

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO19localExtendedHeaderA2EmF":{"name":"localExtendedHeader","abstract":"

    PAX local extended header. (Should not be encountered separately).

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO23vendorUnknownOrReservedA2EmF":{"name":"vendorUnknownOrReserved","abstract":"

    Either unknown type, vendor specific or reserved value.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html":{"name":"EntryType","abstract":"

    Represents a type of an entry.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC4nameSSv":{"name":"name","abstract":"

    Name of the file or directory.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC11isDirectorySbv":{"name":"isDirectory","abstract":"

    True, if entry is a directory.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC4sizeSiv":{"name":"size","abstract":"

    Size of the data associated with the entry.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC15entryAttributess10DictionaryVySC16FileAttributeKeyVypGv":{"name":"entryAttributes","abstract":"

    Provides a dictionary with various attributes of the entry.","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC4modeSiSgv":{"name":"mode","abstract":"

    File mode.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC7ownerIDSiSgv":{"name":"ownerID","abstract":"

    Owner’s ID.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC7groupIDSiSgv":{"name":"groupID","abstract":"

    Owner’s group ID.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC16modificationTime10Foundation4DateVv":{"name":"modificationTime","abstract":"

    The most recent modification time of the original file or directory.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC4typeAC0C4TypeOv":{"name":"type","abstract":"

    Type of entry.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC13ownerUserNameSSSgv":{"name":"ownerUserName","abstract":"

    Owner’s user name.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC14ownerGroupNameSSSgv":{"name":"ownerGroupName","abstract":"

    Owner’s group name.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC10accessTime10Foundation4DateVSgv":{"name":"accessTime","abstract":"

    The most recent access time of the original file or directory (PAX only).

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC12creationTime10Foundation4DateVSgv":{"name":"creationTime","abstract":"

    The creation time of the original file or directory (PAX only).

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC7charsetSSSgv":{"name":"charset","abstract":"

    Name of the character set used to encode entry’s data (PAX only).

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC7commentSSSgv":{"name":"comment","abstract":"

    Comment associated with the entry (PAX only).

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC6isLinkSbv":{"name":"isLink","abstract":"

    True if entry is a symbolic link.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC8linkPathSSSgv":{"name":"linkPath","abstract":"

    Path to a linked file for symbolic link entry.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC28unknownExtendedHeaderEntriess10DictionaryVyS2SGv":{"name":"unknownExtendedHeaderEntries","abstract":"

    Other entries from PAX extended headers.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC4data10Foundation4DataVyF":{"name":"data()","abstract":"

    Returns data associated with this entry.

    ","parent_name":"TarEntry"},"Classes/TarContainer.html#/s:13SWCompression12TarContainerC4openSayAA0C5Entry_pG10Foundation4DataV9container_tKFZ":{"name":"open(container:)","abstract":"

    Processes TAR container and returns an array of ContainerEntry (which are actually TarEntry).

    ","parent_name":"TarContainer"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO4fifoA2EmF":{"name":"fifo","abstract":"

    FIFO special file.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO16characterSpecialA2EmF":{"name":"characterSpecial","abstract":"

    Character special file.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO9directoryA2EmF":{"name":"directory","abstract":"

    Directory.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO12blockSpecialA2EmF":{"name":"blockSpecial","abstract":"

    Block special file.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO7regularA2EmF":{"name":"regular","abstract":"

    Regular file.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO12symbolicLinkA2EmF":{"name":"symbolicLink","abstract":"

    Symbolic link.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO6socketA2EmF":{"name":"socket","abstract":"

    Socket.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV8rawValues6UInt32Vv":{"name":"rawValue","abstract":"

    Raw bit flags value.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesVAEs6UInt32V8rawValue_tcfc":{"name":"init(rawValue:)","abstract":"

    Initializes attributes with bit flags.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV7archiveAEvZ":{"name":"archive","abstract":"

    File is archive or archived.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV9directoryAEvZ":{"name":"directory","abstract":"

    File is a directory.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV6volumeAEvZ":{"name":"volume","abstract":"

    File is a volume.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV6systemAEvZ":{"name":"system","abstract":"

    File is a system file.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV6hiddenAEvZ":{"name":"hidden","abstract":"

    File is hidden.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV8readOnlyAEvZ":{"name":"readOnly","abstract":"

    File is read-only.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV8rawValues6UInt32Vv":{"name":"rawValue","abstract":"

    Raw bit flags value (in decimal).

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsVAEs6UInt32V8rawValue_tcfc":{"name":"init(rawValue:)","abstract":"

    Initializes permissions with bit flags in decimal.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV6setuidAEvZ":{"name":"setuid","abstract":"

    Set UID.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV6setgidAEvZ":{"name":"setgid","abstract":"

    Set GID.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV6stickyAEvZ":{"name":"sticky","abstract":"

    Sticky bit.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV9readOwnerAEvZ":{"name":"readOwner","abstract":"

    Owner can read.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV10writeOwnerAEvZ":{"name":"writeOwner","abstract":"

    Owner can write.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV12executeOwnerAEvZ":{"name":"executeOwner","abstract":"

    Owner can execute.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV9readGroupAEvZ":{"name":"readGroup","abstract":"

    Group can read.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV10writeGroupAEvZ":{"name":"writeGroup","abstract":"

    Group can write.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV12executeGroupAEvZ":{"name":"executeGroup","abstract":"

    Group can execute.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV9readOtherAEvZ":{"name":"readOther","abstract":"

    Others can read.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV10writeOtherAEvZ":{"name":"writeOther","abstract":"

    Others can write.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV12executeOtherAEvZ":{"name":"executeOther","abstract":"

    Others can execute.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html":{"name":"Permissions","abstract":"

    Represents file access permissions in UNIX format.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo/DosAttributes.html":{"name":"DosAttributes","abstract":"

    Represents file attributes in DOS format.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo/UnixType.html":{"name":"UnixType","abstract":"

    Represents file type in UNIX format.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV4nameSSSgv":{"name":"name","abstract":"

    Entry’s name.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV4sizeSiSgv":{"name":"size","abstract":"

    Entry’s data size.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV11isDirectorySbv":{"name":"isDirectory","abstract":"

    True, if entry is a directory.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV10accessTime10Foundation4DateVSgv":{"name":"accessTime","abstract":"

    Entry’s last access time and date.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV12creationTime10Foundation4DateVSgv":{"name":"creationTime","abstract":"

    Entry’s creation time and date.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV16modificationTime10Foundation4DateVSgv":{"name":"modificationTime","abstract":"

    Entry’s last modification time and date.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV13winAttributess6UInt32VSgv":{"name":"winAttributes","abstract":"

    7-Zip internal property which may contain UNIX permissions, type and/or DOS attributes.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV11permissionsAC11PermissionsVSgv":{"name":"permissions","abstract":"

    Entry’s UNIX file access permissions.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV13dosAttributesAC03DosG0VSgv":{"name":"dosAttributes","abstract":"

    Entry’s DOS attributes.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV8unixTypeAC04UnixG0OSgv":{"name":"unixType","abstract":"

    Entry’s UNIX file type.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV9hasStreamSbv":{"name":"hasStream","abstract":"

    7-Zip internal propety. Indicates whether entry has a stream (data) inside container.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV7isEmptySbv":{"name":"isEmpty","abstract":"

    True, if entry is an empty file. 7-Zip internal property.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV6isAntiSbv":{"name":"isAnti","abstract":"

    True if entry is an anti-file.","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV3crcs6UInt32VSgv":{"name":"crc","abstract":"

    CRC32 of entry’s data.

    ","parent_name":"SevenZipEntryInfo"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC4infoAA0bcD4InfoVv":{"name":"info","abstract":"

    Various information about entry.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC4nameSSv":{"name":"name","abstract":"

    Entry’s name.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC4sizeSiv":{"name":"size","abstract":"

    Entry’s data size.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC11isDirectorySbv":{"name":"isDirectory","abstract":"

    True, if entry is a directory.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC6isLinkSbv":{"name":"isLink","abstract":"

    True, if entry is a symbolic link.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC8linkPathSSSgv":{"name":"linkPath","abstract":"

    Path to a linked file for symbolic link entry.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC15entryAttributess10DictionaryVySC16FileAttributeKeyVypGv":{"name":"entryAttributes","abstract":"

    Provides a dictionary with various attributes of the entry.","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC15dataIsAvailableSbv":{"name":"dataIsAvailable","abstract":"

    True, if data for entry is available.","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC4data10Foundation4DataVyKF":{"name":"data()","abstract":"

    Returns data associated with this entry.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipContainer.html#/s:13SWCompression17SevenZipContainerC4openSayAA0D5Entry_pG10Foundation4DataV9container_tKFZ":{"name":"open(container:)","abstract":"

    Processes 7-Zip container and returns an array of ContainerEntry (which are actually SevenZipEntry).

    ","parent_name":"SevenZipContainer"},"Classes/SevenZipContainer.html#/s:13SWCompression17SevenZipContainerC4infoSayAA0bC9EntryInfoVG10Foundation4DataV9container_tKFZ":{"name":"info(container:)","abstract":"

    Processes ZIP container and returns an array of SevenZipEntryInfo,","parent_name":"SevenZipContainer"},"Classes/SevenZipContainer.html":{"name":"SevenZipContainer","abstract":"

    Provides open functions for 7-Zip containers.

    "},"Classes/SevenZipEntry.html":{"name":"SevenZipEntry","abstract":"

    Represents an entry in 7-Zip container.

    "},"Structs/SevenZipEntryInfo.html":{"name":"SevenZipEntryInfo","abstract":"

    Provides information about 7-Zip entry.

    "},"Classes/TarContainer.html":{"name":"TarContainer","abstract":"

    Provides open function for TAR containers.

    "},"Classes/TarEntry.html":{"name":"TarEntry","abstract":"

    Represents either a file or directory entry in TAR container.

    "},"Classes/ZipContainer.html":{"name":"ZipContainer","abstract":"

    Provides open function for ZIP containers.

    "},"Classes/ZipEntry.html":{"name":"ZipEntry","abstract":"

    Represents either a file or directory entry in ZIP container.

    "},"Structs/ZlibHeader/CompressionLevel.html#/s:13SWCompression10ZlibHeaderV16CompressionLevelO16fastestAlgorithmA2EmF":{"name":"fastestAlgorithm","abstract":"

    Fastest algorithm.

    ","parent_name":"CompressionLevel"},"Structs/ZlibHeader/CompressionLevel.html#/s:13SWCompression10ZlibHeaderV16CompressionLevelO13fastAlgorithmA2EmF":{"name":"fastAlgorithm","abstract":"

    Fast algorithm.

    ","parent_name":"CompressionLevel"},"Structs/ZlibHeader/CompressionLevel.html#/s:13SWCompression10ZlibHeaderV16CompressionLevelO16defaultAlgorithmA2EmF":{"name":"defaultAlgorithm","abstract":"

    Default algorithm.

    ","parent_name":"CompressionLevel"},"Structs/ZlibHeader/CompressionLevel.html#/s:13SWCompression10ZlibHeaderV16CompressionLevelO13slowAlgorithmA2EmF":{"name":"slowAlgorithm","abstract":"

    Slowest algorithm but with maximum compression.

    ","parent_name":"CompressionLevel"},"Structs/ZlibHeader/CompressionMethod.html#/s:13SWCompression10ZlibHeaderV17CompressionMethodO7deflateA2EmF":{"name":"deflate","abstract":"

    The only one supported compression method (Deflate).

    ","parent_name":"CompressionMethod"},"Structs/ZlibHeader/CompressionMethod.html":{"name":"CompressionMethod","abstract":"

    Supported compression methods in zlib archive.

    ","parent_name":"ZlibHeader"},"Structs/ZlibHeader/CompressionLevel.html":{"name":"CompressionLevel","abstract":"

    Levels of compression which can be used to create Zlib archive.

    ","parent_name":"ZlibHeader"},"Structs/ZlibHeader.html#/s:13SWCompression10ZlibHeaderV17compressionMethodAC011CompressionE0Ov":{"name":"compressionMethod","abstract":"

    Compression method of archive. Currently, always equals to .deflate.

    ","parent_name":"ZlibHeader"},"Structs/ZlibHeader.html#/s:13SWCompression10ZlibHeaderV16compressionLevelAC011CompressionE0Ov":{"name":"compressionLevel","abstract":"

    Level of compression used in archive.

    ","parent_name":"ZlibHeader"},"Structs/ZlibHeader.html#/s:13SWCompression10ZlibHeaderV10windowSizeSiv":{"name":"windowSize","abstract":"

    Size of ‘window’: moving interval of data which was used to make archive.

    ","parent_name":"ZlibHeader"},"Structs/ZlibHeader.html#/s:13SWCompression10ZlibHeaderVAC10Foundation4DataV7archive_tKcfc":{"name":"init(archive:)","abstract":"

    Initializes the structure with the values from Zlib archive.

    ","parent_name":"ZlibHeader"},"Classes/ZlibArchive.html#/s:13SWCompression11ZlibArchiveC9unarchive10Foundation4DataVAG7archive_tKFZ":{"name":"unarchive(archive:)","abstract":"

    Unarchives Zlib archive.

    ","parent_name":"ZlibArchive"},"Classes/ZlibArchive.html#/s:13SWCompression11ZlibArchiveC7archive10Foundation4DataVAG4data_tFZ":{"name":"archive(data:)","abstract":"

    Archives data into Zlib archive.","parent_name":"ZlibArchive"},"Classes/XZArchive.html#/s:13SWCompression9XZArchiveC9unarchive10Foundation4DataVAG7archive_tKFZ":{"name":"unarchive(archive:)","abstract":"

    Unarchives XZ archive.

    ","parent_name":"XZArchive"},"Classes/XZArchive.html#/s:13SWCompression9XZArchiveC14multiUnarchiveSay10Foundation4DataVGAG7archive_tKFZ":{"name":"multiUnarchive(archive:)","abstract":"

    Unarchives XZ archive which contains one or more streams.

    ","parent_name":"XZArchive"},"Structs/GzipHeader/FileSystemType.html#/s:13SWCompression10GzipHeaderV14FileSystemTypeO4unixA2EmF":{"name":"unix","abstract":"

    One of many UNIX-like systems.

    ","parent_name":"FileSystemType"},"Structs/GzipHeader/FileSystemType.html#/s:13SWCompression10GzipHeaderV14FileSystemTypeO9macintoshA2EmF":{"name":"macintosh","abstract":"

    Older Macintosh systems.

    ","parent_name":"FileSystemType"},"Structs/GzipHeader/FileSystemType.html#/s:13SWCompression10GzipHeaderV14FileSystemTypeO4ntfsA2EmF":{"name":"ntfs","abstract":"

    File system used in Microsoft™®© Windows™®©.

    ","parent_name":"FileSystemType"},"Structs/GzipHeader/FileSystemType.html#/s:13SWCompression10GzipHeaderV14FileSystemTypeO7unknownA2EmF":{"name":"unknown","abstract":"

    File system was unknown to the archiver.

    ","parent_name":"FileSystemType"},"Structs/GzipHeader/FileSystemType.html#/s:13SWCompression10GzipHeaderV14FileSystemTypeO5otherA2EmF":{"name":"other","abstract":"

    File system is one of the rare systems.

    ","parent_name":"FileSystemType"},"Structs/GzipHeader/CompressionMethod.html#/s:13SWCompression10GzipHeaderV17CompressionMethodO7deflateA2EmF":{"name":"deflate","abstract":"

    The only one supported compression method (Deflate).

    ","parent_name":"CompressionMethod"},"Structs/GzipHeader/CompressionMethod.html":{"name":"CompressionMethod","abstract":"

    Supported compression methods in GZip archive.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader/FileSystemType.html":{"name":"FileSystemType","abstract":"

    Type of file system on which GZip archive was created.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderV17compressionMethodAC011CompressionE0Ov":{"name":"compressionMethod","abstract":"

    Compression method of archive. Currently, always equals to .deflate.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderV16modificationTime10Foundation4DateVSgv":{"name":"modificationTime","abstract":"

    The most recent modification time of the original file.","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderV6osTypeAC010FileSystemE0Ov":{"name":"osType","abstract":"

    Type of file system on which archivation took place.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderV8fileNameSSSgv":{"name":"fileName","abstract":"

    Name of the original file. If archive doesn’t contain file’s name, then nil.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderV7commentSSSgv":{"name":"comment","abstract":"

    Comment stored in archive. If archive doesn’t contain any comment, then nil.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderV10isTextFileSbv":{"name":"isTextFile","abstract":"

    Check if file is likely to be text file or ASCII-file.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderVAC10Foundation4DataV7archive_tKcfc":{"name":"init(archive:)","abstract":"

    Initializes the structure with the values from the first ‘member’ of GZip archive.

    ","parent_name":"GzipHeader"},"Classes/GzipArchive/Member.html#/s:13SWCompression11GzipArchiveC6MemberV6headerAA0B6HeaderVv":{"name":"header","abstract":"

    GZip header of a member.

    ","parent_name":"Member"},"Classes/GzipArchive/Member.html#/s:13SWCompression11GzipArchiveC6MemberV4data10Foundation4DataVv":{"name":"data","abstract":"

    Unarchived data from a member.

    ","parent_name":"Member"},"Classes/GzipArchive/Member.html":{"name":"Member","abstract":"

    Represents a member of multi-member of GZip archive.

    ","parent_name":"GzipArchive"},"Classes/GzipArchive.html#/s:13SWCompression11GzipArchiveC9unarchive10Foundation4DataVAG7archive_tKFZ":{"name":"unarchive(archive:)","abstract":"

    Unarchives GZip archive.

    ","parent_name":"GzipArchive"},"Classes/GzipArchive.html#/s:13SWCompression11GzipArchiveC14multiUnarchiveSayAC6MemberVG10Foundation4DataV7archive_tKFZ":{"name":"multiUnarchive(archive:)","abstract":"

    Unarchives multi-member GZip archive.","parent_name":"GzipArchive"},"Classes/GzipArchive.html#/s:13SWCompression11GzipArchiveC7archive10Foundation4DataVAG4data_SSSg7commentAI8fileNameSb14writeHeaderCRCSb10isTextFileAA0bL0V0P10SystemTypeOSg02osR0AE4DateVSg16modificationTimetKFZ":{"name":"archive(data:comment:fileName:writeHeaderCRC:isTextFile:osType:modificationTime:)","abstract":"

    Archives data into GZip archive, using various specified options.","parent_name":"GzipArchive"},"Classes/GzipArchive.html":{"name":"GzipArchive","abstract":"

    Provides unarchive and archive functions for GZip archives.

    "},"Structs/GzipHeader.html":{"name":"GzipHeader","abstract":"

    Represents a GZip archive’s header.

    "},"Classes/XZArchive.html":{"name":"XZArchive","abstract":"

    Provides unarchive function for XZ archives.

    "},"Classes/ZlibArchive.html":{"name":"ZlibArchive","abstract":"

    Provides unarchive and archive functions for Zlib archives.

    "},"Structs/ZlibHeader.html":{"name":"ZlibHeader","abstract":"

    Represents a Zlib archive’s header.

    "},"Classes/LZMA2.html#/s:13SWCompression5LZMA2C10decompress10Foundation4DataVAG4data_tKFZ":{"name":"decompress(data:)","abstract":"

    Decompresses data using LZMA2 algortihm.

    ","parent_name":"LZMA2"},"Classes/LZMA.html#/s:13SWCompression4LZMAC10decompress10Foundation4DataVAG4data_tKFZ":{"name":"decompress(data:)","abstract":"

    Decompresses data using LZMA algortihm.

    ","parent_name":"LZMA"},"Classes/Deflate.html#/s:13SWCompression7DeflateC10decompress10Foundation4DataVAG4data_tKFZ":{"name":"decompress(data:)","abstract":"

    Decompresses data using Deflate algortihm.

    ","parent_name":"Deflate"},"Classes/Deflate.html#/s:13SWCompression7DeflateC8compress10Foundation4DataVAG4data_tFZ":{"name":"compress(data:)","abstract":"

    Compresses data with Deflate algortihm.

    ","parent_name":"Deflate"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO3oneA2EmF":{"name":"one","abstract":"

    100 KB.

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO3twoA2EmF":{"name":"two","abstract":"

    200 KB.

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO5threeA2EmF":{"name":"three","abstract":"

    300 KB.

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO4fourA2EmF":{"name":"four","abstract":"

    400 KB.

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO4fiveA2EmF":{"name":"five","abstract":"

    500 KB.

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO3sixA2EmF":{"name":"six","abstract":"

    600 KB.

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO5sevenA2EmF":{"name":"seven","abstract":"

    700 KB.

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO5eightA2EmF":{"name":"eight","abstract":"

    800 KB.

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO4nineA2EmF":{"name":"nine","abstract":"

    900 KB.

    ","parent_name":"BlockSize"},"Classes/BZip2.html#/s:13SWCompression5BZip2C10decompress10Foundation4DataVAG4data_tKFZ":{"name":"decompress(data:)","abstract":"

    Decompresses data using BZip2 algortihm.

    ","parent_name":"BZip2"},"Classes/BZip2.html#/s:13SWCompression5BZip2C8compress10Foundation4DataVAG4data_tFZ":{"name":"compress(data:)","abstract":"

    Compresses data with BZip2 algortihm.

    ","parent_name":"BZip2"},"Classes/BZip2.html#/s:13SWCompression5BZip2C8compress10Foundation4DataVAG4data_AC9BlockSizeO05blockH0tFZ":{"name":"compress(data:blockSize:)","abstract":"

    Compresses data with BZip2 algortihm, splitting data into blocks of specified blockSize.

    ","parent_name":"BZip2"},"Classes/BZip2/BlockSize.html":{"name":"BlockSize","abstract":"

    Represents size of blocks in which data is split during BZip2 compression.

    ","parent_name":"BZip2"},"Classes/BZip2.html":{"name":"BZip2","abstract":"

    Provides functions for compression and decompression for BZip2 algorithm.

    "},"Classes/Deflate.html":{"name":"Deflate","abstract":"

    Provides functions for compression and decompression for Deflate algorithm.

    "},"Classes/LZMA.html":{"name":"LZMA","abstract":"

    Provides decompression function for LZMA algorithm.

    "},"Classes/LZMA2.html":{"name":"LZMA2","abstract":"

    Provides decompression function for LZMA2 algorithm.

    "},"Compression.html":{"name":"Compression"},"Archives.html":{"name":"Archives"},"Containers.html":{"name":"Containers"},"Errors.html":{"name":"Errors"},"Protocols.html":{"name":"Protocols"}} \ 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 dfd04956f3999c14fa7a39e8bac3ebea4b769d82..218c21b5d214de595f138a06a3877187d850156f 100644 GIT binary patch delta 143 zcmZo@U~On%-5}_|ev2`HKaa_CvxLKXM&{N=^~wKwRVHufjh<}oG?6WzO&Xim*r)sJGAc8cY<6=#a7Sf51OH-vC%%V#O?*7Ob9lLVZt-m6>Ep@a@!(PA;oyGG meU5wm#==(a?enx5-!gLMHgU5tfDOCgWQAndb}l`}Z-M}lc`oe$ delta 130 zcmZo@U~On%-5}_|eu6Q8Kaa_LvxLKXM&{y1^~wKwRVHuf^_=YKG?BfLflXVoF?jL= zC+o@T@^+g&ocG;Pna9AtnBR%-Azu?84{tZmFP@V;OL=N}qIt}DM7Y0mU*q1(J#S-S g3HSE(+Kg`*IqRCZ*%-j4Jan=GnX;WnkMWBj09E8G!~g&Q diff --git a/docs/docsets/SWCompression.tgz b/docs/docsets/SWCompression.tgz index 12df964057d1712043d2cf80435772452852b8a4..17f9c68aa7bd0e19403a4405c404d34f16ac44eb 100644 GIT binary patch literal 124588 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 literal 124295 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 diff --git a/docs/index.html b/docs/index.html index 8175ca3a..62379449 100644 --- a/docs/index.html +++ b/docs/index.html @@ -22,7 +22,7 @@ SWCompression Docs - (96% documented) + (100% documented)

    @@ -253,6 +253,7 @@ And yes, it is also in Objective-C.

    • Deflate
    • +
    • BZip2
  • Archives: @@ -397,10 +398,8 @@ For example:

    which uses SWCompression for unarchiving several types of archives.

    Performace

    -

    TL;DR Constantly trying to improve performance; -use whole module optimizations, which are enabled by default for Release configurations.

    - -

    Further thoughts, details and notes about performance you can read in a separate document.

    +

    Usage of whole module optimizations is recommended for best performance. +These optimizations are enabled by default for Release configurations.

    Tests Results document contains results of performance testing of various algorithms.

    Running tests locally

    @@ -429,7 +428,6 @@ It is intended to fix this problem, but solution requires backwards-incompatible

    Future plans

    diff --git a/docs/search.json b/docs/search.json index 4912cb19..30217920 100644 --- a/docs/search.json +++ b/docs/search.json @@ -1 +1 @@ -{"Protocols/DecompressionAlgorithm.html#/s:13SWCompression22DecompressionAlgorithmP10decompress10Foundation4DataVAG4data_tKFZ":{"name":"decompress(data:)","abstract":"

    Decompress data compressed with particular algorithm.

    ","parent_name":"DecompressionAlgorithm"},"Protocols/CompressionAlgorithm.html#/s:13SWCompression20CompressionAlgorithmP8compress10Foundation4DataVAG4data_tKFZ":{"name":"compress(data:)","abstract":"

    Cmpress data with particular algorithm.

    ","parent_name":"CompressionAlgorithm"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP4nameSSv":{"name":"name","abstract":"

    Retrieve name of the entry from the container.

    ","parent_name":"ContainerEntry"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP4sizeSiv":{"name":"size","abstract":"

    Retrieve size of the entry’s data from the container.

    ","parent_name":"ContainerEntry"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP11isDirectorySbv":{"name":"isDirectory","abstract":"

    True, if entry is a directory.

    ","parent_name":"ContainerEntry"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP6isLinkSbv":{"name":"isLink","abstract":"

    True, if entry is a symbolic link.

    ","parent_name":"ContainerEntry"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP8linkPathSSSgv":{"name":"linkPath","abstract":"

    Path to a linked file for symbolic link entry.

    ","parent_name":"ContainerEntry"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP15entryAttributess10DictionaryVySC16FileAttributeKeyVypGv":{"name":"entryAttributes","abstract":"

    Provides a dictionary with various attributes of the entry.","parent_name":"ContainerEntry"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP4data10Foundation4DataVyKF":{"name":"data()","abstract":"

    Retrieve entry’s data from the container.

    ","parent_name":"ContainerEntry"},"Protocols/Container.html#/s:13SWCompression9ContainerP4openSayAA0B5Entry_pG10Foundation4DataV9container_tKFZ":{"name":"open(container:)","abstract":"

    Retrieve all the entries from the container.

    ","parent_name":"Container"},"Protocols/Archive.html#/s:13SWCompression7ArchiveP9unarchive10Foundation4DataVAG7archive_tKFZ":{"name":"unarchive(archive:)","abstract":"

    Unarchive data from the archive.

    ","parent_name":"Archive"},"Protocols/Archive.html":{"name":"Archive","abstract":"

    A type that represents an archive.

    "},"Protocols/Container.html":{"name":"Container","abstract":"

    A type that represents a container of files, directories and/or other data.

    "},"Protocols/ContainerEntry.html":{"name":"ContainerEntry","abstract":"

    A type that represents an entry from a container (file or directory) with attributes.

    "},"Protocols/CompressionAlgorithm.html":{"name":"CompressionAlgorithm","abstract":"

    A type that provides an implementation of a particular compression algorithm.

    "},"Protocols/DecompressionAlgorithm.html":{"name":"DecompressionAlgorithm","abstract":"

    A type that provides an implementation of a particular decompression algorithm.

    "},"Enums/ZlibError.html#/s:13SWCompression9ZlibErrorO22wrongCompressionMethodA2CmF":{"name":"wrongCompressionMethod","abstract":"

    Compression method used in archive is different from Deflate, which is the only supported one.

    ","parent_name":"ZlibError"},"Enums/ZlibError.html#/s:13SWCompression9ZlibErrorO20wrongCompressionInfoA2CmF":{"name":"wrongCompressionInfo","abstract":"

    Compression info has value incompatible with Deflate compression method.

    ","parent_name":"ZlibError"},"Enums/ZlibError.html#/s:13SWCompression9ZlibErrorO11wrongFcheckA2CmF":{"name":"wrongFcheck","abstract":"

    First two bytes of archive’s flags are inconsistent with each other.

    ","parent_name":"ZlibError"},"Enums/ZlibError.html#/s:13SWCompression9ZlibErrorO21wrongCompressionLevelA2CmF":{"name":"wrongCompressionLevel","abstract":"

    Compression level has value, which is different from the supported ones.

    ","parent_name":"ZlibError"},"Enums/ZlibError.html#/s:13SWCompression9ZlibErrorO12wrongAdler32AC10Foundation4DataVcACmF":{"name":"wrongAdler32","abstract":"

    Computed checksum of uncompressed data doesn’t match the value stored in archive.","parent_name":"ZlibError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO10wrongMagicA2CmF":{"name":"wrongMagic","abstract":"

    Either ‘magic’ number in header or footer isn’t equal to a predefined value.

    ","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO15wrongFieldValueA2CmF":{"name":"wrongFieldValue","abstract":"

    One of the fields in archive has an incorrect value.

    ","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO18fieldReservedValueA2CmF":{"name":"fieldReservedValue","abstract":"

    One of the reserved fields in archive has an unexpected value, which can also mean (apart from damaged archive),","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO12wrongInfoCRCA2CmF":{"name":"wrongInfoCRC","abstract":"

    Checksum of one of the fields of archive doesn’t match the value stored in archive.

    ","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO13wrongFilterIDA2CmF":{"name":"wrongFilterID","abstract":"

    Filter used in archvie is unsupported.

    ","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO15checkTypeSHA256A2CmF":{"name":"checkTypeSHA256","abstract":"

    Archive uses SHA-256 checksum which is unsupported.

    ","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO13wrongDataSizeA2CmF":{"name":"wrongDataSize","abstract":"

    Either size of decompressed data isn’t equal to the one specified in archive or","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO10wrongCheckAC10Foundation4DataVcACmF":{"name":"wrongCheck","abstract":"

    Computed checksum of uncompressed data doesn’t match the value stored in the archive.","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO12wrongPaddingA2CmF":{"name":"wrongPadding","abstract":"

    Padding (null-bytes appended to an archive’s structure) is incorrect.

    ","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO21multiByteIntegerErrorA2CmF":{"name":"multiByteIntegerError","abstract":"

    Either null byte encountered or exceeded maximum amount bytes during reading multi byte number.

    ","parent_name":"XZError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO10wrongMagicA2CmF":{"name":"wrongMagic","abstract":"

    First two bytes (‘magic’ number) of archive isn’t 31 and 139.

    ","parent_name":"GzipError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO22wrongCompressionMethodA2CmF":{"name":"wrongCompressionMethod","abstract":"

    Compression method used in archive is different from Deflate, which is the only supported one.

    ","parent_name":"GzipError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO10wrongFlagsA2CmF":{"name":"wrongFlags","abstract":"

    One of the reserved fields in archive has an unexpected value, which can also mean (apart from damaged archive),","parent_name":"GzipError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO14wrongHeaderCRCA2CmF":{"name":"wrongHeaderCRC","abstract":"

    Computed CRC of archive’s header doesn’t match the value stored in archive.

    ","parent_name":"GzipError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO8wrongCRCAC10Foundation4DataVcACmF":{"name":"wrongCRC","abstract":"

    Computed checksum of uncompressed data doesn’t match the value stored in archive.","parent_name":"GzipError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO10wrongISizeA2CmF":{"name":"wrongISize","abstract":"

    Computed ‘isize’ didn’t match the value stored in the archive.

    ","parent_name":"GzipError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO21cannotEncodeISOLatin1A2CmF":{"name":"cannotEncodeISOLatin1","abstract":"

    Either specified file name or comment cannot be encoded using ISO Latin-1 encoding.

    ","parent_name":"GzipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO27notFoundCentralDirectoryEndA2CmF":{"name":"notFoundCentralDirectoryEnd","abstract":"

    End of Central Directoty record wasn’t found.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO14wrongSignatureA2CmF":{"name":"wrongSignature","abstract":"

    Wrong signature of one of container’s structures.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO9wrongSizeA2CmF":{"name":"wrongSize","abstract":"

    Wrong either compressed or uncompressed size of a container’s entry.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO12wrongVersionA2CmF":{"name":"wrongVersion","abstract":"

    Version needed to process container is unsupported.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO24multiVolumesNotSupportedA2CmF":{"name":"multiVolumesNotSupported","abstract":"

    Container is either spanned or consists of several volumes. These features aren’t supported.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO22encryptionNotSupportedA2CmF":{"name":"encryptionNotSupported","abstract":"

    Entry or record is encrypted. This feature isn’t supported.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO20patchingNotSupportedA2CmF":{"name":"patchingNotSupported","abstract":"

    Entry contains patched data. This feature isn’t supported.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO23compressionNotSupportedA2CmF":{"name":"compressionNotSupported","abstract":"

    Entry is compressed using unsupported compression method.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO16wrongLocalHeaderA2CmF":{"name":"wrongLocalHeader","abstract":"

    Local header of an entry is inconsistent with Central Directory.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO10wrongCRC32AC10Foundation4DataVcACmF":{"name":"wrongCRC32","abstract":"

    Computed checksum of entry’s data doesn’t match the value stored in container.","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO14wrongTextFieldA2CmF":{"name":"wrongTextField","abstract":"

    Either entry’s comment or file name cannot be processed using UTF-8 encoding.

    ","parent_name":"ZipError"},"Enums/TarError.html#/s:13SWCompression8TarErrorO20tooSmallFileIsPassedA2CmF":{"name":"tooSmallFileIsPassed","abstract":"

    Size of data is too small, even to contain only one header.

    ","parent_name":"TarError"},"Enums/TarError.html#/s:13SWCompression8TarErrorO16fieldIsNotNumberA2CmF":{"name":"fieldIsNotNumber","abstract":"

    Failed to process a field as a number.

    ","parent_name":"TarError"},"Enums/TarError.html#/s:13SWCompression8TarErrorO19wrongHeaderChecksumA2CmF":{"name":"wrongHeaderChecksum","abstract":"

    Computed checksum of a header doesn’t match the value stored in container.

    ","parent_name":"TarError"},"Enums/TarError.html#/s:13SWCompression8TarErrorO17wrongUstarVersionA2CmF":{"name":"wrongUstarVersion","abstract":"

    Unsupported version of USTAR format.

    ","parent_name":"TarError"},"Enums/TarError.html#/s:13SWCompression8TarErrorO19wrongPaxHeaderEntryA2CmF":{"name":"wrongPaxHeaderEntry","abstract":"

    Entry from PAX extended header is in incorrect format.

    ","parent_name":"TarError"},"Enums/TarError.html#/s:13SWCompression8TarErrorO14notAsciiStringA2CmF":{"name":"notAsciiString","abstract":"

    Failed to process a field as an ASCII string.

    ","parent_name":"TarError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO14wrongSignatureA2CmF":{"name":"wrongSignature","abstract":"

    Wrong container’s signature.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO18wrongFormatVersionA2CmF":{"name":"wrongFormatVersion","abstract":"

    Unsupporte version of container’s format.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO8wrongCRCA2CmF":{"name":"wrongCRC","abstract":"

    CRC either of one of the files from the container","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO9wrongSizeA2CmF":{"name":"wrongSize","abstract":"

    Size either of one of the files from the container","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO20startPosNotSupportedA2CmF":{"name":"startPosNotSupported","abstract":"

    Files have StartPos property. This feature isn’t supported.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO20externalNotSupportedA2CmF":{"name":"externalNotSupported","abstract":"

    External feature isn’t supported.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO23multiStreamNotSupportedA2CmF":{"name":"multiStreamNotSupported","abstract":"

    Coders with multiple in and/or out streams aren’t supported.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO29additionalStreamsNotSupportedA2CmF":{"name":"additionalStreamsNotSupported","abstract":"

    Additional streams feature isn’t supported.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO23compressionNotSupportedA2CmF":{"name":"compressionNotSupported","abstract":"

    Entry is compressed using unsupported compression method.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO22encryptionNotSupportedA2CmF":{"name":"encryptionNotSupported","abstract":"

    Entry or container’s header is encrypted. This feature isn’t supported.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO17dataIsUnavailableA2CmF":{"name":"dataIsUnavailable","abstract":"

    Entry’s data isn’t available.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO017internalStructureD0A2CmF":{"name":"internalStructureError","abstract":"

    Unknown/incorrect internal 7-Zip structure was encountered or","parent_name":"SevenZipError"},"Enums/LZMA2Error.html#/s:13SWCompression10LZMA2ErrorO15wrongPropertiesA2CmF":{"name":"wrongProperties","abstract":"

    Reserved bits of LZMA2 properties’ byte aren’t equal to zero.

    ","parent_name":"LZMA2Error"},"Enums/LZMA2Error.html#/s:13SWCompression10LZMA2ErrorO19wrongDictionarySizeA2CmF":{"name":"wrongDictionarySize","abstract":"

    Dictionary size is too big.

    ","parent_name":"LZMA2Error"},"Enums/LZMA2Error.html#/s:13SWCompression10LZMA2ErrorO16wrongControlByteA2CmF":{"name":"wrongControlByte","abstract":"

    Unknown conrol byte value of LZMA2 packet.

    ","parent_name":"LZMA2Error"},"Enums/LZMA2Error.html#/s:13SWCompression10LZMA2ErrorO10wrongResetA2CmF":{"name":"wrongReset","abstract":"

    Unknown reset instruction encountered in LZMA2 packet.

    ","parent_name":"LZMA2Error"},"Enums/LZMA2Error.html#/s:13SWCompression10LZMA2ErrorO10wrongSizesA2CmF":{"name":"wrongSizes","abstract":"

    Either size of decompressed data isn’t equal to the one specified in LZMA2 packet or","parent_name":"LZMA2Error"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO15wrongPropertiesA2CmF":{"name":"wrongProperties","abstract":"

    Properties’ byte is greater than 225.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO21rangeDecoderInitErrorA2CmF":{"name":"rangeDecoderInitError","abstract":"

    Unable to initialize RanderDecorer.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO24exceededUncompressedSizeA2CmF":{"name":"exceededUncompressedSize","abstract":"

    Size of uncompressed data hit specified limit in the middle of decoding.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO13windowIsEmptyA2CmF":{"name":"windowIsEmpty","abstract":"

    Unable to perfrom repeat-distance decoding because there is nothing to repeat.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO23rangeDecoderFinishErrorA2CmF":{"name":"rangeDecoderFinishError","abstract":"

    End of stream marker is reached, but range decoder is in incorrect state.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO16repeatWillExceedA2CmF":{"name":"repeatWillExceed","abstract":"

    The number of bytes to repeat is greater than the amount bytes that is left to decode.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO17notEnoughToRepeatA2CmF":{"name":"notEnoughToRepeat","abstract":"

    The amount of already decoded bytes is smaller than repeat length.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO23decoderIsNotInitialisedA2CmF":{"name":"decoderIsNotInitialised","abstract":"

    LZMADecoder wasn’t properly initialized before decoding data.

    ","parent_name":"LZMAError"},"Enums/DeflateError.html#/s:13SWCompression12DeflateErrorO29wrongUncompressedBlockLengthsA2CmF":{"name":"wrongUncompressedBlockLengths","abstract":"

    Uncompressed block’s length and nlength bytes isn’t consistent with each other.

    ","parent_name":"DeflateError"},"Enums/DeflateError.html#/s:13SWCompression12DeflateErrorO14wrongBlockTypeA2CmF":{"name":"wrongBlockType","abstract":"

    Unknown block type (not 0, 1 or 2).

    ","parent_name":"DeflateError"},"Enums/DeflateError.html#/s:13SWCompression12DeflateErrorO11wrongSymbolA2CmF":{"name":"wrongSymbol","abstract":"

    Decoded symbol was found in Huffman tree but is unknown.

    ","parent_name":"DeflateError"},"Enums/DeflateError.html#/s:13SWCompression12DeflateErrorO14symbolNotFoundA2CmF":{"name":"symbolNotFound","abstract":"

    Symbol wasn’t found in Huffman tree.

    ","parent_name":"DeflateError"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO10wrongMagicA2CmF":{"name":"wrongMagic","abstract":"

    ‘Magic’ number is not 0x425a.

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO22wrongCompressionMethodA2CmF":{"name":"wrongCompressionMethod","abstract":"

    Compression method is not type ‘h’ (not Huffman).

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO14wrongBlockSizeA2CmF":{"name":"wrongBlockSize","abstract":"

    Unsupported block size (not from ‘0’ to ‘9’).

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO14wrongBlockTypeA2CmF":{"name":"wrongBlockType","abstract":"

    Unsupported block type (is neither ‘pi’ nor ‘sqrt(pi)’).

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO15randomizedBlockA2CmF":{"name":"randomizedBlock","abstract":"

    Block is randomized.

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO18wrongHuffmanGroupsA2CmF":{"name":"wrongHuffmanGroups","abstract":"

    Wrong number of Huffman tables/groups (should be between 2 and 6).

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO13wrongSelectorA2CmF":{"name":"wrongSelector","abstract":"

    Selector is greater than the total number of Huffman tables/groups.

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO22wrongHuffmanLengthCodeA2CmF":{"name":"wrongHuffmanLengthCode","abstract":"

    Wrong code of Huffman length (should be between 0 and 20).

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO14symbolNotFoundA2CmF":{"name":"symbolNotFound","abstract":"

    Symbol wasn’t found in Huffman tree.

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO8wrongCRCAC10Foundation4DataVcACmF":{"name":"wrongCRC","abstract":"

    Computed checksum of uncompressed data doesn’t match the value stored in archive.","parent_name":"BZip2Error"},"Enums/BZip2Error.html":{"name":"BZip2Error","abstract":"

    Represents an error, which happened during BZip2 decompression."},"Enums/DeflateError.html":{"name":"DeflateError","abstract":"

    Represents an error, which happened during Deflate compression or decompression."},"Enums/LZMAError.html":{"name":"LZMAError","abstract":"

    Represents an error, which happened during LZMA decompression."},"Enums/LZMA2Error.html":{"name":"LZMA2Error","abstract":"

    Represents an error, which happened during LZMA2 decompression."},"Enums/SevenZipError.html":{"name":"SevenZipError","abstract":"

    Represents an error, which happened during processing 7-Zip container."},"Enums/TarError.html":{"name":"TarError","abstract":"

    Represents an error, which happened during processing TAR container."},"Enums/ZipError.html":{"name":"ZipError","abstract":"

    Represents an error, which happened during processing ZIP container."},"Enums/GzipError.html":{"name":"GzipError","abstract":"

    Represents an error, which happened during processing GZip archive."},"Enums/XZError.html":{"name":"XZError","abstract":"

    Represents an error, which happened during unarchiving XZ archive."},"Enums/ZlibError.html":{"name":"ZlibError","abstract":"

    Represents an error, which happened during processing Zlib archive."},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC4nameSSv":{"name":"name","abstract":"

    Name of the file or directory.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC7commentSSSgv":{"name":"comment","abstract":"

    Comment associated with the entry.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC10attributess6UInt32Vv":{"name":"attributes","abstract":"

    File or directory attributes related to the file system of the container’s creator.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC4sizeSiv":{"name":"size","abstract":"

    Size of the data associated with the entry.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC11isDirectorySbv":{"name":"isDirectory","abstract":"

    True, if entry is a directory.","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC6isLinkSbv":{"name":"isLink","abstract":"

    True, if entry is a symbolic link.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC8linkPathSSSgv":{"name":"linkPath","abstract":"

    Path to a linked file for symbolic link entry.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC10isTextFileSbv":{"name":"isTextFile","abstract":"

    True if entry is likely to be text or ASCII file.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC15entryAttributess10DictionaryVySC16FileAttributeKeyVypGv":{"name":"entryAttributes","abstract":"

    Provides a dictionary with various attributes of the entry.","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC4data10Foundation4DataVyKF":{"name":"data()","abstract":"

    Returns data associated with this entry.

    ","parent_name":"ZipEntry"},"Classes/ZipContainer.html#/s:13SWCompression12ZipContainerC4openSayAA0C5Entry_pG10Foundation4DataV9container_tKFZ":{"name":"open(container:)","abstract":"

    Processes ZIP container and returns an array of ContainerEntry (which are actually ZipEntry).

    ","parent_name":"ZipContainer"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO6normalA2EmF":{"name":"normal","abstract":"

    Normal file.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO8hardLinkA2EmF":{"name":"hardLink","abstract":"

    Hard linked entry.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO12symbolicLinkA2EmF":{"name":"symbolicLink","abstract":"

    Symbolically linked entry.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO16characterSpecialA2EmF":{"name":"characterSpecial","abstract":"

    Character special file.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO12blockSpecialA2EmF":{"name":"blockSpecial","abstract":"

    Block special file.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO9directoryA2EmF":{"name":"directory","abstract":"

    Directory.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO4fifoA2EmF":{"name":"fifo","abstract":"

    FIFO special file.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO10contiguousA2EmF":{"name":"contiguous","abstract":"

    Contiguous file.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO20globalExtendedHeaderA2EmF":{"name":"globalExtendedHeader","abstract":"

    PAX global extended header. (Should not be encountered separately).

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO19localExtendedHeaderA2EmF":{"name":"localExtendedHeader","abstract":"

    PAX local extended header. (Should not be encountered separately).

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO23vendorUnknownOrReservedA2EmF":{"name":"vendorUnknownOrReserved","abstract":"

    Either unknown type, vendor specific or reserved value.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html":{"name":"EntryType","abstract":"

    Represents a type of an entry.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC4nameSSv":{"name":"name","abstract":"

    Name of the file or directory.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC11isDirectorySbv":{"name":"isDirectory","abstract":"

    True, if entry is a directory.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC4sizeSiv":{"name":"size","abstract":"

    Size of the data associated with the entry.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC15entryAttributess10DictionaryVySC16FileAttributeKeyVypGv":{"name":"entryAttributes","abstract":"

    Provides a dictionary with various attributes of the entry.","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC4modeSiSgv":{"name":"mode","abstract":"

    File mode.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC7ownerIDSiSgv":{"name":"ownerID","abstract":"

    Owner’s ID.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC7groupIDSiSgv":{"name":"groupID","abstract":"

    Owner’s group ID.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC16modificationTime10Foundation4DateVv":{"name":"modificationTime","abstract":"

    The most recent modification time of the original file or directory.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC4typeAC0C4TypeOv":{"name":"type","abstract":"

    Type of entry.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC13ownerUserNameSSSgv":{"name":"ownerUserName","abstract":"

    Owner’s user name.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC14ownerGroupNameSSSgv":{"name":"ownerGroupName","abstract":"

    Owner’s group name.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC10accessTime10Foundation4DateVSgv":{"name":"accessTime","abstract":"

    The most recent access time of the original file or directory (PAX only).

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC12creationTime10Foundation4DateVSgv":{"name":"creationTime","abstract":"

    The creation time of the original file or directory (PAX only).

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC7charsetSSSgv":{"name":"charset","abstract":"

    Name of the character set used to encode entry’s data (PAX only).

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC7commentSSSgv":{"name":"comment","abstract":"

    Comment associated with the entry (PAX only).

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC6isLinkSbv":{"name":"isLink","abstract":"

    True if entry is a symbolic link.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC8linkPathSSSgv":{"name":"linkPath","abstract":"

    Path to a linked file for symbolic link entry.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC28unknownExtendedHeaderEntriess10DictionaryVyS2SGv":{"name":"unknownExtendedHeaderEntries","abstract":"

    Other entries from PAX extended headers.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC4data10Foundation4DataVyF":{"name":"data()","abstract":"

    Returns data associated with this entry.

    ","parent_name":"TarEntry"},"Classes/TarContainer.html#/s:13SWCompression12TarContainerC4openSayAA0C5Entry_pG10Foundation4DataV9container_tKFZ":{"name":"open(container:)","abstract":"

    Processes TAR container and returns an array of ContainerEntry (which are actually TarEntry).

    ","parent_name":"TarContainer"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO4fifoA2EmF":{"name":"fifo","abstract":"

    FIFO special file.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO16characterSpecialA2EmF":{"name":"characterSpecial","abstract":"

    Character special file.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO9directoryA2EmF":{"name":"directory","abstract":"

    Directory.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO12blockSpecialA2EmF":{"name":"blockSpecial","abstract":"

    Block special file.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO7regularA2EmF":{"name":"regular","abstract":"

    Regular file.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO12symbolicLinkA2EmF":{"name":"symbolicLink","abstract":"

    Symbolic link.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO6socketA2EmF":{"name":"socket","abstract":"

    Socket.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV8rawValues6UInt32Vv":{"name":"rawValue","abstract":"

    Raw bit flags value.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesVAEs6UInt32V8rawValue_tcfc":{"name":"init(rawValue:)","abstract":"

    Initializes attributes with bit flags.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV7archiveAEvZ":{"name":"archive","abstract":"

    File is archive or archived.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV9directoryAEvZ":{"name":"directory","abstract":"

    File is a directory.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV6volumeAEvZ":{"name":"volume","abstract":"

    File is a volume.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV6systemAEvZ":{"name":"system","abstract":"

    File is a system file.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV6hiddenAEvZ":{"name":"hidden","abstract":"

    File is hidden.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV8readOnlyAEvZ":{"name":"readOnly","abstract":"

    File is read-only.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV8rawValues6UInt32Vv":{"name":"rawValue","abstract":"

    Raw bit flags value (in decimal).

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsVAEs6UInt32V8rawValue_tcfc":{"name":"init(rawValue:)","abstract":"

    Initializes permissions with bit flags in decimal.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV6setuidAEvZ":{"name":"setuid","abstract":"

    Set UID.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV6setgidAEvZ":{"name":"setgid","abstract":"

    Set GID.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV6stickyAEvZ":{"name":"sticky","abstract":"

    Sticky bit.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV9readOwnerAEvZ":{"name":"readOwner","abstract":"

    Owner can read.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV10writeOwnerAEvZ":{"name":"writeOwner","abstract":"

    Owner can write.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV12executeOwnerAEvZ":{"name":"executeOwner","abstract":"

    Owner can execute.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV9readGroupAEvZ":{"name":"readGroup","abstract":"

    Group can read.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV10writeGroupAEvZ":{"name":"writeGroup","abstract":"

    Group can write.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV12executeGroupAEvZ":{"name":"executeGroup","abstract":"

    Group can execute.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV9readOtherAEvZ":{"name":"readOther","abstract":"

    Others can read.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV10writeOtherAEvZ":{"name":"writeOther","abstract":"

    Others can write.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV12executeOtherAEvZ":{"name":"executeOther","abstract":"

    Others can execute.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html":{"name":"Permissions","abstract":"

    Represents file access permissions in UNIX format.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo/DosAttributes.html":{"name":"DosAttributes","abstract":"

    Represents file attributes in DOS format.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo/UnixType.html":{"name":"UnixType","abstract":"

    Represents file type in UNIX format.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV4nameSSSgv":{"name":"name","abstract":"

    Entry’s name.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV4sizeSiSgv":{"name":"size","abstract":"

    Entry’s data size.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV11isDirectorySbv":{"name":"isDirectory","abstract":"

    True, if entry is a directory.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV10accessTime10Foundation4DateVSgv":{"name":"accessTime","abstract":"

    Entry’s last access time and date.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV12creationTime10Foundation4DateVSgv":{"name":"creationTime","abstract":"

    Entry’s creation time and date.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV16modificationTime10Foundation4DateVSgv":{"name":"modificationTime","abstract":"

    Entry’s last modification time and date.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV13winAttributess6UInt32VSgv":{"name":"winAttributes","abstract":"

    7-Zip internal property which may contain UNIX permissions, type and/or DOS attributes.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV11permissionsAC11PermissionsVSgv":{"name":"permissions","abstract":"

    Entry’s UNIX file access permissions.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV13dosAttributesAC03DosG0VSgv":{"name":"dosAttributes","abstract":"

    Entry’s DOS attributes.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV8unixTypeAC04UnixG0OSgv":{"name":"unixType","abstract":"

    Entry’s UNIX file type.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV9hasStreamSbv":{"name":"hasStream","abstract":"

    7-Zip internal propety. Indicates whether entry has a stream (data) inside container.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV7isEmptySbv":{"name":"isEmpty","abstract":"

    True, if entry is an empty file. 7-Zip internal property.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV6isAntiSbv":{"name":"isAnti","abstract":"

    True if entry is an anti-file.","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV3crcs6UInt32VSgv":{"name":"crc","abstract":"

    CRC32 of entry’s data.

    ","parent_name":"SevenZipEntryInfo"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC4infoAA0bcD4InfoVv":{"name":"info","abstract":"

    Various information about entry.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC4nameSSv":{"name":"name","abstract":"

    Entry’s name.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC4sizeSiv":{"name":"size","abstract":"

    Entry’s data size.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC11isDirectorySbv":{"name":"isDirectory","abstract":"

    True, if entry is a directory.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC6isLinkSbv":{"name":"isLink","abstract":"

    True, if entry is a symbolic link.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC8linkPathSSSgv":{"name":"linkPath","abstract":"

    Path to a linked file for symbolic link entry.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC15entryAttributess10DictionaryVySC16FileAttributeKeyVypGv":{"name":"entryAttributes","abstract":"

    Provides a dictionary with various attributes of the entry.","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC15dataIsAvailableSbv":{"name":"dataIsAvailable","abstract":"

    True, if data for entry is available.","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC4data10Foundation4DataVyKF":{"name":"data()","abstract":"

    Returns data associated with this entry.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipContainer.html#/s:13SWCompression17SevenZipContainerC4openSayAA0D5Entry_pG10Foundation4DataV9container_tKFZ":{"name":"open(container:)","abstract":"

    Processes 7-Zip container and returns an array of ContainerEntry (which are actually SevenZipEntry).

    ","parent_name":"SevenZipContainer"},"Classes/SevenZipContainer.html#/s:13SWCompression17SevenZipContainerC4infoSayAA0bC9EntryInfoVG10Foundation4DataV9container_tKFZ":{"name":"info(container:)","abstract":"

    Processes ZIP container and returns an array of SevenZipEntryInfo,","parent_name":"SevenZipContainer"},"Classes/SevenZipContainer.html":{"name":"SevenZipContainer","abstract":"

    Provides open functions for 7-Zip containers.

    "},"Classes/SevenZipEntry.html":{"name":"SevenZipEntry","abstract":"

    Represents an entry in 7-Zip container.

    "},"Structs/SevenZipEntryInfo.html":{"name":"SevenZipEntryInfo","abstract":"

    Provides information about 7-Zip entry.

    "},"Classes/TarContainer.html":{"name":"TarContainer","abstract":"

    Provides open function for TAR containers.

    "},"Classes/TarEntry.html":{"name":"TarEntry","abstract":"

    Represents either a file or directory entry in TAR container.

    "},"Classes/ZipContainer.html":{"name":"ZipContainer","abstract":"

    Provides open function for ZIP containers.

    "},"Classes/ZipEntry.html":{"name":"ZipEntry","abstract":"

    Represents either a file or directory entry in ZIP container.

    "},"Structs/ZlibHeader/CompressionLevel.html#/s:13SWCompression10ZlibHeaderV16CompressionLevelO16fastestAlgorithmA2EmF":{"name":"fastestAlgorithm","abstract":"

    Fastest algorithm.

    ","parent_name":"CompressionLevel"},"Structs/ZlibHeader/CompressionLevel.html#/s:13SWCompression10ZlibHeaderV16CompressionLevelO13fastAlgorithmA2EmF":{"name":"fastAlgorithm","abstract":"

    Fast algorithm.

    ","parent_name":"CompressionLevel"},"Structs/ZlibHeader/CompressionLevel.html#/s:13SWCompression10ZlibHeaderV16CompressionLevelO16defaultAlgorithmA2EmF":{"name":"defaultAlgorithm","abstract":"

    Default algorithm.

    ","parent_name":"CompressionLevel"},"Structs/ZlibHeader/CompressionLevel.html#/s:13SWCompression10ZlibHeaderV16CompressionLevelO13slowAlgorithmA2EmF":{"name":"slowAlgorithm","abstract":"

    Slowest algorithm but with maximum compression.

    ","parent_name":"CompressionLevel"},"Structs/ZlibHeader/CompressionMethod.html#/s:13SWCompression10ZlibHeaderV17CompressionMethodO7deflateA2EmF":{"name":"deflate","abstract":"

    The only one supported compression method (Deflate).

    ","parent_name":"CompressionMethod"},"Structs/ZlibHeader/CompressionMethod.html":{"name":"CompressionMethod","abstract":"

    Supported compression methods in zlib archive.

    ","parent_name":"ZlibHeader"},"Structs/ZlibHeader/CompressionLevel.html":{"name":"CompressionLevel","abstract":"

    Levels of compression which can be used to create Zlib archive.

    ","parent_name":"ZlibHeader"},"Structs/ZlibHeader.html#/s:13SWCompression10ZlibHeaderV17compressionMethodAC011CompressionE0Ov":{"name":"compressionMethod","abstract":"

    Compression method of archive. Currently, always equals to .deflate.

    ","parent_name":"ZlibHeader"},"Structs/ZlibHeader.html#/s:13SWCompression10ZlibHeaderV16compressionLevelAC011CompressionE0Ov":{"name":"compressionLevel","abstract":"

    Level of compression used in archive.

    ","parent_name":"ZlibHeader"},"Structs/ZlibHeader.html#/s:13SWCompression10ZlibHeaderV10windowSizeSiv":{"name":"windowSize","abstract":"

    Size of ‘window’: moving interval of data which was used to make archive.

    ","parent_name":"ZlibHeader"},"Structs/ZlibHeader.html#/s:13SWCompression10ZlibHeaderVAC10Foundation4DataV7archive_tKcfc":{"name":"init(archive:)","abstract":"

    Initializes the structure with the values from Zlib archive.

    ","parent_name":"ZlibHeader"},"Classes/ZlibArchive.html#/s:13SWCompression11ZlibArchiveC9unarchive10Foundation4DataVAG7archive_tKFZ":{"name":"unarchive(archive:)","abstract":"

    Unarchives Zlib archive.

    ","parent_name":"ZlibArchive"},"Classes/ZlibArchive.html#/s:13SWCompression11ZlibArchiveC7archive10Foundation4DataVAG4data_tFZ":{"name":"archive(data:)","abstract":"

    Archives data into Zlib archive.","parent_name":"ZlibArchive"},"Classes/XZArchive.html#/s:13SWCompression9XZArchiveC9unarchive10Foundation4DataVAG7archive_tKFZ":{"name":"unarchive(archive:)","abstract":"

    Unarchives XZ archive.

    ","parent_name":"XZArchive"},"Classes/XZArchive.html#/s:13SWCompression9XZArchiveC14multiUnarchiveSay10Foundation4DataVGAG7archive_tKFZ":{"name":"multiUnarchive(archive:)","abstract":"

    Unarchives XZ archive which contains one or more streams.

    ","parent_name":"XZArchive"},"Structs/GzipHeader/FileSystemType.html#/s:13SWCompression10GzipHeaderV14FileSystemTypeO4unixA2EmF":{"name":"unix","abstract":"

    One of many UNIX-like systems.

    ","parent_name":"FileSystemType"},"Structs/GzipHeader/FileSystemType.html#/s:13SWCompression10GzipHeaderV14FileSystemTypeO9macintoshA2EmF":{"name":"macintosh","abstract":"

    Older Macintosh systems.

    ","parent_name":"FileSystemType"},"Structs/GzipHeader/FileSystemType.html#/s:13SWCompression10GzipHeaderV14FileSystemTypeO4ntfsA2EmF":{"name":"ntfs","abstract":"

    File system used in Microsoft™®© Windows™®©.

    ","parent_name":"FileSystemType"},"Structs/GzipHeader/FileSystemType.html#/s:13SWCompression10GzipHeaderV14FileSystemTypeO7unknownA2EmF":{"name":"unknown","abstract":"

    File system was unknown to the archiver.

    ","parent_name":"FileSystemType"},"Structs/GzipHeader/FileSystemType.html#/s:13SWCompression10GzipHeaderV14FileSystemTypeO5otherA2EmF":{"name":"other","abstract":"

    File system is one of the rare systems.

    ","parent_name":"FileSystemType"},"Structs/GzipHeader/CompressionMethod.html#/s:13SWCompression10GzipHeaderV17CompressionMethodO7deflateA2EmF":{"name":"deflate","abstract":"

    The only one supported compression method (Deflate).

    ","parent_name":"CompressionMethod"},"Structs/GzipHeader/CompressionMethod.html":{"name":"CompressionMethod","abstract":"

    Supported compression methods in GZip archive.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader/FileSystemType.html":{"name":"FileSystemType","abstract":"

    Type of file system on which GZip archive was created.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderV17compressionMethodAC011CompressionE0Ov":{"name":"compressionMethod","abstract":"

    Compression method of archive. Currently, always equals to .deflate.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderV16modificationTime10Foundation4DateVSgv":{"name":"modificationTime","abstract":"

    The most recent modification time of the original file.","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderV6osTypeAC010FileSystemE0Ov":{"name":"osType","abstract":"

    Type of file system on which archivation took place.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderV8fileNameSSSgv":{"name":"fileName","abstract":"

    Name of the original file. If archive doesn’t contain file’s name, then nil.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderV7commentSSSgv":{"name":"comment","abstract":"

    Comment stored in archive. If archive doesn’t contain any comment, then nil.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderV10isTextFileSbv":{"name":"isTextFile","abstract":"

    Check if file is likely to be text file or ASCII-file.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderVAC10Foundation4DataV7archive_tKcfc":{"name":"init(archive:)","abstract":"

    Initializes the structure with the values from the first ‘member’ of GZip archive.

    ","parent_name":"GzipHeader"},"Classes/GzipArchive/Member.html#/s:13SWCompression11GzipArchiveC6MemberV6headerAA0B6HeaderVv":{"name":"header","abstract":"

    GZip header of a member.

    ","parent_name":"Member"},"Classes/GzipArchive/Member.html#/s:13SWCompression11GzipArchiveC6MemberV4data10Foundation4DataVv":{"name":"data","abstract":"

    Unarchived data from a member.

    ","parent_name":"Member"},"Classes/GzipArchive/Member.html":{"name":"Member","abstract":"

    Represents a member of multi-member of GZip archive.

    ","parent_name":"GzipArchive"},"Classes/GzipArchive.html#/s:13SWCompression11GzipArchiveC9unarchive10Foundation4DataVAG7archive_tKFZ":{"name":"unarchive(archive:)","abstract":"

    Unarchives GZip archive.

    ","parent_name":"GzipArchive"},"Classes/GzipArchive.html#/s:13SWCompression11GzipArchiveC14multiUnarchiveSayAC6MemberVG10Foundation4DataV7archive_tKFZ":{"name":"multiUnarchive(archive:)","abstract":"

    Unarchives multi-member GZip archive.","parent_name":"GzipArchive"},"Classes/GzipArchive.html#/s:13SWCompression11GzipArchiveC7archive10Foundation4DataVAG4data_SSSg7commentAI8fileNameSb14writeHeaderCRCSb10isTextFileAA0bL0V0P10SystemTypeOSg02osR0AE4DateVSg16modificationTimetKFZ":{"name":"archive(data:comment:fileName:writeHeaderCRC:isTextFile:osType:modificationTime:)","abstract":"

    Archives data into GZip archive, using various specified options.","parent_name":"GzipArchive"},"Classes/GzipArchive.html":{"name":"GzipArchive","abstract":"

    Provides unarchive and archive functions for GZip archives.

    "},"Structs/GzipHeader.html":{"name":"GzipHeader","abstract":"

    Represents a GZip archive’s header.

    "},"Classes/XZArchive.html":{"name":"XZArchive","abstract":"

    Provides unarchive function for XZ archives.

    "},"Classes/ZlibArchive.html":{"name":"ZlibArchive","abstract":"

    Provides unarchive and archive functions for Zlib archives.

    "},"Structs/ZlibHeader.html":{"name":"ZlibHeader","abstract":"

    Represents a Zlib archive’s header.

    "},"Classes/LZMA2.html#/s:13SWCompression5LZMA2C10decompress10Foundation4DataVAG4data_tKFZ":{"name":"decompress(data:)","abstract":"

    Decompresses data using LZMA2 algortihm.

    ","parent_name":"LZMA2"},"Classes/LZMA.html#/s:13SWCompression4LZMAC10decompress10Foundation4DataVAG4data_tKFZ":{"name":"decompress(data:)","abstract":"

    Decompresses data using LZMA algortihm.

    ","parent_name":"LZMA"},"Classes/Deflate.html#/s:13SWCompression7DeflateC10decompress10Foundation4DataVAG4data_tKFZ":{"name":"decompress(data:)","abstract":"

    Decompresses data using Deflate algortihm.

    ","parent_name":"Deflate"},"Classes/Deflate.html#/s:13SWCompression7DeflateC8compress10Foundation4DataVAG4data_tFZ":{"name":"compress(data:)","abstract":"

    Compresses data with Deflate algortihm.

    ","parent_name":"Deflate"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO3oneA2EmF":{"name":"one","abstract":"

    Undocumented

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO3twoA2EmF":{"name":"two","abstract":"

    Undocumented

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO5threeA2EmF":{"name":"three","abstract":"

    Undocumented

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO4fourA2EmF":{"name":"four","abstract":"

    Undocumented

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO4fiveA2EmF":{"name":"five","abstract":"

    Undocumented

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO3sixA2EmF":{"name":"six","abstract":"

    Undocumented

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO5sevenA2EmF":{"name":"seven","abstract":"

    Undocumented

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO5eightA2EmF":{"name":"eight","abstract":"

    Undocumented

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO4nineA2EmF":{"name":"nine","abstract":"

    Undocumented

    ","parent_name":"BlockSize"},"Classes/BZip2.html#/s:13SWCompression5BZip2C10decompress10Foundation4DataVAG4data_tKFZ":{"name":"decompress(data:)","abstract":"

    Decompresses data using BZip2 algortihm.

    ","parent_name":"BZip2"},"Classes/BZip2.html#/s:13SWCompression20CompressionAlgorithmP8compress10Foundation4DataVAG4data_tKFZ":{"name":"compress(data:)","parent_name":"BZip2"},"Classes/BZip2.html#/s:13SWCompression5BZip2C8compress10Foundation4DataVAG4data_AC9BlockSizeO05blockH0tFZ":{"name":"compress(data:blockSize:)","abstract":"

    Undocumented

    ","parent_name":"BZip2"},"Classes/BZip2/BlockSize.html":{"name":"BlockSize","abstract":"

    Undocumented

    ","parent_name":"BZip2"},"Classes/BZip2.html":{"name":"BZip2","abstract":"

    Provides decompression function for BZip2 algorithm.

    "},"Classes/Deflate.html":{"name":"Deflate","abstract":"

    Provides compression and decompression functions for Deflate algorithm.

    "},"Classes/LZMA.html":{"name":"LZMA","abstract":"

    Provides decompression function for LZMA algorithm.

    "},"Classes/LZMA2.html":{"name":"LZMA2","abstract":"

    Provides decompression function for LZMA2 algorithm.

    "},"Compression.html":{"name":"Compression"},"Archives.html":{"name":"Archives"},"Containers.html":{"name":"Containers"},"Errors.html":{"name":"Errors"},"Protocols.html":{"name":"Protocols"}} \ No newline at end of file +{"Protocols/DecompressionAlgorithm.html#/s:13SWCompression22DecompressionAlgorithmP10decompress10Foundation4DataVAG4data_tKFZ":{"name":"decompress(data:)","abstract":"

    Decompress data compressed with particular algorithm.

    ","parent_name":"DecompressionAlgorithm"},"Protocols/CompressionAlgorithm.html#/s:13SWCompression20CompressionAlgorithmP8compress10Foundation4DataVAG4data_tKFZ":{"name":"compress(data:)","abstract":"

    Cmpress data with particular algorithm.

    ","parent_name":"CompressionAlgorithm"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP4nameSSv":{"name":"name","abstract":"

    Retrieve name of the entry from the container.

    ","parent_name":"ContainerEntry"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP4sizeSiv":{"name":"size","abstract":"

    Retrieve size of the entry’s data from the container.

    ","parent_name":"ContainerEntry"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP11isDirectorySbv":{"name":"isDirectory","abstract":"

    True, if entry is a directory.

    ","parent_name":"ContainerEntry"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP6isLinkSbv":{"name":"isLink","abstract":"

    True, if entry is a symbolic link.

    ","parent_name":"ContainerEntry"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP8linkPathSSSgv":{"name":"linkPath","abstract":"

    Path to a linked file for symbolic link entry.

    ","parent_name":"ContainerEntry"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP15entryAttributess10DictionaryVySC16FileAttributeKeyVypGv":{"name":"entryAttributes","abstract":"

    Provides a dictionary with various attributes of the entry.","parent_name":"ContainerEntry"},"Protocols/ContainerEntry.html#/s:13SWCompression14ContainerEntryP4data10Foundation4DataVyKF":{"name":"data()","abstract":"

    Retrieve entry’s data from the container.

    ","parent_name":"ContainerEntry"},"Protocols/Container.html#/s:13SWCompression9ContainerP4openSayAA0B5Entry_pG10Foundation4DataV9container_tKFZ":{"name":"open(container:)","abstract":"

    Retrieve all the entries from the container.

    ","parent_name":"Container"},"Protocols/Archive.html#/s:13SWCompression7ArchiveP9unarchive10Foundation4DataVAG7archive_tKFZ":{"name":"unarchive(archive:)","abstract":"

    Unarchive data from the archive.

    ","parent_name":"Archive"},"Protocols/Archive.html":{"name":"Archive","abstract":"

    A type that represents an archive.

    "},"Protocols/Container.html":{"name":"Container","abstract":"

    A type that represents a container of files, directories and/or other data.

    "},"Protocols/ContainerEntry.html":{"name":"ContainerEntry","abstract":"

    A type that represents an entry from a container (file or directory) with attributes.

    "},"Protocols/CompressionAlgorithm.html":{"name":"CompressionAlgorithm","abstract":"

    A type that provides an implementation of a particular compression algorithm.

    "},"Protocols/DecompressionAlgorithm.html":{"name":"DecompressionAlgorithm","abstract":"

    A type that provides an implementation of a particular decompression algorithm.

    "},"Enums/ZlibError.html#/s:13SWCompression9ZlibErrorO22wrongCompressionMethodA2CmF":{"name":"wrongCompressionMethod","abstract":"

    Compression method used in archive is different from Deflate, which is the only supported one.

    ","parent_name":"ZlibError"},"Enums/ZlibError.html#/s:13SWCompression9ZlibErrorO20wrongCompressionInfoA2CmF":{"name":"wrongCompressionInfo","abstract":"

    Compression info has value incompatible with Deflate compression method.

    ","parent_name":"ZlibError"},"Enums/ZlibError.html#/s:13SWCompression9ZlibErrorO11wrongFcheckA2CmF":{"name":"wrongFcheck","abstract":"

    First two bytes of archive’s flags are inconsistent with each other.

    ","parent_name":"ZlibError"},"Enums/ZlibError.html#/s:13SWCompression9ZlibErrorO21wrongCompressionLevelA2CmF":{"name":"wrongCompressionLevel","abstract":"

    Compression level has value, which is different from the supported ones.

    ","parent_name":"ZlibError"},"Enums/ZlibError.html#/s:13SWCompression9ZlibErrorO12wrongAdler32AC10Foundation4DataVcACmF":{"name":"wrongAdler32","abstract":"

    Computed checksum of uncompressed data doesn’t match the value stored in archive.","parent_name":"ZlibError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO10wrongMagicA2CmF":{"name":"wrongMagic","abstract":"

    Either ‘magic’ number in header or footer isn’t equal to a predefined value.

    ","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO15wrongFieldValueA2CmF":{"name":"wrongFieldValue","abstract":"

    One of the fields in archive has an incorrect value.

    ","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO18fieldReservedValueA2CmF":{"name":"fieldReservedValue","abstract":"

    One of the reserved fields in archive has an unexpected value, which can also mean (apart from damaged archive),","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO12wrongInfoCRCA2CmF":{"name":"wrongInfoCRC","abstract":"

    Checksum of one of the fields of archive doesn’t match the value stored in archive.

    ","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO13wrongFilterIDA2CmF":{"name":"wrongFilterID","abstract":"

    Filter used in archvie is unsupported.

    ","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO15checkTypeSHA256A2CmF":{"name":"checkTypeSHA256","abstract":"

    Archive uses SHA-256 checksum which is unsupported.

    ","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO13wrongDataSizeA2CmF":{"name":"wrongDataSize","abstract":"

    Either size of decompressed data isn’t equal to the one specified in archive or","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO10wrongCheckAC10Foundation4DataVcACmF":{"name":"wrongCheck","abstract":"

    Computed checksum of uncompressed data doesn’t match the value stored in the archive.","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO12wrongPaddingA2CmF":{"name":"wrongPadding","abstract":"

    Padding (null-bytes appended to an archive’s structure) is incorrect.

    ","parent_name":"XZError"},"Enums/XZError.html#/s:13SWCompression7XZErrorO21multiByteIntegerErrorA2CmF":{"name":"multiByteIntegerError","abstract":"

    Either null byte encountered or exceeded maximum amount bytes during reading multi byte number.

    ","parent_name":"XZError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO10wrongMagicA2CmF":{"name":"wrongMagic","abstract":"

    First two bytes (‘magic’ number) of archive isn’t 31 and 139.

    ","parent_name":"GzipError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO22wrongCompressionMethodA2CmF":{"name":"wrongCompressionMethod","abstract":"

    Compression method used in archive is different from Deflate, which is the only supported one.

    ","parent_name":"GzipError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO10wrongFlagsA2CmF":{"name":"wrongFlags","abstract":"

    One of the reserved fields in archive has an unexpected value, which can also mean (apart from damaged archive),","parent_name":"GzipError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO14wrongHeaderCRCA2CmF":{"name":"wrongHeaderCRC","abstract":"

    Computed CRC of archive’s header doesn’t match the value stored in archive.

    ","parent_name":"GzipError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO8wrongCRCAC10Foundation4DataVcACmF":{"name":"wrongCRC","abstract":"

    Computed checksum of uncompressed data doesn’t match the value stored in archive.","parent_name":"GzipError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO10wrongISizeA2CmF":{"name":"wrongISize","abstract":"

    Computed ‘isize’ didn’t match the value stored in the archive.

    ","parent_name":"GzipError"},"Enums/GzipError.html#/s:13SWCompression9GzipErrorO21cannotEncodeISOLatin1A2CmF":{"name":"cannotEncodeISOLatin1","abstract":"

    Either specified file name or comment cannot be encoded using ISO Latin-1 encoding.

    ","parent_name":"GzipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO27notFoundCentralDirectoryEndA2CmF":{"name":"notFoundCentralDirectoryEnd","abstract":"

    End of Central Directoty record wasn’t found.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO14wrongSignatureA2CmF":{"name":"wrongSignature","abstract":"

    Wrong signature of one of container’s structures.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO9wrongSizeA2CmF":{"name":"wrongSize","abstract":"

    Wrong either compressed or uncompressed size of a container’s entry.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO12wrongVersionA2CmF":{"name":"wrongVersion","abstract":"

    Version needed to process container is unsupported.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO24multiVolumesNotSupportedA2CmF":{"name":"multiVolumesNotSupported","abstract":"

    Container is either spanned or consists of several volumes. These features aren’t supported.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO22encryptionNotSupportedA2CmF":{"name":"encryptionNotSupported","abstract":"

    Entry or record is encrypted. This feature isn’t supported.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO20patchingNotSupportedA2CmF":{"name":"patchingNotSupported","abstract":"

    Entry contains patched data. This feature isn’t supported.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO23compressionNotSupportedA2CmF":{"name":"compressionNotSupported","abstract":"

    Entry is compressed using unsupported compression method.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO16wrongLocalHeaderA2CmF":{"name":"wrongLocalHeader","abstract":"

    Local header of an entry is inconsistent with Central Directory.

    ","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO10wrongCRC32AC10Foundation4DataVcACmF":{"name":"wrongCRC32","abstract":"

    Computed checksum of entry’s data doesn’t match the value stored in container.","parent_name":"ZipError"},"Enums/ZipError.html#/s:13SWCompression8ZipErrorO14wrongTextFieldA2CmF":{"name":"wrongTextField","abstract":"

    Either entry’s comment or file name cannot be processed using UTF-8 encoding.

    ","parent_name":"ZipError"},"Enums/TarError.html#/s:13SWCompression8TarErrorO20tooSmallFileIsPassedA2CmF":{"name":"tooSmallFileIsPassed","abstract":"

    Size of data is too small, even to contain only one header.

    ","parent_name":"TarError"},"Enums/TarError.html#/s:13SWCompression8TarErrorO16fieldIsNotNumberA2CmF":{"name":"fieldIsNotNumber","abstract":"

    Failed to process a field as a number.

    ","parent_name":"TarError"},"Enums/TarError.html#/s:13SWCompression8TarErrorO19wrongHeaderChecksumA2CmF":{"name":"wrongHeaderChecksum","abstract":"

    Computed checksum of a header doesn’t match the value stored in container.

    ","parent_name":"TarError"},"Enums/TarError.html#/s:13SWCompression8TarErrorO17wrongUstarVersionA2CmF":{"name":"wrongUstarVersion","abstract":"

    Unsupported version of USTAR format.

    ","parent_name":"TarError"},"Enums/TarError.html#/s:13SWCompression8TarErrorO19wrongPaxHeaderEntryA2CmF":{"name":"wrongPaxHeaderEntry","abstract":"

    Entry from PAX extended header is in incorrect format.

    ","parent_name":"TarError"},"Enums/TarError.html#/s:13SWCompression8TarErrorO14notAsciiStringA2CmF":{"name":"notAsciiString","abstract":"

    Failed to process a field as an ASCII string.

    ","parent_name":"TarError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO14wrongSignatureA2CmF":{"name":"wrongSignature","abstract":"

    Wrong container’s signature.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO18wrongFormatVersionA2CmF":{"name":"wrongFormatVersion","abstract":"

    Unsupporte version of container’s format.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO8wrongCRCA2CmF":{"name":"wrongCRC","abstract":"

    CRC either of one of the files from the container","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO9wrongSizeA2CmF":{"name":"wrongSize","abstract":"

    Size either of one of the files from the container","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO20startPosNotSupportedA2CmF":{"name":"startPosNotSupported","abstract":"

    Files have StartPos property. This feature isn’t supported.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO20externalNotSupportedA2CmF":{"name":"externalNotSupported","abstract":"

    External feature isn’t supported.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO23multiStreamNotSupportedA2CmF":{"name":"multiStreamNotSupported","abstract":"

    Coders with multiple in and/or out streams aren’t supported.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO29additionalStreamsNotSupportedA2CmF":{"name":"additionalStreamsNotSupported","abstract":"

    Additional streams feature isn’t supported.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO23compressionNotSupportedA2CmF":{"name":"compressionNotSupported","abstract":"

    Entry is compressed using unsupported compression method.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO22encryptionNotSupportedA2CmF":{"name":"encryptionNotSupported","abstract":"

    Entry or container’s header is encrypted. This feature isn’t supported.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO17dataIsUnavailableA2CmF":{"name":"dataIsUnavailable","abstract":"

    Entry’s data isn’t available.

    ","parent_name":"SevenZipError"},"Enums/SevenZipError.html#/s:13SWCompression13SevenZipErrorO017internalStructureD0A2CmF":{"name":"internalStructureError","abstract":"

    Unknown/incorrect internal 7-Zip structure was encountered or","parent_name":"SevenZipError"},"Enums/LZMA2Error.html#/s:13SWCompression10LZMA2ErrorO15wrongPropertiesA2CmF":{"name":"wrongProperties","abstract":"

    Reserved bits of LZMA2 properties’ byte aren’t equal to zero.

    ","parent_name":"LZMA2Error"},"Enums/LZMA2Error.html#/s:13SWCompression10LZMA2ErrorO19wrongDictionarySizeA2CmF":{"name":"wrongDictionarySize","abstract":"

    Dictionary size is too big.

    ","parent_name":"LZMA2Error"},"Enums/LZMA2Error.html#/s:13SWCompression10LZMA2ErrorO16wrongControlByteA2CmF":{"name":"wrongControlByte","abstract":"

    Unknown conrol byte value of LZMA2 packet.

    ","parent_name":"LZMA2Error"},"Enums/LZMA2Error.html#/s:13SWCompression10LZMA2ErrorO10wrongResetA2CmF":{"name":"wrongReset","abstract":"

    Unknown reset instruction encountered in LZMA2 packet.

    ","parent_name":"LZMA2Error"},"Enums/LZMA2Error.html#/s:13SWCompression10LZMA2ErrorO10wrongSizesA2CmF":{"name":"wrongSizes","abstract":"

    Either size of decompressed data isn’t equal to the one specified in LZMA2 packet or","parent_name":"LZMA2Error"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO15wrongPropertiesA2CmF":{"name":"wrongProperties","abstract":"

    Properties’ byte is greater than 225.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO21rangeDecoderInitErrorA2CmF":{"name":"rangeDecoderInitError","abstract":"

    Unable to initialize RanderDecorer.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO24exceededUncompressedSizeA2CmF":{"name":"exceededUncompressedSize","abstract":"

    Size of uncompressed data hit specified limit in the middle of decoding.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO13windowIsEmptyA2CmF":{"name":"windowIsEmpty","abstract":"

    Unable to perfrom repeat-distance decoding because there is nothing to repeat.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO23rangeDecoderFinishErrorA2CmF":{"name":"rangeDecoderFinishError","abstract":"

    End of stream marker is reached, but range decoder is in incorrect state.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO16repeatWillExceedA2CmF":{"name":"repeatWillExceed","abstract":"

    The number of bytes to repeat is greater than the amount bytes that is left to decode.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO17notEnoughToRepeatA2CmF":{"name":"notEnoughToRepeat","abstract":"

    The amount of already decoded bytes is smaller than repeat length.

    ","parent_name":"LZMAError"},"Enums/LZMAError.html#/s:13SWCompression9LZMAErrorO23decoderIsNotInitialisedA2CmF":{"name":"decoderIsNotInitialised","abstract":"

    LZMADecoder wasn’t properly initialized before decoding data.

    ","parent_name":"LZMAError"},"Enums/DeflateError.html#/s:13SWCompression12DeflateErrorO29wrongUncompressedBlockLengthsA2CmF":{"name":"wrongUncompressedBlockLengths","abstract":"

    Uncompressed block’s length and nlength bytes isn’t consistent with each other.

    ","parent_name":"DeflateError"},"Enums/DeflateError.html#/s:13SWCompression12DeflateErrorO14wrongBlockTypeA2CmF":{"name":"wrongBlockType","abstract":"

    Unknown block type (not 0, 1 or 2).

    ","parent_name":"DeflateError"},"Enums/DeflateError.html#/s:13SWCompression12DeflateErrorO11wrongSymbolA2CmF":{"name":"wrongSymbol","abstract":"

    Decoded symbol was found in Huffman tree but is unknown.

    ","parent_name":"DeflateError"},"Enums/DeflateError.html#/s:13SWCompression12DeflateErrorO14symbolNotFoundA2CmF":{"name":"symbolNotFound","abstract":"

    Symbol wasn’t found in Huffman tree.

    ","parent_name":"DeflateError"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO10wrongMagicA2CmF":{"name":"wrongMagic","abstract":"

    ‘Magic’ number is not 0x425a.

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO22wrongCompressionMethodA2CmF":{"name":"wrongCompressionMethod","abstract":"

    Compression method is not type ‘h’ (not Huffman).

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO14wrongBlockSizeA2CmF":{"name":"wrongBlockSize","abstract":"

    Unsupported block size (not from ‘0’ to ‘9’).

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO14wrongBlockTypeA2CmF":{"name":"wrongBlockType","abstract":"

    Unsupported block type (is neither ‘pi’ nor ‘sqrt(pi)’).

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO15randomizedBlockA2CmF":{"name":"randomizedBlock","abstract":"

    Block is randomized.

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO18wrongHuffmanGroupsA2CmF":{"name":"wrongHuffmanGroups","abstract":"

    Wrong number of Huffman tables/groups (should be between 2 and 6).

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO13wrongSelectorA2CmF":{"name":"wrongSelector","abstract":"

    Selector is greater than the total number of Huffman tables/groups.

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO22wrongHuffmanLengthCodeA2CmF":{"name":"wrongHuffmanLengthCode","abstract":"

    Wrong code of Huffman length (should be between 0 and 20).

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO14symbolNotFoundA2CmF":{"name":"symbolNotFound","abstract":"

    Symbol wasn’t found in Huffman tree.

    ","parent_name":"BZip2Error"},"Enums/BZip2Error.html#/s:13SWCompression10BZip2ErrorO8wrongCRCAC10Foundation4DataVcACmF":{"name":"wrongCRC","abstract":"

    Computed checksum of uncompressed data doesn’t match the value stored in archive.","parent_name":"BZip2Error"},"Enums/BZip2Error.html":{"name":"BZip2Error","abstract":"

    Represents an error, which happened during BZip2 decompression."},"Enums/DeflateError.html":{"name":"DeflateError","abstract":"

    Represents an error, which happened during Deflate compression or decompression."},"Enums/LZMAError.html":{"name":"LZMAError","abstract":"

    Represents an error, which happened during LZMA decompression."},"Enums/LZMA2Error.html":{"name":"LZMA2Error","abstract":"

    Represents an error, which happened during LZMA2 decompression."},"Enums/SevenZipError.html":{"name":"SevenZipError","abstract":"

    Represents an error, which happened during processing 7-Zip container."},"Enums/TarError.html":{"name":"TarError","abstract":"

    Represents an error, which happened during processing TAR container."},"Enums/ZipError.html":{"name":"ZipError","abstract":"

    Represents an error, which happened during processing ZIP container."},"Enums/GzipError.html":{"name":"GzipError","abstract":"

    Represents an error, which happened during processing GZip archive."},"Enums/XZError.html":{"name":"XZError","abstract":"

    Represents an error, which happened during unarchiving XZ archive."},"Enums/ZlibError.html":{"name":"ZlibError","abstract":"

    Represents an error, which happened during processing Zlib archive."},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC4nameSSv":{"name":"name","abstract":"

    Name of the file or directory.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC7commentSSSgv":{"name":"comment","abstract":"

    Comment associated with the entry.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC10attributess6UInt32Vv":{"name":"attributes","abstract":"

    File or directory attributes related to the file system of the container’s creator.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC4sizeSiv":{"name":"size","abstract":"

    Size of the data associated with the entry.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC11isDirectorySbv":{"name":"isDirectory","abstract":"

    True, if entry is a directory.","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC6isLinkSbv":{"name":"isLink","abstract":"

    True, if entry is a symbolic link.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC8linkPathSSSgv":{"name":"linkPath","abstract":"

    Path to a linked file for symbolic link entry.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC10isTextFileSbv":{"name":"isTextFile","abstract":"

    True if entry is likely to be text or ASCII file.

    ","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC15entryAttributess10DictionaryVySC16FileAttributeKeyVypGv":{"name":"entryAttributes","abstract":"

    Provides a dictionary with various attributes of the entry.","parent_name":"ZipEntry"},"Classes/ZipEntry.html#/s:13SWCompression8ZipEntryC4data10Foundation4DataVyKF":{"name":"data()","abstract":"

    Returns data associated with this entry.

    ","parent_name":"ZipEntry"},"Classes/ZipContainer.html#/s:13SWCompression12ZipContainerC4openSayAA0C5Entry_pG10Foundation4DataV9container_tKFZ":{"name":"open(container:)","abstract":"

    Processes ZIP container and returns an array of ContainerEntry (which are actually ZipEntry).

    ","parent_name":"ZipContainer"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO6normalA2EmF":{"name":"normal","abstract":"

    Normal file.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO8hardLinkA2EmF":{"name":"hardLink","abstract":"

    Hard linked entry.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO12symbolicLinkA2EmF":{"name":"symbolicLink","abstract":"

    Symbolically linked entry.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO16characterSpecialA2EmF":{"name":"characterSpecial","abstract":"

    Character special file.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO12blockSpecialA2EmF":{"name":"blockSpecial","abstract":"

    Block special file.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO9directoryA2EmF":{"name":"directory","abstract":"

    Directory.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO4fifoA2EmF":{"name":"fifo","abstract":"

    FIFO special file.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO10contiguousA2EmF":{"name":"contiguous","abstract":"

    Contiguous file.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO20globalExtendedHeaderA2EmF":{"name":"globalExtendedHeader","abstract":"

    PAX global extended header. (Should not be encountered separately).

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO19localExtendedHeaderA2EmF":{"name":"localExtendedHeader","abstract":"

    PAX local extended header. (Should not be encountered separately).

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html#/s:13SWCompression8TarEntryC0C4TypeO23vendorUnknownOrReservedA2EmF":{"name":"vendorUnknownOrReserved","abstract":"

    Either unknown type, vendor specific or reserved value.

    ","parent_name":"EntryType"},"Classes/TarEntry/EntryType.html":{"name":"EntryType","abstract":"

    Represents a type of an entry.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC4nameSSv":{"name":"name","abstract":"

    Name of the file or directory.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC11isDirectorySbv":{"name":"isDirectory","abstract":"

    True, if entry is a directory.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC4sizeSiv":{"name":"size","abstract":"

    Size of the data associated with the entry.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC15entryAttributess10DictionaryVySC16FileAttributeKeyVypGv":{"name":"entryAttributes","abstract":"

    Provides a dictionary with various attributes of the entry.","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC4modeSiSgv":{"name":"mode","abstract":"

    File mode.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC7ownerIDSiSgv":{"name":"ownerID","abstract":"

    Owner’s ID.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC7groupIDSiSgv":{"name":"groupID","abstract":"

    Owner’s group ID.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC16modificationTime10Foundation4DateVv":{"name":"modificationTime","abstract":"

    The most recent modification time of the original file or directory.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC4typeAC0C4TypeOv":{"name":"type","abstract":"

    Type of entry.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC13ownerUserNameSSSgv":{"name":"ownerUserName","abstract":"

    Owner’s user name.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC14ownerGroupNameSSSgv":{"name":"ownerGroupName","abstract":"

    Owner’s group name.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC10accessTime10Foundation4DateVSgv":{"name":"accessTime","abstract":"

    The most recent access time of the original file or directory (PAX only).

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC12creationTime10Foundation4DateVSgv":{"name":"creationTime","abstract":"

    The creation time of the original file or directory (PAX only).

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC7charsetSSSgv":{"name":"charset","abstract":"

    Name of the character set used to encode entry’s data (PAX only).

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC7commentSSSgv":{"name":"comment","abstract":"

    Comment associated with the entry (PAX only).

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC6isLinkSbv":{"name":"isLink","abstract":"

    True if entry is a symbolic link.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC8linkPathSSSgv":{"name":"linkPath","abstract":"

    Path to a linked file for symbolic link entry.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC28unknownExtendedHeaderEntriess10DictionaryVyS2SGv":{"name":"unknownExtendedHeaderEntries","abstract":"

    Other entries from PAX extended headers.

    ","parent_name":"TarEntry"},"Classes/TarEntry.html#/s:13SWCompression8TarEntryC4data10Foundation4DataVyF":{"name":"data()","abstract":"

    Returns data associated with this entry.

    ","parent_name":"TarEntry"},"Classes/TarContainer.html#/s:13SWCompression12TarContainerC4openSayAA0C5Entry_pG10Foundation4DataV9container_tKFZ":{"name":"open(container:)","abstract":"

    Processes TAR container and returns an array of ContainerEntry (which are actually TarEntry).

    ","parent_name":"TarContainer"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO4fifoA2EmF":{"name":"fifo","abstract":"

    FIFO special file.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO16characterSpecialA2EmF":{"name":"characterSpecial","abstract":"

    Character special file.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO9directoryA2EmF":{"name":"directory","abstract":"

    Directory.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO12blockSpecialA2EmF":{"name":"blockSpecial","abstract":"

    Block special file.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO7regularA2EmF":{"name":"regular","abstract":"

    Regular file.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO12symbolicLinkA2EmF":{"name":"symbolicLink","abstract":"

    Symbolic link.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/UnixType.html#/s:13SWCompression17SevenZipEntryInfoV8UnixTypeO6socketA2EmF":{"name":"socket","abstract":"

    Socket.

    ","parent_name":"UnixType"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV8rawValues6UInt32Vv":{"name":"rawValue","abstract":"

    Raw bit flags value.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesVAEs6UInt32V8rawValue_tcfc":{"name":"init(rawValue:)","abstract":"

    Initializes attributes with bit flags.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV7archiveAEvZ":{"name":"archive","abstract":"

    File is archive or archived.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV9directoryAEvZ":{"name":"directory","abstract":"

    File is a directory.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV6volumeAEvZ":{"name":"volume","abstract":"

    File is a volume.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV6systemAEvZ":{"name":"system","abstract":"

    File is a system file.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV6hiddenAEvZ":{"name":"hidden","abstract":"

    File is hidden.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/DosAttributes.html#/s:13SWCompression17SevenZipEntryInfoV13DosAttributesV8readOnlyAEvZ":{"name":"readOnly","abstract":"

    File is read-only.

    ","parent_name":"DosAttributes"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV8rawValues6UInt32Vv":{"name":"rawValue","abstract":"

    Raw bit flags value (in decimal).

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsVAEs6UInt32V8rawValue_tcfc":{"name":"init(rawValue:)","abstract":"

    Initializes permissions with bit flags in decimal.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV6setuidAEvZ":{"name":"setuid","abstract":"

    Set UID.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV6setgidAEvZ":{"name":"setgid","abstract":"

    Set GID.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV6stickyAEvZ":{"name":"sticky","abstract":"

    Sticky bit.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV9readOwnerAEvZ":{"name":"readOwner","abstract":"

    Owner can read.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV10writeOwnerAEvZ":{"name":"writeOwner","abstract":"

    Owner can write.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV12executeOwnerAEvZ":{"name":"executeOwner","abstract":"

    Owner can execute.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV9readGroupAEvZ":{"name":"readGroup","abstract":"

    Group can read.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV10writeGroupAEvZ":{"name":"writeGroup","abstract":"

    Group can write.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV12executeGroupAEvZ":{"name":"executeGroup","abstract":"

    Group can execute.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV9readOtherAEvZ":{"name":"readOther","abstract":"

    Others can read.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV10writeOtherAEvZ":{"name":"writeOther","abstract":"

    Others can write.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html#/s:13SWCompression17SevenZipEntryInfoV11PermissionsV12executeOtherAEvZ":{"name":"executeOther","abstract":"

    Others can execute.

    ","parent_name":"Permissions"},"Structs/SevenZipEntryInfo/Permissions.html":{"name":"Permissions","abstract":"

    Represents file access permissions in UNIX format.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo/DosAttributes.html":{"name":"DosAttributes","abstract":"

    Represents file attributes in DOS format.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo/UnixType.html":{"name":"UnixType","abstract":"

    Represents file type in UNIX format.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV4nameSSSgv":{"name":"name","abstract":"

    Entry’s name.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV4sizeSiSgv":{"name":"size","abstract":"

    Entry’s data size.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV11isDirectorySbv":{"name":"isDirectory","abstract":"

    True, if entry is a directory.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV10accessTime10Foundation4DateVSgv":{"name":"accessTime","abstract":"

    Entry’s last access time and date.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV12creationTime10Foundation4DateVSgv":{"name":"creationTime","abstract":"

    Entry’s creation time and date.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV16modificationTime10Foundation4DateVSgv":{"name":"modificationTime","abstract":"

    Entry’s last modification time and date.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV13winAttributess6UInt32VSgv":{"name":"winAttributes","abstract":"

    7-Zip internal property which may contain UNIX permissions, type and/or DOS attributes.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV11permissionsAC11PermissionsVSgv":{"name":"permissions","abstract":"

    Entry’s UNIX file access permissions.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV13dosAttributesAC03DosG0VSgv":{"name":"dosAttributes","abstract":"

    Entry’s DOS attributes.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV8unixTypeAC04UnixG0OSgv":{"name":"unixType","abstract":"

    Entry’s UNIX file type.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV9hasStreamSbv":{"name":"hasStream","abstract":"

    7-Zip internal propety. Indicates whether entry has a stream (data) inside container.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV7isEmptySbv":{"name":"isEmpty","abstract":"

    True, if entry is an empty file. 7-Zip internal property.

    ","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV6isAntiSbv":{"name":"isAnti","abstract":"

    True if entry is an anti-file.","parent_name":"SevenZipEntryInfo"},"Structs/SevenZipEntryInfo.html#/s:13SWCompression17SevenZipEntryInfoV3crcs6UInt32VSgv":{"name":"crc","abstract":"

    CRC32 of entry’s data.

    ","parent_name":"SevenZipEntryInfo"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC4infoAA0bcD4InfoVv":{"name":"info","abstract":"

    Various information about entry.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC4nameSSv":{"name":"name","abstract":"

    Entry’s name.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC4sizeSiv":{"name":"size","abstract":"

    Entry’s data size.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC11isDirectorySbv":{"name":"isDirectory","abstract":"

    True, if entry is a directory.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC6isLinkSbv":{"name":"isLink","abstract":"

    True, if entry is a symbolic link.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC8linkPathSSSgv":{"name":"linkPath","abstract":"

    Path to a linked file for symbolic link entry.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC15entryAttributess10DictionaryVySC16FileAttributeKeyVypGv":{"name":"entryAttributes","abstract":"

    Provides a dictionary with various attributes of the entry.","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC15dataIsAvailableSbv":{"name":"dataIsAvailable","abstract":"

    True, if data for entry is available.","parent_name":"SevenZipEntry"},"Classes/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryC4data10Foundation4DataVyKF":{"name":"data()","abstract":"

    Returns data associated with this entry.

    ","parent_name":"SevenZipEntry"},"Classes/SevenZipContainer.html#/s:13SWCompression17SevenZipContainerC4openSayAA0D5Entry_pG10Foundation4DataV9container_tKFZ":{"name":"open(container:)","abstract":"

    Processes 7-Zip container and returns an array of ContainerEntry (which are actually SevenZipEntry).

    ","parent_name":"SevenZipContainer"},"Classes/SevenZipContainer.html#/s:13SWCompression17SevenZipContainerC4infoSayAA0bC9EntryInfoVG10Foundation4DataV9container_tKFZ":{"name":"info(container:)","abstract":"

    Processes ZIP container and returns an array of SevenZipEntryInfo,","parent_name":"SevenZipContainer"},"Classes/SevenZipContainer.html":{"name":"SevenZipContainer","abstract":"

    Provides open functions for 7-Zip containers.

    "},"Classes/SevenZipEntry.html":{"name":"SevenZipEntry","abstract":"

    Represents an entry in 7-Zip container.

    "},"Structs/SevenZipEntryInfo.html":{"name":"SevenZipEntryInfo","abstract":"

    Provides information about 7-Zip entry.

    "},"Classes/TarContainer.html":{"name":"TarContainer","abstract":"

    Provides open function for TAR containers.

    "},"Classes/TarEntry.html":{"name":"TarEntry","abstract":"

    Represents either a file or directory entry in TAR container.

    "},"Classes/ZipContainer.html":{"name":"ZipContainer","abstract":"

    Provides open function for ZIP containers.

    "},"Classes/ZipEntry.html":{"name":"ZipEntry","abstract":"

    Represents either a file or directory entry in ZIP container.

    "},"Structs/ZlibHeader/CompressionLevel.html#/s:13SWCompression10ZlibHeaderV16CompressionLevelO16fastestAlgorithmA2EmF":{"name":"fastestAlgorithm","abstract":"

    Fastest algorithm.

    ","parent_name":"CompressionLevel"},"Structs/ZlibHeader/CompressionLevel.html#/s:13SWCompression10ZlibHeaderV16CompressionLevelO13fastAlgorithmA2EmF":{"name":"fastAlgorithm","abstract":"

    Fast algorithm.

    ","parent_name":"CompressionLevel"},"Structs/ZlibHeader/CompressionLevel.html#/s:13SWCompression10ZlibHeaderV16CompressionLevelO16defaultAlgorithmA2EmF":{"name":"defaultAlgorithm","abstract":"

    Default algorithm.

    ","parent_name":"CompressionLevel"},"Structs/ZlibHeader/CompressionLevel.html#/s:13SWCompression10ZlibHeaderV16CompressionLevelO13slowAlgorithmA2EmF":{"name":"slowAlgorithm","abstract":"

    Slowest algorithm but with maximum compression.

    ","parent_name":"CompressionLevel"},"Structs/ZlibHeader/CompressionMethod.html#/s:13SWCompression10ZlibHeaderV17CompressionMethodO7deflateA2EmF":{"name":"deflate","abstract":"

    The only one supported compression method (Deflate).

    ","parent_name":"CompressionMethod"},"Structs/ZlibHeader/CompressionMethod.html":{"name":"CompressionMethod","abstract":"

    Supported compression methods in zlib archive.

    ","parent_name":"ZlibHeader"},"Structs/ZlibHeader/CompressionLevel.html":{"name":"CompressionLevel","abstract":"

    Levels of compression which can be used to create Zlib archive.

    ","parent_name":"ZlibHeader"},"Structs/ZlibHeader.html#/s:13SWCompression10ZlibHeaderV17compressionMethodAC011CompressionE0Ov":{"name":"compressionMethod","abstract":"

    Compression method of archive. Currently, always equals to .deflate.

    ","parent_name":"ZlibHeader"},"Structs/ZlibHeader.html#/s:13SWCompression10ZlibHeaderV16compressionLevelAC011CompressionE0Ov":{"name":"compressionLevel","abstract":"

    Level of compression used in archive.

    ","parent_name":"ZlibHeader"},"Structs/ZlibHeader.html#/s:13SWCompression10ZlibHeaderV10windowSizeSiv":{"name":"windowSize","abstract":"

    Size of ‘window’: moving interval of data which was used to make archive.

    ","parent_name":"ZlibHeader"},"Structs/ZlibHeader.html#/s:13SWCompression10ZlibHeaderVAC10Foundation4DataV7archive_tKcfc":{"name":"init(archive:)","abstract":"

    Initializes the structure with the values from Zlib archive.

    ","parent_name":"ZlibHeader"},"Classes/ZlibArchive.html#/s:13SWCompression11ZlibArchiveC9unarchive10Foundation4DataVAG7archive_tKFZ":{"name":"unarchive(archive:)","abstract":"

    Unarchives Zlib archive.

    ","parent_name":"ZlibArchive"},"Classes/ZlibArchive.html#/s:13SWCompression11ZlibArchiveC7archive10Foundation4DataVAG4data_tFZ":{"name":"archive(data:)","abstract":"

    Archives data into Zlib archive.","parent_name":"ZlibArchive"},"Classes/XZArchive.html#/s:13SWCompression9XZArchiveC9unarchive10Foundation4DataVAG7archive_tKFZ":{"name":"unarchive(archive:)","abstract":"

    Unarchives XZ archive.

    ","parent_name":"XZArchive"},"Classes/XZArchive.html#/s:13SWCompression9XZArchiveC14multiUnarchiveSay10Foundation4DataVGAG7archive_tKFZ":{"name":"multiUnarchive(archive:)","abstract":"

    Unarchives XZ archive which contains one or more streams.

    ","parent_name":"XZArchive"},"Structs/GzipHeader/FileSystemType.html#/s:13SWCompression10GzipHeaderV14FileSystemTypeO4unixA2EmF":{"name":"unix","abstract":"

    One of many UNIX-like systems.

    ","parent_name":"FileSystemType"},"Structs/GzipHeader/FileSystemType.html#/s:13SWCompression10GzipHeaderV14FileSystemTypeO9macintoshA2EmF":{"name":"macintosh","abstract":"

    Older Macintosh systems.

    ","parent_name":"FileSystemType"},"Structs/GzipHeader/FileSystemType.html#/s:13SWCompression10GzipHeaderV14FileSystemTypeO4ntfsA2EmF":{"name":"ntfs","abstract":"

    File system used in Microsoft™®© Windows™®©.

    ","parent_name":"FileSystemType"},"Structs/GzipHeader/FileSystemType.html#/s:13SWCompression10GzipHeaderV14FileSystemTypeO7unknownA2EmF":{"name":"unknown","abstract":"

    File system was unknown to the archiver.

    ","parent_name":"FileSystemType"},"Structs/GzipHeader/FileSystemType.html#/s:13SWCompression10GzipHeaderV14FileSystemTypeO5otherA2EmF":{"name":"other","abstract":"

    File system is one of the rare systems.

    ","parent_name":"FileSystemType"},"Structs/GzipHeader/CompressionMethod.html#/s:13SWCompression10GzipHeaderV17CompressionMethodO7deflateA2EmF":{"name":"deflate","abstract":"

    The only one supported compression method (Deflate).

    ","parent_name":"CompressionMethod"},"Structs/GzipHeader/CompressionMethod.html":{"name":"CompressionMethod","abstract":"

    Supported compression methods in GZip archive.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader/FileSystemType.html":{"name":"FileSystemType","abstract":"

    Type of file system on which GZip archive was created.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderV17compressionMethodAC011CompressionE0Ov":{"name":"compressionMethod","abstract":"

    Compression method of archive. Currently, always equals to .deflate.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderV16modificationTime10Foundation4DateVSgv":{"name":"modificationTime","abstract":"

    The most recent modification time of the original file.","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderV6osTypeAC010FileSystemE0Ov":{"name":"osType","abstract":"

    Type of file system on which archivation took place.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderV8fileNameSSSgv":{"name":"fileName","abstract":"

    Name of the original file. If archive doesn’t contain file’s name, then nil.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderV7commentSSSgv":{"name":"comment","abstract":"

    Comment stored in archive. If archive doesn’t contain any comment, then nil.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderV10isTextFileSbv":{"name":"isTextFile","abstract":"

    Check if file is likely to be text file or ASCII-file.

    ","parent_name":"GzipHeader"},"Structs/GzipHeader.html#/s:13SWCompression10GzipHeaderVAC10Foundation4DataV7archive_tKcfc":{"name":"init(archive:)","abstract":"

    Initializes the structure with the values from the first ‘member’ of GZip archive.

    ","parent_name":"GzipHeader"},"Classes/GzipArchive/Member.html#/s:13SWCompression11GzipArchiveC6MemberV6headerAA0B6HeaderVv":{"name":"header","abstract":"

    GZip header of a member.

    ","parent_name":"Member"},"Classes/GzipArchive/Member.html#/s:13SWCompression11GzipArchiveC6MemberV4data10Foundation4DataVv":{"name":"data","abstract":"

    Unarchived data from a member.

    ","parent_name":"Member"},"Classes/GzipArchive/Member.html":{"name":"Member","abstract":"

    Represents a member of multi-member of GZip archive.

    ","parent_name":"GzipArchive"},"Classes/GzipArchive.html#/s:13SWCompression11GzipArchiveC9unarchive10Foundation4DataVAG7archive_tKFZ":{"name":"unarchive(archive:)","abstract":"

    Unarchives GZip archive.

    ","parent_name":"GzipArchive"},"Classes/GzipArchive.html#/s:13SWCompression11GzipArchiveC14multiUnarchiveSayAC6MemberVG10Foundation4DataV7archive_tKFZ":{"name":"multiUnarchive(archive:)","abstract":"

    Unarchives multi-member GZip archive.","parent_name":"GzipArchive"},"Classes/GzipArchive.html#/s:13SWCompression11GzipArchiveC7archive10Foundation4DataVAG4data_SSSg7commentAI8fileNameSb14writeHeaderCRCSb10isTextFileAA0bL0V0P10SystemTypeOSg02osR0AE4DateVSg16modificationTimetKFZ":{"name":"archive(data:comment:fileName:writeHeaderCRC:isTextFile:osType:modificationTime:)","abstract":"

    Archives data into GZip archive, using various specified options.","parent_name":"GzipArchive"},"Classes/GzipArchive.html":{"name":"GzipArchive","abstract":"

    Provides unarchive and archive functions for GZip archives.

    "},"Structs/GzipHeader.html":{"name":"GzipHeader","abstract":"

    Represents a GZip archive’s header.

    "},"Classes/XZArchive.html":{"name":"XZArchive","abstract":"

    Provides unarchive function for XZ archives.

    "},"Classes/ZlibArchive.html":{"name":"ZlibArchive","abstract":"

    Provides unarchive and archive functions for Zlib archives.

    "},"Structs/ZlibHeader.html":{"name":"ZlibHeader","abstract":"

    Represents a Zlib archive’s header.

    "},"Classes/LZMA2.html#/s:13SWCompression5LZMA2C10decompress10Foundation4DataVAG4data_tKFZ":{"name":"decompress(data:)","abstract":"

    Decompresses data using LZMA2 algortihm.

    ","parent_name":"LZMA2"},"Classes/LZMA.html#/s:13SWCompression4LZMAC10decompress10Foundation4DataVAG4data_tKFZ":{"name":"decompress(data:)","abstract":"

    Decompresses data using LZMA algortihm.

    ","parent_name":"LZMA"},"Classes/Deflate.html#/s:13SWCompression7DeflateC10decompress10Foundation4DataVAG4data_tKFZ":{"name":"decompress(data:)","abstract":"

    Decompresses data using Deflate algortihm.

    ","parent_name":"Deflate"},"Classes/Deflate.html#/s:13SWCompression7DeflateC8compress10Foundation4DataVAG4data_tFZ":{"name":"compress(data:)","abstract":"

    Compresses data with Deflate algortihm.

    ","parent_name":"Deflate"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO3oneA2EmF":{"name":"one","abstract":"

    100 KB.

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO3twoA2EmF":{"name":"two","abstract":"

    200 KB.

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO5threeA2EmF":{"name":"three","abstract":"

    300 KB.

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO4fourA2EmF":{"name":"four","abstract":"

    400 KB.

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO4fiveA2EmF":{"name":"five","abstract":"

    500 KB.

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO3sixA2EmF":{"name":"six","abstract":"

    600 KB.

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO5sevenA2EmF":{"name":"seven","abstract":"

    700 KB.

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO5eightA2EmF":{"name":"eight","abstract":"

    800 KB.

    ","parent_name":"BlockSize"},"Classes/BZip2/BlockSize.html#/s:13SWCompression5BZip2C9BlockSizeO4nineA2EmF":{"name":"nine","abstract":"

    900 KB.

    ","parent_name":"BlockSize"},"Classes/BZip2.html#/s:13SWCompression5BZip2C10decompress10Foundation4DataVAG4data_tKFZ":{"name":"decompress(data:)","abstract":"

    Decompresses data using BZip2 algortihm.

    ","parent_name":"BZip2"},"Classes/BZip2.html#/s:13SWCompression5BZip2C8compress10Foundation4DataVAG4data_tFZ":{"name":"compress(data:)","abstract":"

    Compresses data with BZip2 algortihm.

    ","parent_name":"BZip2"},"Classes/BZip2.html#/s:13SWCompression5BZip2C8compress10Foundation4DataVAG4data_AC9BlockSizeO05blockH0tFZ":{"name":"compress(data:blockSize:)","abstract":"

    Compresses data with BZip2 algortihm, splitting data into blocks of specified blockSize.

    ","parent_name":"BZip2"},"Classes/BZip2/BlockSize.html":{"name":"BlockSize","abstract":"

    Represents size of blocks in which data is split during BZip2 compression.

    ","parent_name":"BZip2"},"Classes/BZip2.html":{"name":"BZip2","abstract":"

    Provides functions for compression and decompression for BZip2 algorithm.

    "},"Classes/Deflate.html":{"name":"Deflate","abstract":"

    Provides functions for compression and decompression for Deflate algorithm.

    "},"Classes/LZMA.html":{"name":"LZMA","abstract":"

    Provides decompression function for LZMA algorithm.

    "},"Classes/LZMA2.html":{"name":"LZMA2","abstract":"

    Provides decompression function for LZMA2 algorithm.

    "},"Compression.html":{"name":"Compression"},"Archives.html":{"name":"Archives"},"Containers.html":{"name":"Containers"},"Errors.html":{"name":"Errors"},"Protocols.html":{"name":"Protocols"}} \ No newline at end of file diff --git a/docs/undocumented.json b/docs/undocumented.json index 4ddef01e..f43c0df0 100644 --- a/docs/undocumented.json +++ b/docs/undocumented.json @@ -1,82 +1,6 @@ { "warnings": [ - { - "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/BZip2+BlockSize.swift", - "line": 10, - "symbol": "BZip2.BlockSize", - "symbol_kind": "source.lang.swift.decl.enum", - "warning": "undocumented" - }, - { - "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/BZip2+BlockSize.swift", - "line": 11, - "symbol": "BZip2.BlockSize.one", - "symbol_kind": "source.lang.swift.decl.enumelement", - "warning": "undocumented" - }, - { - "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/BZip2+BlockSize.swift", - "line": 12, - "symbol": "BZip2.BlockSize.two", - "symbol_kind": "source.lang.swift.decl.enumelement", - "warning": "undocumented" - }, - { - "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/BZip2+BlockSize.swift", - "line": 13, - "symbol": "BZip2.BlockSize.three", - "symbol_kind": "source.lang.swift.decl.enumelement", - "warning": "undocumented" - }, - { - "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/BZip2+BlockSize.swift", - "line": 14, - "symbol": "BZip2.BlockSize.four", - "symbol_kind": "source.lang.swift.decl.enumelement", - "warning": "undocumented" - }, - { - "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/BZip2+BlockSize.swift", - "line": 15, - "symbol": "BZip2.BlockSize.five", - "symbol_kind": "source.lang.swift.decl.enumelement", - "warning": "undocumented" - }, - { - "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/BZip2+BlockSize.swift", - "line": 16, - "symbol": "BZip2.BlockSize.six", - "symbol_kind": "source.lang.swift.decl.enumelement", - "warning": "undocumented" - }, - { - "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/BZip2+BlockSize.swift", - "line": 17, - "symbol": "BZip2.BlockSize.seven", - "symbol_kind": "source.lang.swift.decl.enumelement", - "warning": "undocumented" - }, - { - "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/BZip2+BlockSize.swift", - "line": 18, - "symbol": "BZip2.BlockSize.eight", - "symbol_kind": "source.lang.swift.decl.enumelement", - "warning": "undocumented" - }, - { - "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/BZip2+BlockSize.swift", - "line": 19, - "symbol": "BZip2.BlockSize.nine", - "symbol_kind": "source.lang.swift.decl.enumelement", - "warning": "undocumented" - }, - { - "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/BZip2+Compress.swift", - "line": 26, - "symbol": "BZip2.compress(data:blockSize:)", - "symbol_kind": "source.lang.swift.decl.function.method.static", - "warning": "undocumented" - } + ], "source_directory": "/Users/timofeysolomko/Developer/Compression/SWCompression" } \ No newline at end of file