From f99ef866116995bde706fb73dc41da7a7bda7fa2 Mon Sep 17 00:00:00 2001 From: Timofey Solomko Date: Sat, 28 Oct 2017 13:16:58 +0300 Subject: [PATCH] Rebuild jazzy docs --- docs/Archives.html | 63 +- docs/Classes/BZip2.html | 61 +- docs/Classes/BZip2/BlockSize.html | 71 +- docs/Classes/Deflate.html | 57 +- docs/Classes/GzipArchive.html | 61 +- docs/Classes/GzipArchive/Member.html | 57 +- docs/Classes/LZMA.html | 55 +- docs/Classes/LZMA2.html | 55 +- docs/Classes/SevenZipContainer.html | 69 +- docs/Classes/TarContainer.html | 95 ++- docs/Classes/TarEntry/EntryType.html | 606 -------------- docs/Classes/XZArchive.html | 127 +-- docs/Classes/ZipContainer.html | 95 ++- docs/Classes/ZlibArchive.html | 57 +- docs/Compression.html | 61 +- docs/Containers.html | 103 ++- docs/Enums/BZip2Error.html | 73 +- .../ContainerEntryType.html} | 245 +++--- docs/Enums/DeflateError.html | 61 +- docs/Enums/GzipError.html | 67 +- docs/Enums/LZMA2Error.html | 63 +- docs/Enums/LZMAError.html | 69 +- docs/Enums/SevenZipError.html | 77 +- docs/Enums/TarError.html | 97 +-- docs/Enums/XZError.html | 73 +- docs/Enums/ZipError.html | 75 +- docs/Enums/ZlibError.html | 63 +- docs/Errors.html | 80 +- docs/Other Enums.html | 273 +++++++ docs/Other Protocols.html | 273 +++++++ docs/Other Structs.html | 370 +++++++++ docs/Protocols.html | 99 ++- docs/Protocols/Archive.html | 55 +- docs/Protocols/CompressionAlgorithm.html | 57 +- docs/Protocols/Container.html | 99 ++- docs/Protocols/ContainerEntry.html | 253 ++---- docs/Protocols/ContainerEntryInfo.html | 405 +++++++++ docs/Protocols/DecompressionAlgorithm.html | 55 +- .../DosAttributes.html} | 212 +++-- docs/Structs/GzipHeader.html | 71 +- .../Structs/GzipHeader/CompressionMethod.html | 55 +- docs/Structs/GzipHeader/FileSystemType.html | 63 +- .../Permissions.html | 239 +++--- docs/Structs/SevenZipEntry.html | 317 ++++++++ docs/Structs/SevenZipEntryInfo.html | 298 +++---- .../SevenZipEntryInfo/DosAttributes.html | 476 ----------- docs/Structs/SevenZipEntryInfo/UnixType.html | 470 ----------- docs/Structs/TarEntry.html | 317 ++++++++ .../TarEntryInfo.html} | 767 ++++++++---------- docs/Structs/ZipEntry.html | 317 ++++++++ docs/Structs/ZipEntryInfo.html | 546 +++++++++++++ docs/Structs/ZlibHeader.html | 65 +- docs/Structs/ZlibHeader/CompressionLevel.html | 61 +- .../Structs/ZlibHeader/CompressionMethod.html | 55 +- docs/badge.svg | 2 +- .../Resources/Documents/Archives.html | 63 +- .../Resources/Documents/Classes/BZip2.html | 61 +- .../Documents/Classes/BZip2/BlockSize.html | 71 +- .../Resources/Documents/Classes/Deflate.html | 57 +- .../Documents/Classes/GzipArchive.html | 61 +- .../Documents/Classes/GzipArchive/Member.html | 57 +- .../Resources/Documents/Classes/LZMA.html | 55 +- .../Resources/Documents/Classes/LZMA2.html | 55 +- .../Documents/Classes/SevenZipContainer.html | 69 +- .../Documents/Classes/TarContainer.html | 95 ++- .../Documents/Classes/TarEntry/EntryType.html | 606 -------------- .../Documents/Classes/XZArchive.html | 127 +-- .../Documents/Classes/ZipContainer.html | 95 ++- .../Documents/Classes/ZlibArchive.html | 57 +- .../Resources/Documents/Compression.html | 61 +- .../Resources/Documents/Containers.html | 103 ++- .../Resources/Documents/Enums/BZip2Error.html | 73 +- .../Documents/Enums/ContainerEntryType.html} | 245 +++--- .../Documents/Enums/DeflateError.html | 61 +- .../Resources/Documents/Enums/GzipError.html | 67 +- .../Resources/Documents/Enums/LZMA2Error.html | 63 +- .../Resources/Documents/Enums/LZMAError.html | 69 +- .../Documents/Enums/SevenZipError.html | 77 +- .../Resources/Documents/Enums/TarError.html | 97 +-- .../Resources/Documents/Enums/XZError.html | 73 +- .../Resources/Documents/Enums/ZipError.html | 75 +- .../Resources/Documents/Enums/ZlibError.html | 63 +- .../Contents/Resources/Documents/Errors.html | 80 +- .../Resources/Documents/Other Enums.html | 273 +++++++ .../Resources/Documents/Other Protocols.html | 273 +++++++ .../Resources/Documents/Other Structs.html | 370 +++++++++ .../Resources/Documents/Protocols.html | 99 ++- .../Documents/Protocols/Archive.html | 55 +- .../Protocols/CompressionAlgorithm.html | 57 +- .../Documents/Protocols/Container.html | 99 ++- .../Documents/Protocols/ContainerEntry.html | 253 ++---- .../Protocols/ContainerEntryInfo.html | 405 +++++++++ .../Protocols/DecompressionAlgorithm.html | 55 +- .../DosAttributes.html} | 212 +++-- .../Documents/Structs/GzipHeader.html | 71 +- .../Structs/GzipHeader/CompressionMethod.html | 55 +- .../Structs/GzipHeader/FileSystemType.html | 63 +- .../Documents/Structs}/Permissions.html | 239 +++--- .../Documents/Structs/SevenZipEntry.html | 317 ++++++++ .../Documents/Structs/SevenZipEntryInfo.html | 298 +++---- .../SevenZipEntryInfo/DosAttributes.html | 476 ----------- .../Structs/SevenZipEntryInfo/UnixType.html | 470 ----------- .../Resources/Documents/Structs/TarEntry.html | 317 ++++++++ .../Documents/Structs/TarEntryInfo.html} | 767 ++++++++---------- .../Resources/Documents/Structs/ZipEntry.html | 317 ++++++++ .../Documents/Structs/ZipEntryInfo.html | 546 +++++++++++++ .../Documents/Structs/ZlibHeader.html | 65 +- .../Structs/ZlibHeader/CompressionLevel.html | 61 +- .../Structs/ZlibHeader/CompressionMethod.html | 55 +- .../Contents/Resources/Documents/index.html | 53 +- .../Contents/Resources/Documents/search.json | 2 +- .../Contents/Resources/docSet.dsidx | Bin 81920 -> 73728 bytes docs/docsets/SWCompression.tgz | Bin 124588 -> 123962 bytes docs/index.html | 53 +- docs/search.json | 2 +- docs/undocumented.json | 246 +++++- 116 files changed, 10990 insertions(+), 7376 deletions(-) delete mode 100644 docs/Classes/TarEntry/EntryType.html rename docs/{docsets/SWCompression.docset/Contents/Resources/Documents/Classes/ZipEntry.html => Enums/ContainerEntryType.html} (70%) create mode 100644 docs/Other Enums.html create mode 100644 docs/Other Protocols.html create mode 100644 docs/Other Structs.html create mode 100644 docs/Protocols/ContainerEntryInfo.html rename docs/{Classes/SevenZipEntry.html => Structs/DosAttributes.html} (70%) rename docs/{docsets/SWCompression.docset/Contents/Resources/Documents/Structs/SevenZipEntryInfo => Structs}/Permissions.html (71%) create mode 100644 docs/Structs/SevenZipEntry.html delete mode 100644 docs/Structs/SevenZipEntryInfo/DosAttributes.html delete mode 100644 docs/Structs/SevenZipEntryInfo/UnixType.html create mode 100644 docs/Structs/TarEntry.html rename docs/{docsets/SWCompression.docset/Contents/Resources/Documents/Classes/TarEntry.html => Structs/TarEntryInfo.html} (60%) create mode 100644 docs/Structs/ZipEntry.html create mode 100644 docs/Structs/ZipEntryInfo.html delete mode 100644 docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/TarEntry/EntryType.html rename docs/{Classes/ZipEntry.html => docsets/SWCompression.docset/Contents/Resources/Documents/Enums/ContainerEntryType.html} (70%) create mode 100644 docs/docsets/SWCompression.docset/Contents/Resources/Documents/Other Enums.html create mode 100644 docs/docsets/SWCompression.docset/Contents/Resources/Documents/Other Protocols.html create mode 100644 docs/docsets/SWCompression.docset/Contents/Resources/Documents/Other Structs.html create mode 100644 docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/ContainerEntryInfo.html rename docs/docsets/SWCompression.docset/Contents/Resources/Documents/{Classes/SevenZipEntry.html => Structs/DosAttributes.html} (70%) rename docs/{Structs/SevenZipEntryInfo => docsets/SWCompression.docset/Contents/Resources/Documents/Structs}/Permissions.html (71%) create mode 100644 docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/SevenZipEntry.html delete mode 100644 docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/SevenZipEntryInfo/DosAttributes.html delete mode 100644 docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/SevenZipEntryInfo/UnixType.html create mode 100644 docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/TarEntry.html rename docs/{Classes/TarEntry.html => docsets/SWCompression.docset/Contents/Resources/Documents/Structs/TarEntryInfo.html} (60%) create mode 100644 docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/ZipEntry.html create mode 100644 docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/ZipEntryInfo.html diff --git a/docs/Archives.html b/docs/Archives.html index 1eb81f45..1a1372b6 100644 --- a/docs/Archives.html +++ b/docs/Archives.html @@ -22,7 +22,7 @@ SWCompression Docs - (100% documented) + (86% documented)

@@ -111,34 +111,22 @@ SevenZipContainer

- - - - @@ -197,6 +185,39 @@ + + +
@@ -238,7 +259,7 @@ @@ -273,7 +294,7 @@ @@ -308,7 +329,7 @@ @@ -343,7 +364,7 @@ @@ -378,7 +399,7 @@ diff --git a/docs/Classes/BZip2.html b/docs/Classes/BZip2.html index 026d14b6..c728b446 100644 --- a/docs/Classes/BZip2.html +++ b/docs/Classes/BZip2.html @@ -23,7 +23,7 @@ SWCompression Docs - (100% documented) + (86% documented)

@@ -112,34 +112,22 @@ SevenZipContainer

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

Decompressed data.

@@ -335,7 +356,7 @@ Use - Show on GitHub + Show on GitHub @@ -396,7 +417,7 @@ Use - Show on GitHub + Show on GitHub @@ -431,7 +452,7 @@ Use - Show on GitHub + Show on GitHub diff --git a/docs/Classes/BZip2/BlockSize.html b/docs/Classes/BZip2/BlockSize.html index a3e256bd..894b0bfb 100644 --- a/docs/Classes/BZip2/BlockSize.html +++ b/docs/Classes/BZip2/BlockSize.html @@ -23,7 +23,7 @@ SWCompression Docs - (100% documented) + (86% documented)

@@ -112,34 +112,22 @@ SevenZipContainer

- - - - @@ -198,6 +186,39 @@ + + +
@@ -245,7 +266,7 @@ @@ -279,7 +300,7 @@ @@ -313,7 +334,7 @@ @@ -347,7 +368,7 @@ @@ -381,7 +402,7 @@ @@ -415,7 +436,7 @@ @@ -449,7 +470,7 @@ @@ -483,7 +504,7 @@ @@ -517,7 +538,7 @@ diff --git a/docs/Classes/Deflate.html b/docs/Classes/Deflate.html index f303660b..99d65e17 100644 --- a/docs/Classes/Deflate.html +++ b/docs/Classes/Deflate.html @@ -23,7 +23,7 @@ SWCompression Docs - (100% documented) + (86% documented)

@@ -112,34 +112,22 @@ SevenZipContainer

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

Decompressed data.

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

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

@@ -112,34 +112,22 @@ SevenZipContainer

- - - - @@ -198,6 +186,39 @@ + + +
@@ -246,7 +267,7 @@ @@ -315,7 +336,7 @@ it might not be archived with GZip or compressed with Deflate at all.

Unarchived data.

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

Unarchived data.

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

@@ -112,34 +112,22 @@ SevenZipContainer

- - - - @@ -198,6 +186,39 @@ + + +
@@ -245,7 +266,7 @@ @@ -275,7 +296,7 @@ diff --git a/docs/Classes/LZMA.html b/docs/Classes/LZMA.html index 61c7b6ae..af3d6655 100644 --- a/docs/Classes/LZMA.html +++ b/docs/Classes/LZMA.html @@ -23,7 +23,7 @@ SWCompression Docs - (100% documented) + (86% documented)

@@ -112,34 +112,22 @@ SevenZipContainer

- - - - @@ -198,6 +186,39 @@ + + +
@@ -276,7 +297,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 40e4ee24..c4d3bf5a 100644 --- a/docs/Classes/LZMA2.html +++ b/docs/Classes/LZMA2.html @@ -23,7 +23,7 @@ SWCompression Docs - (100% documented) + (86% documented)

@@ -112,34 +112,22 @@ SevenZipContainer

- - - - @@ -198,6 +186,39 @@ + + +
@@ -276,7 +297,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 3f4777c3..6f720d33 100644 --- a/docs/Classes/SevenZipContainer.html +++ b/docs/Classes/SevenZipContainer.html @@ -23,7 +23,7 @@ SWCompression Docs - (100% documented) + (86% documented)

@@ -112,34 +112,22 @@ SevenZipContainer

- - - - @@ -198,6 +186,39 @@ + + +
@@ -207,7 +228,7 @@

SevenZipContainer

-
public class SevenZipContainer: Container
+
public class SevenZipContainer
@@ -223,9 +244,9 @@
  • @@ -233,7 +254,7 @@
    -

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

    +

    Processes 7-Zip container and returns an array of SevenZipEntry.

    Important

    The order of entries is defined by 7-Zip container and, @@ -255,7 +276,7 @@ It may indicate that either container is damaged or it might not be 7-Zip contai

    Declaration

    Swift

    -
    public static func open(container data: Data) throws -> [ContainerEntry]
    +
    public static func open(container data: Data) throws -> [SevenZipEntry]
    @@ -280,10 +301,10 @@ It may indicate that either container is damaged or it might not be 7-Zip contai

    Return Value

    -

    Array of SevenZipEntry as an array of ContainerEntry.

    +

    Array of SevenZipEntry as an array of ContainerEntry.

    @@ -353,7 +374,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/TarContainer.html b/docs/Classes/TarContainer.html index a7b7656b..80318382 100644 --- a/docs/Classes/TarContainer.html +++ b/docs/Classes/TarContainer.html @@ -23,7 +23,7 @@ SWCompression Docs - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

  • - - - - @@ -198,6 +186,39 @@ + + +
    @@ -223,9 +244,9 @@
  • @@ -233,7 +254,7 @@
    -

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

    +

    Processes TAR container and returns an array of TarEntry.

    Important

    The order of entries is defined by TAR container and, @@ -253,7 +274,7 @@ but one SHOULD NOT rely on any particular order.

    Declaration

    Swift

    -
    public static func open(container data: Data) throws -> [ContainerEntry]
    +
    public static func open(container data: Data) throws -> [TarEntry]
    @@ -278,10 +299,40 @@ but one SHOULD NOT rely on any particular order.

    Return Value

    -

    Array of TarEntry as an array of ContainerEntry.

    +

    Array of TarEntry.

    +
    +
    +
  • +
  • +
    + + + + info(container:) + +
    +
    +
    +
    +
    +
    +

    Undocumented

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public class TarContainer: Container
    + +
    +
    +
    diff --git a/docs/Classes/TarEntry/EntryType.html b/docs/Classes/TarEntry/EntryType.html deleted file mode 100644 index 400f1015..00000000 --- a/docs/Classes/TarEntry/EntryType.html +++ /dev/null @@ -1,606 +0,0 @@ - - - - EntryType Enumeration Reference - - - - - - - - - - - - - - - - -
    -

    - - SWCompression Docs - - (100% documented) -

    - -

    -

    - -
    -

    - -

    - - - View on GitHub - -

    - -
    - - - -
    - -
    - -
    -
    -

    EntryType

    -
    -
    -
    public enum EntryType: String
    - -
    -
    -

    Represents a type of an entry.

    - -
    -
    - -
    -
    -
    -
      -
    • -
      - - - - normal - -
      -
      -
      -
      -
      -
      -

      Normal file.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case normal = "0"
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - hardLink - -
      -
      -
      -
      -
      -
      -

      Hard linked entry.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case hardLink = "1"
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - symbolicLink - -
      -
      -
      -
      -
      -
      -

      Symbolically linked entry.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case symbolicLink = "2"
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - characterSpecial - -
      -
      -
      -
      -
      -
      -

      Character special file.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case characterSpecial = "3"
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - blockSpecial - -
      -
      -
      -
      -
      -
      -

      Block special file.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case blockSpecial = "4"
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - directory - -
      -
      -
      -
      -
      -
      -

      Directory.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case directory = "5"
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - fifo - -
      -
      -
      -
      -
      -
      -

      FIFO special file.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case fifo = "6"
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - contiguous - -
      -
      -
      -
      -
      -
      -

      Contiguous file.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case contiguous = "7"
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - globalExtendedHeader - -
      -
      -
      -
      -
      -
      -

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

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case globalExtendedHeader = "g"
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - localExtendedHeader - -
      -
      -
      -
      -
      -
      -

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

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case localExtendedHeader = "x"
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • - -
      -
      -
      -
      -
      -

      Either unknown type, vendor specific or reserved value.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case vendorUnknownOrReserved
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
    - -
    -
    - - - - diff --git a/docs/Classes/XZArchive.html b/docs/Classes/XZArchive.html index e19c6771..ac0dffa0 100644 --- a/docs/Classes/XZArchive.html +++ b/docs/Classes/XZArchive.html @@ -23,7 +23,7 @@ SWCompression Docs - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

  • - - - - @@ -198,6 +186,39 @@ + + +
    @@ -233,7 +254,9 @@
    -

    Unarchives XZ archive.

    +

    Unarchives XZ archive. +Archives with multiple streams are supported, +but uncompressed data from each stream will be combined into single Data object.

    If data passed is not actually XZ archive, XZError will be thrown. Particularly, if filters other than LZMA2 are used in archive, @@ -281,75 +304,7 @@ It may indicate that either the archive is damaged or it might not be compressed

    Unarchived data.

    -
    - - -
  • - -
    -
    -
    -
    -
    -

    Unarchives XZ archive which contains one or more streams.

    -
    -

    Note

    -

    wrongCheck error contains only last processed stream’s data as their associated value -instead of all successfully processed members. -This is a known issue and it will be fixed in future major version -because solution requires backwards-incompatible API changes.

    - -
    -
    -

    Throws

    -

    LZMAError, LZMA2Error or XZError depending on the type of the problem. -It may indicate that one of the streams of archive is damaged or -it might not be archived with XZ or LZMA(2) at all.

    - -
    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public static func multiUnarchive(archive data: Data) throws -> [Data]
    - -
    -
    -
    -

    Parameters

    - - - - - - - -
    - - archive - - -
    -

    XZ archive with one or more streams.

    -
    -
    -
    -
    -

    Return Value

    -

    Unarchived data.

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

    @@ -112,34 +112,22 @@ SevenZipContainer

  • - - - - @@ -198,6 +186,39 @@ + + +
    @@ -223,9 +244,9 @@
  • @@ -233,7 +254,7 @@
    -

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

    +

    Processes ZIP container and returns an array of ZipEntry.

    Important

    The order of entries is defined by ZIP container and, @@ -255,7 +276,7 @@ It may indicate that either container is damaged or it might not be ZIP containe

    Declaration

    Swift

    -
    public static func open(container data: Data) throws -> [ContainerEntry]
    +
    public static func open(container data: Data) throws -> [ZipEntry]
    @@ -280,10 +301,40 @@ It may indicate that either container is damaged or it might not be ZIP containe

    Return Value

    -

    Array of ZipEntry as an array of ContainerEntry.

    +

    Array of ZipEntry.

    +
    +
    +
  • +
  • +
    + + + + info(container:) + +
    +
    +
    +
    +
    +
    +

    Undocumented

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public class ZipContainer: Container
    + +
    +
    +
    diff --git a/docs/Classes/ZlibArchive.html b/docs/Classes/ZlibArchive.html index 85b8e787..37bc5c4a 100644 --- a/docs/Classes/ZlibArchive.html +++ b/docs/Classes/ZlibArchive.html @@ -23,7 +23,7 @@ SWCompression Docs - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

  • - - - - @@ -198,6 +186,39 @@ + + +
    @@ -284,7 +305,7 @@ it might not be archived with Zlib or compressed with Deflate at all.

    Unarchived data.

    @@ -346,7 +367,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 8f8007bd..88cb0a91 100644 --- a/docs/Compression.html +++ b/docs/Compression.html @@ -22,7 +22,7 @@ SWCompression Docs - (100% documented) + (86% documented)

    @@ -111,34 +111,22 @@ SevenZipContainer

    - - - - @@ -197,6 +185,39 @@ + + +
    @@ -238,7 +259,7 @@ @@ -273,7 +294,7 @@ @@ -308,7 +329,7 @@ @@ -343,7 +364,7 @@ diff --git a/docs/Containers.html b/docs/Containers.html index 70c6d6b1..5be91825 100644 --- a/docs/Containers.html +++ b/docs/Containers.html @@ -22,7 +22,7 @@ SWCompression Docs - (100% documented) + (86% documented)

    @@ -111,34 +111,22 @@ SevenZipContainer

    - - - - @@ -197,6 +185,39 @@ + + +
    @@ -233,12 +254,12 @@

    Declaration

    Swift

    -
    public class SevenZipContainer: Container
    +
    public class SevenZipContainer
    @@ -250,9 +271,9 @@
  • @@ -262,18 +283,18 @@

    Represents an entry in 7-Zip container.

    - See more + See more

    Declaration

    Swift

    -
    public class SevenZipEntry: ContainerEntry
    +
    public struct SevenZipEntry: ContainerEntry
    @@ -303,12 +324,12 @@

    Declaration

    Swift

    -
    public struct SevenZipEntryInfo
    +
    public struct SevenZipEntryInfo: ContainerEntryInfo
    @@ -343,7 +364,7 @@ @@ -355,9 +376,9 @@
  • - - - TarEntry + + + TarEntry
    @@ -365,20 +386,20 @@
    -

    Represents either a file or directory entry in TAR container.

    +

    Represents an entry in 7-Zip container.

    - See more + See more

    Declaration

    Swift

    -
    public class TarEntry: ContainerEntry
    +
    public struct TarEntry: ContainerEntry
    @@ -413,7 +434,7 @@ @@ -425,9 +446,9 @@
  • - - - ZipEntry + + + ZipEntry
    @@ -437,18 +458,18 @@

    Represents either a file or directory entry in ZIP container.

    - See more + See more

    Declaration

    Swift

    -
    public class ZipEntry: ContainerEntry
    +
    public struct ZipEntry: ContainerEntry
    diff --git a/docs/Enums/BZip2Error.html b/docs/Enums/BZip2Error.html index 5b80384a..29adae02 100644 --- a/docs/Enums/BZip2Error.html +++ b/docs/Enums/BZip2Error.html @@ -23,7 +23,7 @@ SWCompression Docs - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

  • - - - - @@ -198,6 +186,39 @@ + + +
    @@ -246,7 +267,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -280,7 +301,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -314,7 +335,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -348,7 +369,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -382,7 +403,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -416,7 +437,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -450,7 +471,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -484,7 +505,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -518,7 +539,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -553,7 +574,7 @@ Associated value of the error contains already decompressed data.

    diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/ZipEntry.html b/docs/Enums/ContainerEntryType.html similarity index 70% rename from docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/ZipEntry.html rename to docs/Enums/ContainerEntryType.html index cf9df206..8c1c9ee7 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/ZipEntry.html +++ b/docs/Enums/ContainerEntryType.html @@ -1,7 +1,7 @@ - ZipEntry Class Reference + ContainerEntryType Enumeration Reference @@ -14,16 +14,16 @@ - + - +

    SWCompression Docs - (100% documented) + (86% documented)

    @@ -44,7 +44,7 @@

    @@ -112,34 +112,22 @@ SevenZipContainer - - - - @@ -198,20 +186,47 @@ + + +
    -

    ZipEntry

    -
    -
    -
    public class ZipEntry: ContainerEntry
    - -
    -
    -

    Represents either a file or directory entry in ZIP container.

    +

    ContainerEntryType

    +

    Undocumented

    @@ -223,9 +238,9 @@
  • - - - name + + + blockSpecial
    @@ -233,29 +248,33 @@
    -

    Name of the file or directory.

    +

    Block special file.

    Declaration

    Swift

    -
    public var name: String
    +
    case blockSpecial
  • + +
    +
    + +
    +
    +
    • - - - attributes + + + contiguous
      @@ -293,29 +316,33 @@
      -

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

      +

      Contiguous file.

      Declaration

      Swift

      -
      public var attributes: UInt32
      +
      case contiguous
    • +
    +
    +
    + +
    +
    +
    • - - - isDirectory + + + fifo
      @@ -353,31 +384,33 @@
      -

      True, if entry is a directory. -For MS-DOS and UNIX-like container creator’s OS, the result is based on ‘external file attributes’. -Otherwise, it is true if size of data is 0 AND last character of entry’s name is ‘/’.

      +

      FIFO special file.

      Declaration

      Swift

      -
      public var isDirectory: Bool
      +
      case fifo
    • +
    +
    +
    +
    • - - - isLink + + + hardLink
      @@ -385,29 +418,33 @@ Otherwise, it is true if size of data is 0 AND last character of entry’s n
      -

      True, if entry is a symbolic link.

      +

      Hard link.

      Declaration

      Swift

      -
      public let isLink: Bool
      +
      case hardLink
    • +
    +
    +
    +
    • - - - linkPath + + + regular
      @@ -415,29 +452,33 @@ Otherwise, it is true if size of data is 0 AND last character of entry’s n
      -

      Path to a linked file for symbolic link entry.

      +

      Regular file.

      Declaration

      Swift

      -
      public lazy var linkPath: String? =
      +
      case regular
    • +
    +
    +
    +
    • - - - isTextFile + + + socket
      @@ -445,29 +486,33 @@ Otherwise, it is true if size of data is 0 AND last character of entry’s n
      -

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

      +

      Socket.

      Declaration

      Swift

      -
      public var isTextFile: Bool
      +
      case socket
    • +
    +
    +
    +
    • @@ -475,39 +520,33 @@ Otherwise, it is true if size of data is 0 AND last character of entry’s n
      -

      Provides a dictionary with various attributes of the entry. -FileAttributeKey values are used as dictionary keys.

      -

      Possible attributes:

      - -
        -
      • FileAttributeKey.modificationDate
      • -
      • FileAttributeKey.size
      • -
      • FileAttributeKey.type, only if origin OS was UNIX- or DOS-like.
      • -
      • FileAttributeKey.posixPermissions, only if origin OS was UNIX-like.
      • -
      • FileAttributeKey.appendOnly, only if origin OS was DOS-like.
      • -
      +

      Symbolic link.

      Declaration

      Swift

      -
      public let entryAttributes: [FileAttributeKey: Any]
      +
      case symbolicLink
    • +
    +
    +
    + @@ -198,6 +186,39 @@ + + +
    @@ -246,7 +267,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
    @@ -280,7 +301,7 @@ It may indicate that either the data is damaged or it might not be compressed wi @@ -314,7 +335,7 @@ It may indicate that either the data is damaged or it might not be compressed wi @@ -348,7 +369,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 74a6ccf3..617be0ce 100644 --- a/docs/Enums/GzipError.html +++ b/docs/Enums/GzipError.html @@ -23,7 +23,7 @@ SWCompression Docs - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -246,7 +267,7 @@ It may indicate that either archive is damaged or it might not be GZip archive a @@ -280,7 +301,7 @@ It may indicate that either archive is damaged or it might not be GZip archive a @@ -315,7 +336,7 @@ that archive uses a newer version of GZip format.

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

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

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

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

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

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -246,7 +267,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -280,7 +301,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -314,7 +335,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -348,7 +369,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -383,7 +404,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 4e2b7f79..15bb129e 100644 --- a/docs/Enums/LZMAError.html +++ b/docs/Enums/LZMAError.html @@ -23,7 +23,7 @@ SWCompression Docs - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -246,7 +267,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -280,7 +301,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -314,7 +335,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -348,7 +369,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -382,7 +403,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -416,7 +437,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -450,7 +471,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -484,7 +505,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 0380da5e..c383c15a 100644 --- a/docs/Enums/SevenZipError.html +++ b/docs/Enums/SevenZipError.html @@ -23,7 +23,7 @@ SWCompression Docs - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -246,7 +267,7 @@ It may indicate that either container is damaged or it might not be 7-Zip contai @@ -280,7 +301,7 @@ It may indicate that either container is damaged or it might not be 7-Zip contai @@ -315,7 +336,7 @@ or one of the container’s strucutures is incorrect.

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

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

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

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

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

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

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

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

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

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

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -246,7 +267,7 @@ It may indicate that either container is damaged or it might not be TAR containe @@ -280,7 +301,7 @@ It may indicate that either container is damaged or it might not be TAR containe @@ -314,41 +335,7 @@ It may indicate that either container is damaged or it might not be TAR containe - - - - - -
    -
      -
    • -
      - - - - wrongUstarVersion - -
      -
      -
      -
      -
      -
      -

      Unsupported version of USTAR format.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case wrongUstarVersion
      - -
      -
      -
      @@ -382,7 +369,7 @@ It may indicate that either container is damaged or it might not be TAR containe
    @@ -416,7 +403,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 9afe0b78..37d388e8 100644 --- a/docs/Enums/XZError.html +++ b/docs/Enums/XZError.html @@ -23,7 +23,7 @@ SWCompression Docs - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -246,7 +267,7 @@ It may indicate that either archive is damaged or it might not be XZ archive at @@ -280,7 +301,7 @@ It may indicate that either archive is damaged or it might not be XZ archive at @@ -315,7 +336,7 @@ that archive uses a newer version of XZ format.

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

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

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

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

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

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

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

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

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -246,7 +267,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -280,7 +301,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -314,7 +335,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -348,7 +369,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -382,7 +403,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -416,7 +437,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -450,7 +471,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -484,7 +505,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -518,7 +539,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -553,7 +574,7 @@ Associated value of the error contains entry’s data.

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

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

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -246,7 +267,7 @@ It may indicate that either archive is damaged or it might not be Zlib archive a @@ -280,7 +301,7 @@ It may indicate that either archive is damaged or it might not be Zlib archive a @@ -314,7 +335,7 @@ It may indicate that either archive is damaged or it might not be Zlib archive a @@ -348,7 +369,7 @@ It may indicate that either archive is damaged or it might not be Zlib archive a @@ -383,7 +404,7 @@ Associated value of the error contains already decompressed data.

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

    @@ -111,34 +111,22 @@ SevenZipContainer

    - - - - @@ -197,6 +185,39 @@ + + +
    @@ -239,7 +260,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -275,7 +296,7 @@ It may indicate that either the data is damaged or it might not be compressed wi @@ -311,7 +332,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -347,7 +368,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -383,7 +404,7 @@ It may indicate that either container is damaged or it might not be 7-Zip contai @@ -391,13 +412,6 @@ It may indicate that either container is damaged or it might not be 7-Zip contai
    -
    • @@ -426,7 +440,7 @@ It may indicate that either container is damaged or it might not be TAR containe
    @@ -462,7 +476,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -498,7 +512,7 @@ It may indicate that either archive is damaged or it might not be GZip archive a @@ -534,7 +548,7 @@ It may indicate that either archive is damaged or it might not be XZ archive at @@ -570,7 +584,7 @@ It may indicate that either archive is damaged or it might not be Zlib archive a diff --git a/docs/Other Enums.html b/docs/Other Enums.html new file mode 100644 index 00000000..f842ce7c --- /dev/null +++ b/docs/Other Enums.html @@ -0,0 +1,273 @@ + + + + Other Enumerations Reference + + + + + + + + + + + + + + + +
    +

    + + SWCompression Docs + + (86% documented) +

    + +

    +

    + +
    +

    + +

    + + + View on GitHub + +

    + +
    + + + +
    + +
    + +
    +
    +

    Other Enumerations

    +

    The following enumerations are available globally.

    + +
    +
    + +
    +
    +
    + +
    +
    +
    + +
    +
    + + + + diff --git a/docs/Other Protocols.html b/docs/Other Protocols.html new file mode 100644 index 00000000..9c5951fd --- /dev/null +++ b/docs/Other Protocols.html @@ -0,0 +1,273 @@ + + + + Other Protocols Reference + + + + + + + + + + + + + + + +
    +

    + + SWCompression Docs + + (86% documented) +

    + +

    +

    + +
    +

    + +

    + + + View on GitHub + +

    + +
    + + + +
    + +
    + +
    +
    +

    Other Protocols

    +

    The following protocols are available globally.

    + +
    +
    + +
    +
    +
    + +
    +
    +
    + +
    +
    + + + + diff --git a/docs/Other Structs.html b/docs/Other Structs.html new file mode 100644 index 00000000..12fc6af9 --- /dev/null +++ b/docs/Other Structs.html @@ -0,0 +1,370 @@ + + + + Other Structures Reference + + + + + + + + + + + + + + + +
    +

    + + SWCompression Docs + + (86% documented) +

    + +

    +

    + +
    +

    + +

    + + + View on GitHub + +

    + +
    + + + +
    + +
    + +
    +
    +

    Other Structures

    +

    The following structures are available globally.

    + +
    +
    + +
    +
    +
    +
      +
    • +
      + + + + DosAttributes + +
      +
      +
      +
      +
      +
      +

      Represents file attributes in DOS format.

      + + See more +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public struct DosAttributes: OptionSet
      + +
      +
      + +
      +
      +
    • +
    +
    +
    + +
    +
    + +
    +
    +
      +
    • +
      + + + + Permissions + +
      +
      +
      +
      +
      +
      +

      Represents file access permissions in UNIX format.

      + + See more +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public struct Permissions: OptionSet
      + +
      +
      + +
      +
      +
    • +
    +
    +
    +
    + +
    +
    + + + + diff --git a/docs/Protocols.html b/docs/Protocols.html index de233343..76acf6bc 100644 --- a/docs/Protocols.html +++ b/docs/Protocols.html @@ -22,7 +22,7 @@ SWCompression Docs - (100% documented) + (86% documented)

    @@ -111,34 +111,22 @@ SevenZipContainer

    - - - - @@ -197,6 +185,39 @@ + + +
    @@ -238,11 +259,15 @@ + + +
    +
    • @@ -256,24 +281,20 @@
      -

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

      +

      Undocumented

      See more
      -
      -

      Declaration

      -
      -

      Swift

      -
      public protocol Container
      - -
      -
    • +
    +
    +
    +
    • @@ -287,24 +308,20 @@
      -

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

      +

      Undocumented

      See more
      -
      -

      Declaration

      -
      -

      Swift

      -
      public protocol ContainerEntry
      - -
      -
    • +
    +
    +
    +
    • @@ -331,11 +348,15 @@
    + + +
    +
    • @@ -362,7 +383,7 @@
    diff --git a/docs/Protocols/Archive.html b/docs/Protocols/Archive.html index fe08c62c..59854b8e 100644 --- a/docs/Protocols/Archive.html +++ b/docs/Protocols/Archive.html @@ -23,7 +23,7 @@ SWCompression Docs - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -245,7 +266,7 @@ diff --git a/docs/Protocols/CompressionAlgorithm.html b/docs/Protocols/CompressionAlgorithm.html index c99dbd5b..5d153049 100644 --- a/docs/Protocols/CompressionAlgorithm.html +++ b/docs/Protocols/CompressionAlgorithm.html @@ -23,7 +23,7 @@ SWCompression Docs - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -233,7 +254,7 @@
    -

    Cmpress data with particular algorithm.

    +

    Compress data with particular algorithm.

    @@ -245,7 +266,7 @@
    diff --git a/docs/Protocols/Container.html b/docs/Protocols/Container.html index 91270c64..87c89b6f 100644 --- a/docs/Protocols/Container.html +++ b/docs/Protocols/Container.html @@ -23,7 +23,7 @@ SWCompression Docs - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -205,13 +226,7 @@

    Container

    -
    -
    -
    public protocol Container
    - -
    -
    -

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

    +

    Undocumented

    @@ -223,9 +238,9 @@
  • @@ -233,19 +248,33 @@
    -

    Retrieve all the entries from the container.

    +

    Undocumented

    -
    -

    Declaration

    -
    -

    Swift

    -
    static func open(container: Data) throws -> [ContainerEntry]
    - -
    -
    +
    +
    +
  • +
  • +
    + + + + info(container:) + +
    +
    +
    +
    +
    +
    +

    Undocumented

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

    @@ -112,34 +112,22 @@ SevenZipContainer

  • - - - - @@ -198,6 +186,39 @@ + + +
    @@ -205,13 +226,7 @@

    ContainerEntry

    -
    -
    -
    public protocol ContainerEntry
    - -
    -
    -

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

    +

    Undocumented

    @@ -223,9 +238,9 @@
  • - - - name + + + info
    @@ -233,19 +248,11 @@
    -

    Retrieve name of the entry from the container.

    +

    Undocumented

    -
    -

    Declaration

    -
    -

    Swift

    -
    var name: String
    - -
    -
    @@ -253,9 +260,9 @@
  • - - - size + + + data
    @@ -263,175 +270,11 @@
    -

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

    +

    Undocumented

    -
    -

    Declaration

    -
    -

    Swift

    -
    var size: Int
    - -
    -
    -
    -
    -
  • -
  • -
    - - - - isDirectory - -
    -
    -
    -
    -
    -
    -

    True, if entry is a directory.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    var isDirectory: Bool
    - -
    -
    - -
    -
    -
  • -
  • -
    - - - - isLink - -
    -
    -
    -
    -
    -
    -

    True, if entry is a symbolic link.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    var isLink: Bool
    - -
    -
    - -
    -
    -
  • -
  • -
    - - - - linkPath - -
    -
    -
    -
    -
    -
    -

    Path to a linked file for symbolic link entry.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    var linkPath: String?
    - -
    -
    - -
    -
    -
  • -
  • -
    - - - - entryAttributes - -
    -
    -
    -
    -
    -
    -

    Provides a dictionary with various attributes of the entry. -FileAttributeKey values are used as dictionary keys.

    -
    -

    Note

    - Will be renamed to attributes in 4.0. - -
    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    var entryAttributes: [FileAttributeKey: Any]
    - -
    -
    - -
    -
    -
  • -
  • -
    - - - - data() - -
    -
    -
    -
    -
    -
    -

    Retrieve entry’s data from the container.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    func data() throws -> Data
    - -
    -
    -
    diff --git a/docs/Protocols/ContainerEntryInfo.html b/docs/Protocols/ContainerEntryInfo.html new file mode 100644 index 00000000..705e7758 --- /dev/null +++ b/docs/Protocols/ContainerEntryInfo.html @@ -0,0 +1,405 @@ + + + + ContainerEntryInfo Protocol Reference + + + + + + + + + + + + + + + + +
    +

    + + SWCompression Docs + + (86% documented) +

    + +

    +

    + +
    +

    + +

    + + + View on GitHub + +

    + +
    + + + +
    + +
    + +
    +
    +

    ContainerEntryInfo

    +

    Undocumented

    + +
    +
    + +
    +
    +
    + +
    +
    +
    + +
    +
    + + + + diff --git a/docs/Protocols/DecompressionAlgorithm.html b/docs/Protocols/DecompressionAlgorithm.html index 781851e3..19df4009 100644 --- a/docs/Protocols/DecompressionAlgorithm.html +++ b/docs/Protocols/DecompressionAlgorithm.html @@ -23,7 +23,7 @@ SWCompression Docs - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

  • - - - - @@ -198,6 +186,39 @@ + + +
    @@ -245,7 +266,7 @@ diff --git a/docs/Classes/SevenZipEntry.html b/docs/Structs/DosAttributes.html similarity index 70% rename from docs/Classes/SevenZipEntry.html rename to docs/Structs/DosAttributes.html index b2a0168b..5f264f5e 100644 --- a/docs/Classes/SevenZipEntry.html +++ b/docs/Structs/DosAttributes.html @@ -1,7 +1,7 @@ - SevenZipEntry Class Reference + DosAttributes Structure Reference @@ -14,16 +14,16 @@ - + - +

    SWCompression Docs - (100% documented) + (86% documented)

    @@ -44,7 +44,7 @@

    @@ -112,34 +112,22 @@ SevenZipContainer - - - - @@ -198,20 +186,53 @@ + + +
    -

    SevenZipEntry

    +

    DosAttributes

    -
    public class SevenZipEntry: ContainerEntry
    +
    public struct DosAttributes: OptionSet
    -

    Represents an entry in 7-Zip container.

    +

    Represents file attributes in DOS format.

    @@ -223,9 +244,9 @@
  • - - - info + + + rawValue
    @@ -233,19 +254,19 @@
    -

    Various information about entry.

    +

    Raw bit flags value.

    Declaration

    Swift

    -
    public let info: SevenZipEntryInfo
    +
    public let rawValue: UInt32
    @@ -253,9 +274,9 @@
  • - - - name + + + init(rawValue:)
    @@ -263,19 +284,19 @@
    -

    Entry’s name.

    +

    Initializes attributes with bit flags.

    Declaration

    Swift

    -
    public var name: String
    +
    public init(rawValue: UInt32)
    @@ -283,9 +304,9 @@
  • - - - size + + + archive
    @@ -293,19 +314,19 @@
    -

    Entry’s data size.

    +

    File is archive or archived.

    Declaration

    Swift

    -
    public var size: Int
    +
    public static let archive = DosAttributes(rawValue: 0b00100000)
    @@ -313,9 +334,9 @@
  • - - - isDirectory + + + directory
    @@ -323,19 +344,19 @@
    -

    True, if entry is a directory.

    +

    File is a directory.

    Declaration

    Swift

    -
    public var isDirectory: Bool
    +
    public static let directory = DosAttributes(rawValue: 0b00010000)
    @@ -343,9 +364,9 @@
  • - - - isLink + + + volume
    @@ -353,19 +374,19 @@
    -

    True, if entry is a symbolic link.

    +

    File is a volume.

    Declaration

    Swift

    -
    public let isLink: Bool
    +
    public static let volume = DosAttributes(rawValue: 0b00001000)
    @@ -373,9 +394,9 @@
  • - - - linkPath + + + system
    @@ -383,19 +404,19 @@
    -

    Path to a linked file for symbolic link entry.

    +

    File is a system file.

    Declaration

    Swift

    -
    public let linkPath: String?
    +
    public static let system = DosAttributes(rawValue: 0b00000100)
    @@ -403,9 +424,9 @@
  • - - - entryAttributes + + + hidden
    @@ -413,32 +434,19 @@
    -

    Provides a dictionary with various attributes of the entry. -FileAttributeKey values are used as dictionary keys.

    -

    Possible attributes:

    - -
      -
    • FileAttributeKey.posixPermissions,
    • -
    • FileAttributeKey.size,
    • -
    • FileAttributeKey.modificationDate,
    • -
    • FileAttributeKey.creationDate,
    • -
    • FileAttributeKey.type,
    • -
    • FileAttributeKey.appendOnly.
    • -
    - -

    Most modern TAR containers are in UStar format.

    +

    File is hidden.

    Declaration

    Swift

    -
    public var entryAttributes: [FileAttributeKey: Any]
    +
    public static let hidden = DosAttributes(rawValue: 0b00000010)
    @@ -446,9 +454,9 @@
  • @@ -456,55 +464,19 @@
    -

    True, if data for entry is available. -It might not be depending on the content of the container.

    +

    File is read-only.

    Declaration

    Swift

    -
    public let dataIsAvailable: Bool
    +
    public static let readOnly = DosAttributes(rawValue: 0b00000001)
    -
    -
    -
  • -
  • -
    - - - - data() - -
    -
    -
    -
    -
    -
    -

    Returns data associated with this entry.

    -
    -

    Throws

    - SevenZipError.dataIsUnavailable if data for entry isn’t available. - -
    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public func data() throws -> Data
    - -
    -
    -
    diff --git a/docs/Structs/GzipHeader.html b/docs/Structs/GzipHeader.html index a10626eb..3821a929 100644 --- a/docs/Structs/GzipHeader.html +++ b/docs/Structs/GzipHeader.html @@ -23,7 +23,7 @@ SWCompression Docs - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

  • - - - - @@ -198,6 +186,39 @@ + + +
    @@ -246,7 +267,7 @@
    @@ -277,7 +298,7 @@ @@ -307,7 +328,7 @@ @@ -339,7 +360,7 @@ then this property is nil.

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

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

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

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

    @@ -516,7 +537,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 9e54c052..bad6f62f 100644 --- a/docs/Structs/GzipHeader/CompressionMethod.html +++ b/docs/Structs/GzipHeader/CompressionMethod.html @@ -23,7 +23,7 @@ SWCompression Docs - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -245,7 +266,7 @@ diff --git a/docs/Structs/GzipHeader/FileSystemType.html b/docs/Structs/GzipHeader/FileSystemType.html index 412eb7c1..bff7e0eb 100644 --- a/docs/Structs/GzipHeader/FileSystemType.html +++ b/docs/Structs/GzipHeader/FileSystemType.html @@ -23,7 +23,7 @@ SWCompression Docs - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -250,7 +271,7 @@ @@ -284,7 +305,7 @@ @@ -318,7 +339,7 @@ @@ -352,7 +373,7 @@ @@ -386,7 +407,7 @@ diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/SevenZipEntryInfo/Permissions.html b/docs/Structs/Permissions.html similarity index 71% rename from docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/SevenZipEntryInfo/Permissions.html rename to docs/Structs/Permissions.html index 0b72defb..c83ff762 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/SevenZipEntryInfo/Permissions.html +++ b/docs/Structs/Permissions.html @@ -2,15 +2,15 @@ Permissions Structure Reference - - + + - - + + - - - + + + @@ -20,21 +20,21 @@

    - + SWCompression Docs - (100% documented) + (86% documented)

    -

    +

    - + View on GitHub

    @@ -42,8 +42,8 @@
    @@ -51,150 +51,171 @@
    @@ -207,7 +228,7 @@

    SevenZipEntryInfo

    -
    public struct SevenZipEntryInfo
    +
    public struct SevenZipEntryInfo: ContainerEntryInfo
    @@ -219,100 +240,14 @@
    +
      -
    • -
      - - - - Permissions - -
      -
      -
      -
      -
      -
      -

      Represents file access permissions in UNIX format.

      - - See more -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public struct Permissions: OptionSet
      - -
      -
      - -
      -
      -
    • -
    • -
      - - - - DosAttributes - -
      -
      -
      -
      -
      -
      -

      Represents file attributes in DOS format.

      - - See more -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public struct DosAttributes: OptionSet
      - -
      -
      - -
      -
      -
    • -
    • -
      - - - - UnixType - -
      -
      -
      -
      -
      -
      -

      Represents file type in UNIX format.

      - - See more -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public enum UnixType: UInt32
      - -
      -
      - -
      -
      -
    • @@ -338,7 +273,7 @@
    @@ -368,7 +303,7 @@ @@ -376,9 +311,9 @@
  • - - - isDirectory + + + type
    @@ -386,19 +321,19 @@
    -

    True, if entry is a directory.

    +

    Undocumented

    Declaration

    Swift

    -
    public let isDirectory: Bool
    +
    public struct SevenZipEntryInfo: ContainerEntryInfo
    @@ -428,7 +363,7 @@ @@ -458,7 +393,7 @@ @@ -488,11 +423,52 @@
  • +
  • +
    + + + + permissions + +
    +
    +
    +
    +
    +
    +

    Entry’s UNIX file access permissions.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let permissions: Permissions?
    + +
    +
    + +
    +
    +
  • + + +
    + +
    • @@ -518,7 +494,7 @@
    @@ -526,39 +502,9 @@
  • - - - permissions - -
    -
    -
    -
    -
    -
    -

    Entry’s UNIX file access permissions.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public let permissions: Permissions?
    - -
    -
    - -
    -
    -
  • -
  • -
    @@ -573,42 +519,12 @@

    Declaration

    Swift

    -
    public let dosAttributes: DosAttributes?
    +
    public let dosAttributes: DosAttributes?
    - - -
  • -
  • -
    - - - - unixType - -
    -
    -
    -
    -
    -
    -

    Entry’s UNIX file type.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public let unixType: UnixType?
    - -
    -
    -
    @@ -626,7 +542,7 @@
    -

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

    +

    True, if entry has a stream (data) inside container. 7-Zip internal propety.

    @@ -638,7 +554,7 @@
    @@ -668,7 +584,7 @@ @@ -700,7 +616,7 @@ Used in differential backups to indicate that file should be deleted. @@ -730,7 +646,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 deleted file mode 100644 index e46ba5e7..00000000 --- a/docs/Structs/SevenZipEntryInfo/DosAttributes.html +++ /dev/null @@ -1,476 +0,0 @@ - - - - DosAttributes Structure Reference - - - - - - - - - - - - - - - - -
    -

    - - SWCompression Docs - - (100% documented) -

    - -

    -

    - -
    -

    - -

    - - - View on GitHub - -

    - -
    - - - -
    - -
    - -
    -
    -

    DosAttributes

    -
    -
    -
    public struct DosAttributes: OptionSet
    - -
    -
    -

    Represents file attributes in DOS format.

    - -
    -
    - -
    -
    -
    -
      -
    • -
      - - - - rawValue - -
      -
      -
      -
      -
      -
      -

      Raw bit flags value.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public let rawValue: UInt32
      - -
      -
      - -
      -
      -
    • -
    • -
      - - - - init(rawValue:) - -
      -
      -
      -
      -
      -
      -

      Initializes attributes with bit flags.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public init(rawValue: UInt32)
      - -
      -
      - -
      -
      -
    • -
    • -
      - - - - archive - -
      -
      -
      -
      -
      -
      -

      File is archive or archived.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public static let archive = DosAttributes(rawValue: 0b00100000)
      - -
      -
      - -
      -
      -
    • -
    • -
      - - - - directory - -
      -
      -
      -
      -
      -
      -

      File is a directory.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public static let directory = DosAttributes(rawValue: 0b00010000)
      - -
      -
      - -
      -
      -
    • -
    • -
      - - - - volume - -
      -
      -
      -
      -
      -
      -

      File is a volume.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public static let volume = DosAttributes(rawValue: 0b00001000)
      - -
      -
      - -
      -
      -
    • -
    • -
      - - - - system - -
      -
      -
      -
      -
      -
      -

      File is a system file.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public static let system = DosAttributes(rawValue: 0b00000100)
      - -
      -
      - -
      -
      -
    • -
    • -
      - - - - hidden - -
      -
      -
      -
      -
      -
      -

      File is hidden.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public static let hidden = DosAttributes(rawValue: 0b00000010)
      - -
      -
      - -
      -
      -
    • -
    • -
      - - - - readOnly - -
      -
      -
      -
      -
      -
      -

      File is read-only.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public static let readOnly = DosAttributes(rawValue: 0b00000001)
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
    - -
    -
    - - - - diff --git a/docs/Structs/SevenZipEntryInfo/UnixType.html b/docs/Structs/SevenZipEntryInfo/UnixType.html deleted file mode 100644 index 8464339a..00000000 --- a/docs/Structs/SevenZipEntryInfo/UnixType.html +++ /dev/null @@ -1,470 +0,0 @@ - - - - UnixType Enumeration Reference - - - - - - - - - - - - - - - - -
    -

    - - SWCompression Docs - - (100% documented) -

    - -

    -

    - -
    -

    - -

    - - - View on GitHub - -

    - -
    - - - -
    - -
    - -
    -
    -

    UnixType

    -
    -
    -
    public enum UnixType: UInt32
    - -
    -
    -

    Represents file type in UNIX format.

    - -
    -
    - -
    -
    -
    -
      -
    • -
      - - - - fifo - -
      -
      -
      -
      -
      -
      -

      FIFO special file.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case fifo = 0o010000
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - characterSpecial - -
      -
      -
      -
      -
      -
      -

      Character special file.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case characterSpecial = 0o020000
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - directory - -
      -
      -
      -
      -
      -
      -

      Directory.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case directory = 0o040000
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - blockSpecial - -
      -
      -
      -
      -
      -
      -

      Block special file.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case blockSpecial = 0o060000
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - regular - -
      -
      -
      -
      -
      -
      -

      Regular file.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case regular = 0o100000
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - symbolicLink - -
      -
      -
      -
      -
      -
      -

      Symbolic link.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case symbolicLink = 0o120000
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - socket - -
      -
      -
      -
      -
      -
      -

      Socket.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case socket = 0o140000
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
    - -
    -
    - - - - diff --git a/docs/Structs/TarEntry.html b/docs/Structs/TarEntry.html new file mode 100644 index 00000000..fbc46225 --- /dev/null +++ b/docs/Structs/TarEntry.html @@ -0,0 +1,317 @@ + + + + TarEntry Structure Reference + + + + + + + + + + + + + + + + +
    +

    + + SWCompression Docs + + (86% documented) +

    + +

    +

    + +
    +

    + +

    + + + View on GitHub + +

    + +
    + + + +
    + +
    + +
    +
    +

    TarEntry

    +
    +
    +
    public struct TarEntry: ContainerEntry
    + +
    +
    +

    Represents an entry in 7-Zip container.

    + +
    +
    + +
    +
    +
    +
      +
    • +
      + + + + info + +
      +
      +
      +
      +
      +
      +

      Various information about entry.

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public let info: TarEntryInfo
      + +
      +
      + +
      +
      +
    • +
    • +
      + + + + data + +
      +
      +
      +
      +
      +
      +

      Undocumented

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public struct TarEntry: ContainerEntry
      + +
      +
      + +
      +
      +
    • +
    +
    +
    +
    + +
    +
    + + + + diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/TarEntry.html b/docs/Structs/TarEntryInfo.html similarity index 60% rename from docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/TarEntry.html rename to docs/Structs/TarEntryInfo.html index bc33e159..6d467607 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/TarEntry.html +++ b/docs/Structs/TarEntryInfo.html @@ -1,7 +1,7 @@ - TarEntry Class Reference + TarEntryInfo Structure Reference @@ -14,16 +14,16 @@ - + - +

    SWCompression Docs - (100% documented) + (86% documented)

    @@ -44,7 +44,7 @@

    @@ -112,34 +112,22 @@ SevenZipContainer
  • - - - - @@ -198,20 +186,47 @@ + + +
    -

    TarEntry

    -
    -
    -
    public class TarEntry: ContainerEntry
    - -
    -
    -

    Represents either a file or directory entry in TAR container.

    +

    TarEntryInfo

    +

    Undocumented

    @@ -219,44 +234,20 @@
    +
    @@ -284,39 +275,9 @@
  • - - - isDirectory - -
    -
    -
    -
    -
    -
    -

    True, if entry is a directory.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public var isDirectory: Bool
    - -
    -
    - -
    -
    -
  • -
  • -
    - - + - size + size
    @@ -331,12 +292,12 @@

    Declaration

    Swift

    -
    public private(set) var size: Int
    +
    public let size: Int?
    @@ -344,175 +305,9 @@
  • - - - entryAttributes - -
    -
    -
    -
    -
    -
    -

    Provides a dictionary with various attributes of the entry. -FileAttributeKey values are used as dictionary keys.

    -

    Possible attributes:

    - -
      -
    • FileAttributeKey.posixPermissions,
    • -
    • FileAttributeKey.ownerAccountID,
    • -
    • FileAttributeKey.groupOwnerAccountID,
    • -
    • FileAttributeKey.size,
    • -
    • FileAttributeKey.modificationDate,
    • -
    • FileAttributeKey.type,
    • -
    • FileAttributeKey.ownerAccountName, if format of container is UStar,
    • -
    • FileAttributeKey.groupOwnerAccountName, if format of container is UStar,
    • -
    • FileAttributeKey.creationDate, if format of container is PAX.
    • -
    - -

    Most modern TAR containers are in UStar format.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public let entryAttributes: [FileAttributeKey: Any]
    - -
    -
    - -
    -
    -
  • -
  • -
    - - - - mode - -
    -
    -
    -
    -
    -
    -

    File mode.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public let mode: Int?
    - -
    -
    - -
    -
    -
  • -
  • -
    - - - - ownerID - -
    -
    -
    -
    -
    -
    -

    Owner’s ID.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public private(set) var ownerID: Int?
    - -
    -
    - -
    -
    -
  • -
  • -
    - - - - groupID - -
    -
    -
    -
    -
    -
    -

    Owner’s group ID.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public private(set) var groupID: Int?
    - -
    -
    - -
    -
    -
  • -
  • -
    - - - - modificationTime - -
    -
    -
    -
    -
    -
    -

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

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public private(set) var modificationTime: Date
    - -
    -
    - -
    -
    -
  • -
  • -
    - - + - type + type
    @@ -520,19 +315,11 @@
    -

    Type of entry.

    +

    Undocumented

    -
    -

    Declaration

    -
    -

    Swift

    -
    public let type: EntryType
    - -
    -
    @@ -540,69 +327,9 @@
  • - - - ownerUserName - -
    -
    -
    -
    -
    -
    -

    Owner’s user name.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public private(set) var ownerUserName: String?
    - -
    -
    - -
    -
    -
  • -
  • -
    - - - - ownerGroupName - -
    -
    -
    -
    -
    -
    -

    Owner’s group name.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public private(set) var ownerGroupName: String?
    - -
    -
    - -
    -
    -
  • -
  • -
    @@ -617,12 +344,12 @@

    Declaration

    Swift

    -
    public private(set) var accessTime: Date?
    +
    public let accessTime: Date?
    @@ -630,9 +357,9 @@
  • @@ -647,12 +374,12 @@

    Declaration

    Swift

    -
    public private(set) var creationTime: Date?
    +
    public let creationTime: Date?
    @@ -660,9 +387,236 @@
  • - + + + modificationTime + +
    +
    +
    +
    +
    +
    +

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

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let modificationTime: Date?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + permissions + +
    +
    +
    +
    +
    +
    +

    Undocumented

    + +
    + +
    +
    +
  • + + +
    + +
    @@ -690,9 +644,9 @@
  • - + - comment + comment
    @@ -707,52 +661,33 @@

    Declaration

    Swift

    -
    public private(set) var comment: String?
    +
    public let comment: String?
  • + + +
    + +
    • - - - isLink - -
      -
      -
      -
      -
      -
      -

      True if entry is a symbolic link.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public let isLink: Bool
      - -
      -
      - -
      -
      -
    • -
    • -
      - - - - linkPath + + + linkName
      @@ -767,72 +702,12 @@

      Declaration

      Swift

      -
      public var linkPath: String?
      +
      public let linkName: String?
      - -
    - -
  • - -
    -
    -
    -
    -
    -

    Other entries from PAX extended headers.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public private(set) var unknownExtendedHeaderEntries: [String: String] = [:]
    - -
    -
    - -
    -
    -
  • -
  • -
    - - - - data() - -
    -
    -
    -
    -
    -
    -

    Returns data associated with this entry.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public func data() -> Data
    - -
    -
    -
    diff --git a/docs/Structs/ZipEntry.html b/docs/Structs/ZipEntry.html new file mode 100644 index 00000000..3b5bac76 --- /dev/null +++ b/docs/Structs/ZipEntry.html @@ -0,0 +1,317 @@ + + + + ZipEntry Structure Reference + + + + + + + + + + + + + + + + +
    +

    + + SWCompression Docs + + (86% documented) +

    + +

    +

    + +
    +

    + +

    + + + View on GitHub + +

    + +
    + + + +
    + +
    + +
    +
    +

    ZipEntry

    +
    +
    +
    public struct ZipEntry: ContainerEntry
    + +
    +
    +

    Represents either a file or directory entry in ZIP container.

    + +
    +
    + +
    +
    +
    +
      +
    • +
      + + + + info + +
      +
      +
      +
      +
      +
      +

      Various information about entry.

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public let info: ZipEntryInfo
      + +
      +
      + +
      +
      +
    • +
    • +
      + + + + data + +
      +
      +
      +
      +
      +
      +

      Undocumented

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public struct ZipEntry: ContainerEntry
      + +
      +
      + +
      +
      +
    • +
    +
    +
    +
    + +
    +
    + + + + diff --git a/docs/Structs/ZipEntryInfo.html b/docs/Structs/ZipEntryInfo.html new file mode 100644 index 00000000..1532abfa --- /dev/null +++ b/docs/Structs/ZipEntryInfo.html @@ -0,0 +1,546 @@ + + + + ZipEntryInfo Structure Reference + + + + + + + + + + + + + + + + +
    +

    + + SWCompression Docs + + (86% documented) +

    + +

    +

    + +
    +

    + +

    + + + View on GitHub + +

    + +
    + + + +
    + +
    + +
    +
    +

    ZipEntryInfo

    +

    Undocumented

    + +
    +
    + +
    +
    +
    + +
      +
    • +
      + + + + name + +
      +
      +
      +
      +
      +
      +

      Name of the file or directory.

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public let name: String?
      + +
      +
      + +
      +
      +
    • +
    • +
      + + + + size + +
      +
      +
      +
      +
      +
      +

      Size of the data associated with the entry.

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public let size: Int?
      + +
      +
      + +
      +
      +
    • +
    • +
      + + + + type + +
      +
      +
      +
      +
      +
      +

      Undocumented

      + +
      + +
      +
      +
    • +
    +
    +
    + + +
    +
    + + +
    +
    +
    + +
    +
    + + + + diff --git a/docs/Structs/ZlibHeader.html b/docs/Structs/ZlibHeader.html index ebe76f7e..8ff49da5 100644 --- a/docs/Structs/ZlibHeader.html +++ b/docs/Structs/ZlibHeader.html @@ -23,7 +23,7 @@ SWCompression Docs - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

  • - - - - @@ -198,6 +186,39 @@ + + +
    @@ -246,7 +267,7 @@ @@ -277,7 +298,7 @@ @@ -307,7 +328,7 @@ @@ -337,7 +358,7 @@ @@ -367,7 +388,7 @@ @@ -424,7 +445,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 be91de4d..f05bb9bf 100644 --- a/docs/Structs/ZlibHeader/CompressionLevel.html +++ b/docs/Structs/ZlibHeader/CompressionLevel.html @@ -23,7 +23,7 @@ SWCompression Docs - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -245,7 +266,7 @@ @@ -279,7 +300,7 @@ @@ -313,7 +334,7 @@ @@ -347,7 +368,7 @@ diff --git a/docs/Structs/ZlibHeader/CompressionMethod.html b/docs/Structs/ZlibHeader/CompressionMethod.html index a55cc9ad..7a738c09 100644 --- a/docs/Structs/ZlibHeader/CompressionMethod.html +++ b/docs/Structs/ZlibHeader/CompressionMethod.html @@ -23,7 +23,7 @@ SWCompression Docs - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -245,7 +266,7 @@ diff --git a/docs/badge.svg b/docs/badge.svg index 2606d804..ddc07eec 100644 --- a/docs/badge.svg +++ b/docs/badge.svg @@ -1 +1 @@ -documentationdocumentation100%100% \ No newline at end of file +documentationdocumentation86%86% \ 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 1eb81f45..1a1372b6 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 - (100% documented) + (86% documented)

    @@ -111,34 +111,22 @@ SevenZipContainer

    - - - - @@ -197,6 +185,39 @@ + + +
    @@ -238,7 +259,7 @@ @@ -273,7 +294,7 @@ @@ -308,7 +329,7 @@ @@ -343,7 +364,7 @@ @@ -378,7 +399,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 026d14b6..c728b446 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

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

    Decompressed data.

    @@ -335,7 +356,7 @@ Use - Show on GitHub + Show on GitHub @@ -396,7 +417,7 @@ Use - Show on GitHub + Show on GitHub @@ -431,7 +452,7 @@ Use - Show on GitHub + Show on GitHub 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 a3e256bd..894b0bfb 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -245,7 +266,7 @@ @@ -279,7 +300,7 @@ @@ -313,7 +334,7 @@ @@ -347,7 +368,7 @@ @@ -381,7 +402,7 @@ @@ -415,7 +436,7 @@ @@ -449,7 +470,7 @@ @@ -483,7 +504,7 @@ @@ -517,7 +538,7 @@ 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 f303660b..99d65e17 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

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

    Decompressed data.

    @@ -343,7 +364,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 fc132c35..e332966c 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -246,7 +267,7 @@ @@ -315,7 +336,7 @@ it might not be archived with GZip or compressed with Deflate at all.

    Unarchived data.

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

    Unarchived data.

    @@ -527,7 +548,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 269655ac..ee53ff66 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -245,7 +266,7 @@ @@ -275,7 +296,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 61c7b6ae..af3d6655 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -276,7 +297,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 40e4ee24..c4d3bf5a 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -276,7 +297,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 3f4777c3..6f720d33 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -207,7 +228,7 @@

    SevenZipContainer

    -
    public class SevenZipContainer: Container
    +
    public class SevenZipContainer
    @@ -223,9 +244,9 @@
  • @@ -233,7 +254,7 @@
    -

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

    +

    Processes 7-Zip container and returns an array of SevenZipEntry.

    Important

    The order of entries is defined by 7-Zip container and, @@ -255,7 +276,7 @@ It may indicate that either container is damaged or it might not be 7-Zip contai

    Declaration

    Swift

    -
    public static func open(container data: Data) throws -> [ContainerEntry]
    +
    public static func open(container data: Data) throws -> [SevenZipEntry]
    @@ -280,10 +301,10 @@ It may indicate that either container is damaged or it might not be 7-Zip contai

    Return Value

    -

    Array of SevenZipEntry as an array of ContainerEntry.

    +

    Array of SevenZipEntry as an array of ContainerEntry.

    @@ -353,7 +374,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/TarContainer.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/TarContainer.html index a7b7656b..80318382 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

  • - - - - @@ -198,6 +186,39 @@ + + +
    @@ -223,9 +244,9 @@
  • @@ -233,7 +254,7 @@
    -

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

    +

    Processes TAR container and returns an array of TarEntry.

    Important

    The order of entries is defined by TAR container and, @@ -253,7 +274,7 @@ but one SHOULD NOT rely on any particular order.

    Declaration

    Swift

    -
    public static func open(container data: Data) throws -> [ContainerEntry]
    +
    public static func open(container data: Data) throws -> [TarEntry]
    @@ -278,10 +299,40 @@ but one SHOULD NOT rely on any particular order.

    Return Value

    -

    Array of TarEntry as an array of ContainerEntry.

    +

    Array of TarEntry.

    +
    +
    +
  • +
  • +
    + + + + info(container:) + +
    +
    +
    +
    +
    +
    +

    Undocumented

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public class TarContainer: Container
    + +
    +
    +
    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 deleted file mode 100644 index 400f1015..00000000 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/TarEntry/EntryType.html +++ /dev/null @@ -1,606 +0,0 @@ - - - - EntryType Enumeration Reference - - - - - - - - - - - - - - - - -
    -

    - - SWCompression Docs - - (100% documented) -

    - -

    -

    - -
    -

    - -

    - - - View on GitHub - -

    - -
    - - - -
    - -
    - -
    -
    -

    EntryType

    -
    -
    -
    public enum EntryType: String
    - -
    -
    -

    Represents a type of an entry.

    - -
    -
    - -
    -
    -
    -
      -
    • -
      - - - - normal - -
      -
      -
      -
      -
      -
      -

      Normal file.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case normal = "0"
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - hardLink - -
      -
      -
      -
      -
      -
      -

      Hard linked entry.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case hardLink = "1"
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - symbolicLink - -
      -
      -
      -
      -
      -
      -

      Symbolically linked entry.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case symbolicLink = "2"
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - characterSpecial - -
      -
      -
      -
      -
      -
      -

      Character special file.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case characterSpecial = "3"
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - blockSpecial - -
      -
      -
      -
      -
      -
      -

      Block special file.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case blockSpecial = "4"
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - directory - -
      -
      -
      -
      -
      -
      -

      Directory.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case directory = "5"
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - fifo - -
      -
      -
      -
      -
      -
      -

      FIFO special file.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case fifo = "6"
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - contiguous - -
      -
      -
      -
      -
      -
      -

      Contiguous file.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case contiguous = "7"
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - globalExtendedHeader - -
      -
      -
      -
      -
      -
      -

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

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case globalExtendedHeader = "g"
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - localExtendedHeader - -
      -
      -
      -
      -
      -
      -

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

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case localExtendedHeader = "x"
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • - -
      -
      -
      -
      -
      -

      Either unknown type, vendor specific or reserved value.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case vendorUnknownOrReserved
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
    - -
    -
    - - - - 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 e19c6771..ac0dffa0 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

  • - - - - @@ -198,6 +186,39 @@ + + +
    @@ -233,7 +254,9 @@
    -

    Unarchives XZ archive.

    +

    Unarchives XZ archive. +Archives with multiple streams are supported, +but uncompressed data from each stream will be combined into single Data object.

    If data passed is not actually XZ archive, XZError will be thrown. Particularly, if filters other than LZMA2 are used in archive, @@ -281,75 +304,7 @@ It may indicate that either the archive is damaged or it might not be compressed

    Unarchived data.

    -
    - - -
  • - -
    -
    -
    -
    -
    -

    Unarchives XZ archive which contains one or more streams.

    -
    -

    Note

    -

    wrongCheck error contains only last processed stream’s data as their associated value -instead of all successfully processed members. -This is a known issue and it will be fixed in future major version -because solution requires backwards-incompatible API changes.

    - -
    -
    -

    Throws

    -

    LZMAError, LZMA2Error or XZError depending on the type of the problem. -It may indicate that one of the streams of archive is damaged or -it might not be archived with XZ or LZMA(2) at all.

    - -
    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public static func multiUnarchive(archive data: Data) throws -> [Data]
    - -
    -
    -
    -

    Parameters

    - - - - - - - -
    - - archive - - -
    -

    XZ archive with one or more streams.

    -
    -
    -
    -
    -

    Return Value

    -

    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 8deed83e..e5ec6b63 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

  • - - - - @@ -198,6 +186,39 @@ + + +
    @@ -223,9 +244,9 @@
  • @@ -233,7 +254,7 @@
    -

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

    +

    Processes ZIP container and returns an array of ZipEntry.

    Important

    The order of entries is defined by ZIP container and, @@ -255,7 +276,7 @@ It may indicate that either container is damaged or it might not be ZIP containe

    Declaration

    Swift

    -
    public static func open(container data: Data) throws -> [ContainerEntry]
    +
    public static func open(container data: Data) throws -> [ZipEntry]
    @@ -280,10 +301,40 @@ It may indicate that either container is damaged or it might not be ZIP containe

    Return Value

    -

    Array of ZipEntry as an array of ContainerEntry.

    +

    Array of ZipEntry.

    +
    +
    +
  • +
  • +
    + + + + info(container:) + +
    +
    +
    +
    +
    +
    +

    Undocumented

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public class ZipContainer: Container
    + +
    +
    +
    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 85b8e787..37bc5c4a 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

  • - - - - @@ -198,6 +186,39 @@ + + +
    @@ -284,7 +305,7 @@ it might not be archived with Zlib or compressed with Deflate at all.

    Unarchived data.

    @@ -346,7 +367,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 8f8007bd..88cb0a91 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 - (100% documented) + (86% documented)

    @@ -111,34 +111,22 @@ SevenZipContainer

    - - - - @@ -197,6 +185,39 @@ + + +
    @@ -238,7 +259,7 @@ @@ -273,7 +294,7 @@ @@ -308,7 +329,7 @@ @@ -343,7 +364,7 @@ diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Containers.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Containers.html index 70c6d6b1..5be91825 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 - (100% documented) + (86% documented)

    @@ -111,34 +111,22 @@ SevenZipContainer

    - - - - @@ -197,6 +185,39 @@ + + +
    @@ -233,12 +254,12 @@

    Declaration

    Swift

    -
    public class SevenZipContainer: Container
    +
    public class SevenZipContainer
    @@ -250,9 +271,9 @@
  • @@ -262,18 +283,18 @@

    Represents an entry in 7-Zip container.

    - See more + See more

    Declaration

    Swift

    -
    public class SevenZipEntry: ContainerEntry
    +
    public struct SevenZipEntry: ContainerEntry
    @@ -303,12 +324,12 @@

    Declaration

    Swift

    -
    public struct SevenZipEntryInfo
    +
    public struct SevenZipEntryInfo: ContainerEntryInfo
    @@ -343,7 +364,7 @@ @@ -355,9 +376,9 @@
  • - - - TarEntry + + + TarEntry
    @@ -365,20 +386,20 @@
    -

    Represents either a file or directory entry in TAR container.

    +

    Represents an entry in 7-Zip container.

    - See more + See more

    Declaration

    Swift

    -
    public class TarEntry: ContainerEntry
    +
    public struct TarEntry: ContainerEntry
    @@ -413,7 +434,7 @@ @@ -425,9 +446,9 @@
  • - - - ZipEntry + + + ZipEntry
    @@ -437,18 +458,18 @@

    Represents either a file or directory entry in ZIP container.

    - See more + See more

    Declaration

    Swift

    -
    public class ZipEntry: ContainerEntry
    +
    public struct ZipEntry: ContainerEntry
    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 5b80384a..29adae02 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

  • - - - - @@ -198,6 +186,39 @@ + + +
    @@ -246,7 +267,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -280,7 +301,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -314,7 +335,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -348,7 +369,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -382,7 +403,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -416,7 +437,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -450,7 +471,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -484,7 +505,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -518,7 +539,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -553,7 +574,7 @@ Associated value of the error contains already decompressed data.

    diff --git a/docs/Classes/ZipEntry.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/ContainerEntryType.html similarity index 70% rename from docs/Classes/ZipEntry.html rename to docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/ContainerEntryType.html index cf9df206..8c1c9ee7 100644 --- a/docs/Classes/ZipEntry.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Enums/ContainerEntryType.html @@ -1,7 +1,7 @@ - ZipEntry Class Reference + ContainerEntryType Enumeration Reference @@ -14,16 +14,16 @@ - + - +

    SWCompression Docs - (100% documented) + (86% documented)

    @@ -44,7 +44,7 @@

    @@ -112,34 +112,22 @@ SevenZipContainer - - - - @@ -198,20 +186,47 @@ + + +
    -

    ZipEntry

    -
    -
    -
    public class ZipEntry: ContainerEntry
    - -
    -
    -

    Represents either a file or directory entry in ZIP container.

    +

    ContainerEntryType

    +

    Undocumented

    @@ -223,9 +238,9 @@
  • - - - name + + + blockSpecial
    @@ -233,29 +248,33 @@
    -

    Name of the file or directory.

    +

    Block special file.

    Declaration

    Swift

    -
    public var name: String
    +
    case blockSpecial
  • + +
    +
    + +
    +
    +
    • - - - attributes + + + contiguous
      @@ -293,29 +316,33 @@
      -

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

      +

      Contiguous file.

      Declaration

      Swift

      -
      public var attributes: UInt32
      +
      case contiguous
    • +
    +
    +
    + +
    +
    +
    • - - - isDirectory + + + fifo
      @@ -353,31 +384,33 @@
      -

      True, if entry is a directory. -For MS-DOS and UNIX-like container creator’s OS, the result is based on ‘external file attributes’. -Otherwise, it is true if size of data is 0 AND last character of entry’s name is ‘/’.

      +

      FIFO special file.

      Declaration

      Swift

      -
      public var isDirectory: Bool
      +
      case fifo
    • +
    +
    +
    +
    • - - - isLink + + + hardLink
      @@ -385,29 +418,33 @@ Otherwise, it is true if size of data is 0 AND last character of entry’s n
      -

      True, if entry is a symbolic link.

      +

      Hard link.

      Declaration

      Swift

      -
      public let isLink: Bool
      +
      case hardLink
    • +
    +
    +
    +
    • - - - linkPath + + + regular
      @@ -415,29 +452,33 @@ Otherwise, it is true if size of data is 0 AND last character of entry’s n
      -

      Path to a linked file for symbolic link entry.

      +

      Regular file.

      Declaration

      Swift

      -
      public lazy var linkPath: String? =
      +
      case regular
    • +
    +
    +
    +
    • - - - isTextFile + + + socket
      @@ -445,29 +486,33 @@ Otherwise, it is true if size of data is 0 AND last character of entry’s n
      -

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

      +

      Socket.

      Declaration

      Swift

      -
      public var isTextFile: Bool
      +
      case socket
    • +
    +
    +
    +
    • @@ -475,39 +520,33 @@ Otherwise, it is true if size of data is 0 AND last character of entry’s n
      -

      Provides a dictionary with various attributes of the entry. -FileAttributeKey values are used as dictionary keys.

      -

      Possible attributes:

      - -
        -
      • FileAttributeKey.modificationDate
      • -
      • FileAttributeKey.size
      • -
      • FileAttributeKey.type, only if origin OS was UNIX- or DOS-like.
      • -
      • FileAttributeKey.posixPermissions, only if origin OS was UNIX-like.
      • -
      • FileAttributeKey.appendOnly, only if origin OS was DOS-like.
      • -
      +

      Symbolic link.

      Declaration

      Swift

      -
      public let entryAttributes: [FileAttributeKey: Any]
      +
      case symbolicLink
    • +
    +
    +
    + @@ -198,6 +186,39 @@ + + +
    @@ -246,7 +267,7 @@ It may indicate that either the data is damaged or it might not be compressed wi
    @@ -280,7 +301,7 @@ It may indicate that either the data is damaged or it might not be compressed wi @@ -314,7 +335,7 @@ It may indicate that either the data is damaged or it might not be compressed wi @@ -348,7 +369,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 74a6ccf3..617be0ce 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -246,7 +267,7 @@ It may indicate that either archive is damaged or it might not be GZip archive a @@ -280,7 +301,7 @@ It may indicate that either archive is damaged or it might not be GZip archive a @@ -315,7 +336,7 @@ that archive uses a newer version of GZip format.

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

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

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

    @@ -452,7 +473,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 d7f667b7..6a983482 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -246,7 +267,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -280,7 +301,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -314,7 +335,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -348,7 +369,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -383,7 +404,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 4e2b7f79..15bb129e 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -246,7 +267,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -280,7 +301,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -314,7 +335,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -348,7 +369,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -382,7 +403,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -416,7 +437,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -450,7 +471,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -484,7 +505,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 0380da5e..c383c15a 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -246,7 +267,7 @@ It may indicate that either container is damaged or it might not be 7-Zip contai @@ -280,7 +301,7 @@ It may indicate that either container is damaged or it might not be 7-Zip contai @@ -315,7 +336,7 @@ or one of the container’s strucutures is incorrect.

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

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

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

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

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

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

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

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

    @@ -623,7 +644,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 25fe722d..254215ba 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -246,7 +267,7 @@ It may indicate that either container is damaged or it might not be TAR containe @@ -280,7 +301,7 @@ It may indicate that either container is damaged or it might not be TAR containe @@ -314,41 +335,7 @@ It may indicate that either container is damaged or it might not be TAR containe - - - - - -
    -
      -
    • -
      - - - - wrongUstarVersion - -
      -
      -
      -
      -
      -
      -

      Unsupported version of USTAR format.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case wrongUstarVersion
      - -
      -
      -
      @@ -382,7 +369,7 @@ It may indicate that either container is damaged or it might not be TAR containe
    @@ -416,7 +403,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 9afe0b78..37d388e8 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -246,7 +267,7 @@ It may indicate that either archive is damaged or it might not be XZ archive at @@ -280,7 +301,7 @@ It may indicate that either archive is damaged or it might not be XZ archive at @@ -315,7 +336,7 @@ that archive uses a newer version of XZ format.

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

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

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

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

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

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

    @@ -555,7 +576,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 08ac5485..36306f31 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -246,7 +267,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -280,7 +301,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -314,7 +335,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -348,7 +369,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -382,7 +403,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -416,7 +437,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -450,7 +471,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -484,7 +505,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -518,7 +539,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -553,7 +574,7 @@ Associated value of the error contains entry’s data.

    @@ -587,7 +608,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 70456110..1c9b155d 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -246,7 +267,7 @@ It may indicate that either archive is damaged or it might not be Zlib archive a @@ -280,7 +301,7 @@ It may indicate that either archive is damaged or it might not be Zlib archive a @@ -314,7 +335,7 @@ It may indicate that either archive is damaged or it might not be Zlib archive a @@ -348,7 +369,7 @@ It may indicate that either archive is damaged or it might not be Zlib archive a @@ -383,7 +404,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 88802d2c..75ca7079 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 - (100% documented) + (86% documented)

    @@ -111,34 +111,22 @@ SevenZipContainer

    - - - - @@ -197,6 +185,39 @@ + + +
    @@ -239,7 +260,7 @@ It may indicate that either data is damaged or it might not be compressed with B @@ -275,7 +296,7 @@ It may indicate that either the data is damaged or it might not be compressed wi @@ -311,7 +332,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -347,7 +368,7 @@ It may indicate that either data is damaged or it might not be compressed with L @@ -383,7 +404,7 @@ It may indicate that either container is damaged or it might not be 7-Zip contai @@ -391,13 +412,6 @@ It may indicate that either container is damaged or it might not be 7-Zip contai
    -
    • @@ -426,7 +440,7 @@ It may indicate that either container is damaged or it might not be TAR containe
    @@ -462,7 +476,7 @@ It may indicate that either container is damaged or it might not be ZIP containe @@ -498,7 +512,7 @@ It may indicate that either archive is damaged or it might not be GZip archive a @@ -534,7 +548,7 @@ It may indicate that either archive is damaged or it might not be XZ archive at @@ -570,7 +584,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/Other Enums.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Other Enums.html new file mode 100644 index 00000000..f842ce7c --- /dev/null +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Other Enums.html @@ -0,0 +1,273 @@ + + + + Other Enumerations Reference + + + + + + + + + + + + + + + +
    +

    + + SWCompression Docs + + (86% documented) +

    + +

    +

    + +
    +

    + +

    + + + View on GitHub + +

    + +
    + + + +
    + +
    + +
    +
    +

    Other Enumerations

    +

    The following enumerations are available globally.

    + +
    +
    + +
    +
    +
    + +
    +
    +
    + +
    +
    + + + + diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Other Protocols.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Other Protocols.html new file mode 100644 index 00000000..9c5951fd --- /dev/null +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Other Protocols.html @@ -0,0 +1,273 @@ + + + + Other Protocols Reference + + + + + + + + + + + + + + + +
    +

    + + SWCompression Docs + + (86% documented) +

    + +

    +

    + +
    +

    + +

    + + + View on GitHub + +

    + +
    + + + +
    + +
    + +
    +
    +

    Other Protocols

    +

    The following protocols are available globally.

    + +
    +
    + +
    +
    +
    + +
    +
    +
    + +
    +
    + + + + diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Other Structs.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Other Structs.html new file mode 100644 index 00000000..12fc6af9 --- /dev/null +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Other Structs.html @@ -0,0 +1,370 @@ + + + + Other Structures Reference + + + + + + + + + + + + + + + +
    +

    + + SWCompression Docs + + (86% documented) +

    + +

    +

    + +
    +

    + +

    + + + View on GitHub + +

    + +
    + + + +
    + +
    + +
    +
    +

    Other Structures

    +

    The following structures are available globally.

    + +
    +
    + +
    +
    +
    +
      +
    • +
      + + + + DosAttributes + +
      +
      +
      +
      +
      +
      +

      Represents file attributes in DOS format.

      + + See more +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public struct DosAttributes: OptionSet
      + +
      +
      + +
      +
      +
    • +
    +
    +
    + +
    +
    + +
    +
    +
      +
    • +
      + + + + Permissions + +
      +
      +
      +
      +
      +
      +

      Represents file access permissions in UNIX format.

      + + See more +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public struct Permissions: OptionSet
      + +
      +
      + +
      +
      +
    • +
    +
    +
    +
    + +
    +
    + + + + diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols.html index de233343..76acf6bc 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 - (100% documented) + (86% documented)

    @@ -111,34 +111,22 @@ SevenZipContainer

    - - - - @@ -197,6 +185,39 @@ + + +
    @@ -238,11 +259,15 @@ + + +
    +
    • @@ -256,24 +281,20 @@
      -

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

      +

      Undocumented

      See more
      -
      -

      Declaration

      -
      -

      Swift

      -
      public protocol Container
      - -
      -
    • +
    +
    +
    +
    • @@ -287,24 +308,20 @@
      -

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

      +

      Undocumented

      See more
      -
      -

      Declaration

      -
      -

      Swift

      -
      public protocol ContainerEntry
      - -
      -
    • +
    +
    +
    +
    • @@ -331,11 +348,15 @@
    + + +
    +
    • @@ -362,7 +383,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 fe08c62c..59854b8e 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -245,7 +266,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 c99dbd5b..5d153049 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -233,7 +254,7 @@
    -

    Cmpress data with particular algorithm.

    +

    Compress data with particular algorithm.

    @@ -245,7 +266,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 91270c64..87c89b6f 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -205,13 +226,7 @@

    Container

    -
    -
    -
    public protocol Container
    - -
    -
    -

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

    +

    Undocumented

    @@ -223,9 +238,9 @@
  • @@ -233,19 +248,33 @@
    -

    Retrieve all the entries from the container.

    +

    Undocumented

    -
    -

    Declaration

    -
    -

    Swift

    -
    static func open(container: Data) throws -> [ContainerEntry]
    - -
    -
    +
    +
    +
  • +
  • +
    + + + + info(container:) + +
    +
    +
    +
    +
    +
    +

    Undocumented

    + +
    +
    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 b322718b..3d659d5d 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

  • - - - - @@ -198,6 +186,39 @@ + + +
    @@ -205,13 +226,7 @@

    ContainerEntry

    -
    -
    -
    public protocol ContainerEntry
    - -
    -
    -

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

    +

    Undocumented

    @@ -223,9 +238,9 @@
  • - - - name + + + info
    @@ -233,19 +248,11 @@
    -

    Retrieve name of the entry from the container.

    +

    Undocumented

    -
    -

    Declaration

    -
    -

    Swift

    -
    var name: String
    - -
    -
    @@ -253,9 +260,9 @@
  • - - - size + + + data
    @@ -263,175 +270,11 @@
    -

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

    +

    Undocumented

    -
    -

    Declaration

    -
    -

    Swift

    -
    var size: Int
    - -
    -
    -
    -
    -
  • -
  • -
    - - - - isDirectory - -
    -
    -
    -
    -
    -
    -

    True, if entry is a directory.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    var isDirectory: Bool
    - -
    -
    - -
    -
    -
  • -
  • -
    - - - - isLink - -
    -
    -
    -
    -
    -
    -

    True, if entry is a symbolic link.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    var isLink: Bool
    - -
    -
    - -
    -
    -
  • -
  • -
    - - - - linkPath - -
    -
    -
    -
    -
    -
    -

    Path to a linked file for symbolic link entry.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    var linkPath: String?
    - -
    -
    - -
    -
    -
  • -
  • -
    - - - - entryAttributes - -
    -
    -
    -
    -
    -
    -

    Provides a dictionary with various attributes of the entry. -FileAttributeKey values are used as dictionary keys.

    -
    -

    Note

    - Will be renamed to attributes in 4.0. - -
    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    var entryAttributes: [FileAttributeKey: Any]
    - -
    -
    - -
    -
    -
  • -
  • -
    - - - - data() - -
    -
    -
    -
    -
    -
    -

    Retrieve entry’s data from the container.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    func data() throws -> Data
    - -
    -
    -
    diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/ContainerEntryInfo.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/ContainerEntryInfo.html new file mode 100644 index 00000000..705e7758 --- /dev/null +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Protocols/ContainerEntryInfo.html @@ -0,0 +1,405 @@ + + + + ContainerEntryInfo Protocol Reference + + + + + + + + + + + + + + + + +
    +

    + + SWCompression Docs + + (86% documented) +

    + +

    +

    + +
    +

    + +

    + + + View on GitHub + +

    + +
    + + + +
    + +
    + +
    +
    +

    ContainerEntryInfo

    +

    Undocumented

    + +
    +
    + +
    +
    +
    + +
    +
    +
    + +
    +
    + + + + 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 781851e3..19df4009 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

  • - - - - @@ -198,6 +186,39 @@ + + +
    @@ -245,7 +266,7 @@ diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/SevenZipEntry.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/DosAttributes.html similarity index 70% rename from docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/SevenZipEntry.html rename to docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/DosAttributes.html index b2a0168b..5f264f5e 100644 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Classes/SevenZipEntry.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/DosAttributes.html @@ -1,7 +1,7 @@ - SevenZipEntry Class Reference + DosAttributes Structure Reference @@ -14,16 +14,16 @@ - + - +

    SWCompression Docs - (100% documented) + (86% documented)

    @@ -44,7 +44,7 @@

    @@ -112,34 +112,22 @@ SevenZipContainer - - - - @@ -198,20 +186,53 @@ + + +
    -

    SevenZipEntry

    +

    DosAttributes

    -
    public class SevenZipEntry: ContainerEntry
    +
    public struct DosAttributes: OptionSet
    -

    Represents an entry in 7-Zip container.

    +

    Represents file attributes in DOS format.

    @@ -223,9 +244,9 @@
  • - - - info + + + rawValue
    @@ -233,19 +254,19 @@
    -

    Various information about entry.

    +

    Raw bit flags value.

    Declaration

    Swift

    -
    public let info: SevenZipEntryInfo
    +
    public let rawValue: UInt32
    @@ -253,9 +274,9 @@
  • - - - name + + + init(rawValue:)
    @@ -263,19 +284,19 @@
    -

    Entry’s name.

    +

    Initializes attributes with bit flags.

    Declaration

    Swift

    -
    public var name: String
    +
    public init(rawValue: UInt32)
    @@ -283,9 +304,9 @@
  • - - - size + + + archive
    @@ -293,19 +314,19 @@
    -

    Entry’s data size.

    +

    File is archive or archived.

    Declaration

    Swift

    -
    public var size: Int
    +
    public static let archive = DosAttributes(rawValue: 0b00100000)
    @@ -313,9 +334,9 @@
  • - - - isDirectory + + + directory
    @@ -323,19 +344,19 @@
    -

    True, if entry is a directory.

    +

    File is a directory.

    Declaration

    Swift

    -
    public var isDirectory: Bool
    +
    public static let directory = DosAttributes(rawValue: 0b00010000)
    @@ -343,9 +364,9 @@
  • - - - isLink + + + volume
    @@ -353,19 +374,19 @@
    -

    True, if entry is a symbolic link.

    +

    File is a volume.

    Declaration

    Swift

    -
    public let isLink: Bool
    +
    public static let volume = DosAttributes(rawValue: 0b00001000)
    @@ -373,9 +394,9 @@
  • - - - linkPath + + + system
    @@ -383,19 +404,19 @@
    -

    Path to a linked file for symbolic link entry.

    +

    File is a system file.

    Declaration

    Swift

    -
    public let linkPath: String?
    +
    public static let system = DosAttributes(rawValue: 0b00000100)
    @@ -403,9 +424,9 @@
  • - - - entryAttributes + + + hidden
    @@ -413,32 +434,19 @@
    -

    Provides a dictionary with various attributes of the entry. -FileAttributeKey values are used as dictionary keys.

    -

    Possible attributes:

    - -
      -
    • FileAttributeKey.posixPermissions,
    • -
    • FileAttributeKey.size,
    • -
    • FileAttributeKey.modificationDate,
    • -
    • FileAttributeKey.creationDate,
    • -
    • FileAttributeKey.type,
    • -
    • FileAttributeKey.appendOnly.
    • -
    - -

    Most modern TAR containers are in UStar format.

    +

    File is hidden.

    Declaration

    Swift

    -
    public var entryAttributes: [FileAttributeKey: Any]
    +
    public static let hidden = DosAttributes(rawValue: 0b00000010)
    @@ -446,9 +454,9 @@
  • @@ -456,55 +464,19 @@
    -

    True, if data for entry is available. -It might not be depending on the content of the container.

    +

    File is read-only.

    Declaration

    Swift

    -
    public let dataIsAvailable: Bool
    +
    public static let readOnly = DosAttributes(rawValue: 0b00000001)
    -
    -
    -
  • -
  • -
    - - - - data() - -
    -
    -
    -
    -
    -
    -

    Returns data associated with this entry.

    -
    -

    Throws

    - SevenZipError.dataIsUnavailable if data for entry isn’t available. - -
    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public func data() throws -> Data
    - -
    -
    -
    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 a10626eb..3821a929 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

  • - - - - @@ -198,6 +186,39 @@ + + +
    @@ -246,7 +267,7 @@
    @@ -277,7 +298,7 @@ @@ -307,7 +328,7 @@ @@ -339,7 +360,7 @@ then this property is nil.

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

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

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

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

    @@ -516,7 +537,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 9e54c052..bad6f62f 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -245,7 +266,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 412eb7c1..bff7e0eb 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -250,7 +271,7 @@ @@ -284,7 +305,7 @@ @@ -318,7 +339,7 @@ @@ -352,7 +373,7 @@ @@ -386,7 +407,7 @@ diff --git a/docs/Structs/SevenZipEntryInfo/Permissions.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/Permissions.html similarity index 71% rename from docs/Structs/SevenZipEntryInfo/Permissions.html rename to docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/Permissions.html index 0b72defb..c83ff762 100644 --- a/docs/Structs/SevenZipEntryInfo/Permissions.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/Permissions.html @@ -2,15 +2,15 @@ Permissions Structure Reference - - + + - - + + - - - + + + @@ -20,21 +20,21 @@

    - + SWCompression Docs - (100% documented) + (86% documented)

    -

    +

    - + View on GitHub

    @@ -42,8 +42,8 @@
    @@ -51,150 +51,171 @@
    @@ -207,7 +228,7 @@

    SevenZipEntryInfo

    -
    public struct SevenZipEntryInfo
    +
    public struct SevenZipEntryInfo: ContainerEntryInfo
    @@ -219,100 +240,14 @@
    +
      -
    • -
      - - - - Permissions - -
      -
      -
      -
      -
      -
      -

      Represents file access permissions in UNIX format.

      - - See more -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public struct Permissions: OptionSet
      - -
      -
      - -
      -
      -
    • -
    • -
      - - - - DosAttributes - -
      -
      -
      -
      -
      -
      -

      Represents file attributes in DOS format.

      - - See more -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public struct DosAttributes: OptionSet
      - -
      -
      - -
      -
      -
    • -
    • -
      - - - - UnixType - -
      -
      -
      -
      -
      -
      -

      Represents file type in UNIX format.

      - - See more -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public enum UnixType: UInt32
      - -
      -
      - -
      -
      -
    • @@ -338,7 +273,7 @@
    @@ -368,7 +303,7 @@ @@ -376,9 +311,9 @@
  • - - - isDirectory + + + type
    @@ -386,19 +321,19 @@
    -

    True, if entry is a directory.

    +

    Undocumented

    Declaration

    Swift

    -
    public let isDirectory: Bool
    +
    public struct SevenZipEntryInfo: ContainerEntryInfo
    @@ -428,7 +363,7 @@ @@ -458,7 +393,7 @@ @@ -488,11 +423,52 @@
  • +
  • +
    + + + + permissions + +
    +
    +
    +
    +
    +
    +

    Entry’s UNIX file access permissions.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let permissions: Permissions?
    + +
    +
    + +
    +
    +
  • + + +
    + +
    • @@ -518,7 +494,7 @@
    @@ -526,39 +502,9 @@
  • - - - permissions - -
    -
    -
    -
    -
    -
    -

    Entry’s UNIX file access permissions.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public let permissions: Permissions?
    - -
    -
    - -
    -
    -
  • -
  • -
    @@ -573,42 +519,12 @@

    Declaration

    Swift

    -
    public let dosAttributes: DosAttributes?
    +
    public let dosAttributes: DosAttributes?
    - - -
  • -
  • -
    - - - - unixType - -
    -
    -
    -
    -
    -
    -

    Entry’s UNIX file type.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public let unixType: UnixType?
    - -
    -
    -
    @@ -626,7 +542,7 @@
    -

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

    +

    True, if entry has a stream (data) inside container. 7-Zip internal propety.

    @@ -638,7 +554,7 @@
    @@ -668,7 +584,7 @@ @@ -700,7 +616,7 @@ Used in differential backups to indicate that file should be deleted. @@ -730,7 +646,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 deleted file mode 100644 index e46ba5e7..00000000 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/SevenZipEntryInfo/DosAttributes.html +++ /dev/null @@ -1,476 +0,0 @@ - - - - DosAttributes Structure Reference - - - - - - - - - - - - - - - - -
    -

    - - SWCompression Docs - - (100% documented) -

    - -

    -

    - -
    -

    - -

    - - - View on GitHub - -

    - -
    - - - -
    - -
    - -
    -
    -

    DosAttributes

    -
    -
    -
    public struct DosAttributes: OptionSet
    - -
    -
    -

    Represents file attributes in DOS format.

    - -
    -
    - -
    -
    -
    -
      -
    • -
      - - - - rawValue - -
      -
      -
      -
      -
      -
      -

      Raw bit flags value.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public let rawValue: UInt32
      - -
      -
      - -
      -
      -
    • -
    • -
      - - - - init(rawValue:) - -
      -
      -
      -
      -
      -
      -

      Initializes attributes with bit flags.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public init(rawValue: UInt32)
      - -
      -
      - -
      -
      -
    • -
    • -
      - - - - archive - -
      -
      -
      -
      -
      -
      -

      File is archive or archived.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public static let archive = DosAttributes(rawValue: 0b00100000)
      - -
      -
      - -
      -
      -
    • -
    • -
      - - - - directory - -
      -
      -
      -
      -
      -
      -

      File is a directory.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public static let directory = DosAttributes(rawValue: 0b00010000)
      - -
      -
      - -
      -
      -
    • -
    • -
      - - - - volume - -
      -
      -
      -
      -
      -
      -

      File is a volume.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public static let volume = DosAttributes(rawValue: 0b00001000)
      - -
      -
      - -
      -
      -
    • -
    • -
      - - - - system - -
      -
      -
      -
      -
      -
      -

      File is a system file.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public static let system = DosAttributes(rawValue: 0b00000100)
      - -
      -
      - -
      -
      -
    • -
    • -
      - - - - hidden - -
      -
      -
      -
      -
      -
      -

      File is hidden.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public static let hidden = DosAttributes(rawValue: 0b00000010)
      - -
      -
      - -
      -
      -
    • -
    • -
      - - - - readOnly - -
      -
      -
      -
      -
      -
      -

      File is read-only.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public static let readOnly = DosAttributes(rawValue: 0b00000001)
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
    - -
    -
    - - - - 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 deleted file mode 100644 index 8464339a..00000000 --- a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/SevenZipEntryInfo/UnixType.html +++ /dev/null @@ -1,470 +0,0 @@ - - - - UnixType Enumeration Reference - - - - - - - - - - - - - - - - -
    -

    - - SWCompression Docs - - (100% documented) -

    - -

    -

    - -
    -

    - -

    - - - View on GitHub - -

    - -
    - - - -
    - -
    - -
    -
    -

    UnixType

    -
    -
    -
    public enum UnixType: UInt32
    - -
    -
    -

    Represents file type in UNIX format.

    - -
    -
    - -
    -
    -
    -
      -
    • -
      - - - - fifo - -
      -
      -
      -
      -
      -
      -

      FIFO special file.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case fifo = 0o010000
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - characterSpecial - -
      -
      -
      -
      -
      -
      -

      Character special file.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case characterSpecial = 0o020000
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - directory - -
      -
      -
      -
      -
      -
      -

      Directory.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case directory = 0o040000
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - blockSpecial - -
      -
      -
      -
      -
      -
      -

      Block special file.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case blockSpecial = 0o060000
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - regular - -
      -
      -
      -
      -
      -
      -

      Regular file.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case regular = 0o100000
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - symbolicLink - -
      -
      -
      -
      -
      -
      -

      Symbolic link.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case symbolicLink = 0o120000
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
      -
    • -
      - - - - socket - -
      -
      -
      -
      -
      -
      -

      Socket.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      case socket = 0o140000
      - -
      -
      - -
      -
      -
    • -
    -
    -
    -
    - -
    -
    - - - - diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/TarEntry.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/TarEntry.html new file mode 100644 index 00000000..fbc46225 --- /dev/null +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/TarEntry.html @@ -0,0 +1,317 @@ + + + + TarEntry Structure Reference + + + + + + + + + + + + + + + + +
    +

    + + SWCompression Docs + + (86% documented) +

    + +

    +

    + +
    +

    + +

    + + + View on GitHub + +

    + +
    + + + +
    + +
    + +
    +
    +

    TarEntry

    +
    +
    +
    public struct TarEntry: ContainerEntry
    + +
    +
    +

    Represents an entry in 7-Zip container.

    + +
    +
    + +
    +
    +
    +
      +
    • +
      + + + + info + +
      +
      +
      +
      +
      +
      +

      Various information about entry.

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public let info: TarEntryInfo
      + +
      +
      + +
      +
      +
    • +
    • +
      + + + + data + +
      +
      +
      +
      +
      +
      +

      Undocumented

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public struct TarEntry: ContainerEntry
      + +
      +
      + +
      +
      +
    • +
    +
    +
    +
    + +
    +
    + + + + diff --git a/docs/Classes/TarEntry.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/TarEntryInfo.html similarity index 60% rename from docs/Classes/TarEntry.html rename to docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/TarEntryInfo.html index bc33e159..6d467607 100644 --- a/docs/Classes/TarEntry.html +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/TarEntryInfo.html @@ -1,7 +1,7 @@ - TarEntry Class Reference + TarEntryInfo Structure Reference @@ -14,16 +14,16 @@ - + - +

    SWCompression Docs - (100% documented) + (86% documented)

    @@ -44,7 +44,7 @@

    @@ -112,34 +112,22 @@ SevenZipContainer
  • - - - - @@ -198,20 +186,47 @@ + + +
    -

    TarEntry

    -
    -
    -
    public class TarEntry: ContainerEntry
    - -
    -
    -

    Represents either a file or directory entry in TAR container.

    +

    TarEntryInfo

    +

    Undocumented

    @@ -219,44 +234,20 @@
    +
    @@ -284,39 +275,9 @@
  • - - - isDirectory - -
    -
    -
    -
    -
    -
    -

    True, if entry is a directory.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public var isDirectory: Bool
    - -
    -
    - -
    -
    -
  • -
  • -
    - - + - size + size
    @@ -331,12 +292,12 @@

    Declaration

    Swift

    -
    public private(set) var size: Int
    +
    public let size: Int?
    @@ -344,175 +305,9 @@
  • - - - entryAttributes - -
    -
    -
    -
    -
    -
    -

    Provides a dictionary with various attributes of the entry. -FileAttributeKey values are used as dictionary keys.

    -

    Possible attributes:

    - -
      -
    • FileAttributeKey.posixPermissions,
    • -
    • FileAttributeKey.ownerAccountID,
    • -
    • FileAttributeKey.groupOwnerAccountID,
    • -
    • FileAttributeKey.size,
    • -
    • FileAttributeKey.modificationDate,
    • -
    • FileAttributeKey.type,
    • -
    • FileAttributeKey.ownerAccountName, if format of container is UStar,
    • -
    • FileAttributeKey.groupOwnerAccountName, if format of container is UStar,
    • -
    • FileAttributeKey.creationDate, if format of container is PAX.
    • -
    - -

    Most modern TAR containers are in UStar format.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public let entryAttributes: [FileAttributeKey: Any]
    - -
    -
    - -
    -
    -
  • -
  • -
    - - - - mode - -
    -
    -
    -
    -
    -
    -

    File mode.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public let mode: Int?
    - -
    -
    - -
    -
    -
  • -
  • -
    - - - - ownerID - -
    -
    -
    -
    -
    -
    -

    Owner’s ID.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public private(set) var ownerID: Int?
    - -
    -
    - -
    -
    -
  • -
  • -
    - - - - groupID - -
    -
    -
    -
    -
    -
    -

    Owner’s group ID.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public private(set) var groupID: Int?
    - -
    -
    - -
    -
    -
  • -
  • -
    - - - - modificationTime - -
    -
    -
    -
    -
    -
    -

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

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public private(set) var modificationTime: Date
    - -
    -
    - -
    -
    -
  • -
  • -
    - - + - type + type
    @@ -520,19 +315,11 @@
    -

    Type of entry.

    +

    Undocumented

    -
    -

    Declaration

    -
    -

    Swift

    -
    public let type: EntryType
    - -
    -
    @@ -540,69 +327,9 @@
  • - - - ownerUserName - -
    -
    -
    -
    -
    -
    -

    Owner’s user name.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public private(set) var ownerUserName: String?
    - -
    -
    - -
    -
    -
  • -
  • -
    - - - - ownerGroupName - -
    -
    -
    -
    -
    -
    -

    Owner’s group name.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public private(set) var ownerGroupName: String?
    - -
    -
    - -
    -
    -
  • -
  • -
    @@ -617,12 +344,12 @@

    Declaration

    Swift

    -
    public private(set) var accessTime: Date?
    +
    public let accessTime: Date?
    @@ -630,9 +357,9 @@
  • @@ -647,12 +374,12 @@

    Declaration

    Swift

    -
    public private(set) var creationTime: Date?
    +
    public let creationTime: Date?
    @@ -660,9 +387,236 @@
  • - + + + modificationTime + +
    +
    +
    +
    +
    +
    +

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

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let modificationTime: Date?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + permissions + +
    +
    +
    +
    +
    +
    +

    Undocumented

    + +
    + +
    +
    +
  • + + +
    + +
    @@ -690,9 +644,9 @@
  • - + - comment + comment
    @@ -707,52 +661,33 @@

    Declaration

    Swift

    -
    public private(set) var comment: String?
    +
    public let comment: String?
  • + + +
    + +
    • - - - isLink - -
      -
      -
      -
      -
      -
      -

      True if entry is a symbolic link.

      - -
      -
      -

      Declaration

      -
      -

      Swift

      -
      public let isLink: Bool
      - -
      -
      - -
      -
      -
    • -
    • -
      - - - - linkPath + + + linkName
      @@ -767,72 +702,12 @@

      Declaration

      Swift

      -
      public var linkPath: String?
      +
      public let linkName: String?
      - -
    - -
  • - -
    -
    -
    -
    -
    -

    Other entries from PAX extended headers.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public private(set) var unknownExtendedHeaderEntries: [String: String] = [:]
    - -
    -
    - -
    -
    -
  • -
  • -
    - - - - data() - -
    -
    -
    -
    -
    -
    -

    Returns data associated with this entry.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public func data() -> Data
    - -
    -
    -
    diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/ZipEntry.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/ZipEntry.html new file mode 100644 index 00000000..3b5bac76 --- /dev/null +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/ZipEntry.html @@ -0,0 +1,317 @@ + + + + ZipEntry Structure Reference + + + + + + + + + + + + + + + + +
    +

    + + SWCompression Docs + + (86% documented) +

    + +

    +

    + +
    +

    + +

    + + + View on GitHub + +

    + +
    + + + +
    + +
    + +
    +
    +

    ZipEntry

    +
    +
    +
    public struct ZipEntry: ContainerEntry
    + +
    +
    +

    Represents either a file or directory entry in ZIP container.

    + +
    +
    + +
    +
    +
    +
      +
    • +
      + + + + info + +
      +
      +
      +
      +
      +
      +

      Various information about entry.

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public let info: ZipEntryInfo
      + +
      +
      + +
      +
      +
    • +
    • +
      + + + + data + +
      +
      +
      +
      +
      +
      +

      Undocumented

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public struct ZipEntry: ContainerEntry
      + +
      +
      + +
      +
      +
    • +
    +
    +
    +
    + +
    +
    + + + + diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/ZipEntryInfo.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/ZipEntryInfo.html new file mode 100644 index 00000000..1532abfa --- /dev/null +++ b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/Structs/ZipEntryInfo.html @@ -0,0 +1,546 @@ + + + + ZipEntryInfo Structure Reference + + + + + + + + + + + + + + + + +
    +

    + + SWCompression Docs + + (86% documented) +

    + +

    +

    + +
    +

    + +

    + + + View on GitHub + +

    + +
    + + + +
    + +
    + +
    +
    +

    ZipEntryInfo

    +

    Undocumented

    + +
    +
    + +
    +
    +
    + +
      +
    • +
      + + + + name + +
      +
      +
      +
      +
      +
      +

      Name of the file or directory.

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public let name: String?
      + +
      +
      + +
      +
      +
    • +
    • +
      + + + + size + +
      +
      +
      +
      +
      +
      +

      Size of the data associated with the entry.

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public let size: Int?
      + +
      +
      + +
      +
      +
    • +
    • +
      + + + + type + +
      +
      +
      +
      +
      +
      +

      Undocumented

      + +
      + +
      +
      +
    • +
    +
    +
    + + +
    +
    + + +
    +
    +
    + +
    +
    + + + + 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 ebe76f7e..8ff49da5 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

  • - - - - @@ -198,6 +186,39 @@ + + +
    @@ -246,7 +267,7 @@ @@ -277,7 +298,7 @@ @@ -307,7 +328,7 @@ @@ -337,7 +358,7 @@ @@ -367,7 +388,7 @@ @@ -424,7 +445,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 be91de4d..f05bb9bf 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -245,7 +266,7 @@ @@ -279,7 +300,7 @@ @@ -313,7 +334,7 @@ @@ -347,7 +368,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 a55cc9ad..7a738c09 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 - (100% documented) + (86% documented)

    @@ -112,34 +112,22 @@ SevenZipContainer

    - - - - @@ -198,6 +186,39 @@ + + +
    @@ -245,7 +266,7 @@ diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/index.html b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/index.html index 62379449..5e364668 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 - (100% documented) + (86% documented)

    @@ -111,34 +111,22 @@ SevenZipContainer

    - - - - @@ -197,6 +185,39 @@ + + +
    diff --git a/docs/docsets/SWCompression.docset/Contents/Resources/Documents/search.json b/docs/docsets/SWCompression.docset/Contents/Resources/Documents/search.json index 30217920..b5ca0bdd 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":"

    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 +{"Structs/Permissions.html#/s:13SWCompression11PermissionsV8rawValues6UInt32Vv":{"name":"rawValue","abstract":"

    Raw bit flags value (in decimal).

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

    Initializes permissions with bit flags in decimal.

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

    Set UID.

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

    Set GID.

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

    Sticky bit.

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

    Owner can read.

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

    Owner can write.

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

    Owner can execute.

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

    Group can read.

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

    Group can write.

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

    Group can execute.

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

    Others can read.

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

    Others can write.

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

    Others can execute.

    ","parent_name":"Permissions"},"Structs/ZipEntryInfo.html#/s:13SWCompression12ZipEntryInfoV4nameSSSgv":{"name":"name","abstract":"

    Name of the file or directory.

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

    Size of the data associated with the entry.

    ","parent_name":"ZipEntryInfo"},"Structs/ZipEntryInfo.html#/s:13SWCompression12ZipEntryInfoV4typeAA09ContainerC4TypeOv":{"name":"type","abstract":"

    Undocumented

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

    Undocumented

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

    Undocumented

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

    Undocumented

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

    Undocumented

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

    Undocumented

    ","parent_name":"ZipEntryInfo"},"Structs/ZipEntryInfo.html#/s:13SWCompression12ZipEntryInfoV22externalFileAttributess6UInt32Vv":{"name":"externalFileAttributes","abstract":"

    Undocumented

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

    Undocumented

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

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

    ","parent_name":"ZipEntryInfo"},"Structs/TarEntryInfo.html#/s:13SWCompression12TarEntryInfoV4nameSSSgv":{"name":"name","abstract":"

    Name of the file or directory.

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

    Size of the data associated with the entry.

    ","parent_name":"TarEntryInfo"},"Structs/TarEntryInfo.html#/s:13SWCompression12TarEntryInfoV4typeAA09ContainerC4TypeOv":{"name":"type","abstract":"

    Undocumented

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

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

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

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

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

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

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

    Undocumented

    ","parent_name":"TarEntryInfo"},"Structs/TarEntryInfo.html#/s:13SWCompression12TarEntryInfoV7ownerIDSiSgv":{"name":"ownerID","abstract":"

    Owner’s ID.

    ","parent_name":"TarEntryInfo"},"Structs/TarEntryInfo.html#/s:13SWCompression12TarEntryInfoV7groupIDSiSgv":{"name":"groupID","abstract":"

    Owner’s group ID.

    ","parent_name":"TarEntryInfo"},"Structs/TarEntryInfo.html#/s:13SWCompression12TarEntryInfoV13ownerUserNameSSSgv":{"name":"ownerUserName","abstract":"

    Owner’s user name.

    ","parent_name":"TarEntryInfo"},"Structs/TarEntryInfo.html#/s:13SWCompression12TarEntryInfoV14ownerGroupNameSSSgv":{"name":"ownerGroupName","abstract":"

    Owner’s group name.

    ","parent_name":"TarEntryInfo"},"Structs/TarEntryInfo.html#/s:13SWCompression12TarEntryInfoV17deviceMajorNumberSiSgv":{"name":"deviceMajorNumber","abstract":"

    Undocumented

    ","parent_name":"TarEntryInfo"},"Structs/TarEntryInfo.html#/s:13SWCompression12TarEntryInfoV17deviceMinorNumberSiSgv":{"name":"deviceMinorNumber","abstract":"

    Undocumented

    ","parent_name":"TarEntryInfo"},"Structs/TarEntryInfo.html#/s:13SWCompression12TarEntryInfoV7charsetSSSgv":{"name":"charset","abstract":"

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

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

    Comment associated with the entry (PAX only).

    ","parent_name":"TarEntryInfo"},"Structs/TarEntryInfo.html#/s:13SWCompression12TarEntryInfoV8linkNameSSSgv":{"name":"linkName","abstract":"

    Path to a linked file for symbolic link entry.

    ","parent_name":"TarEntryInfo"},"Structs/DosAttributes.html#/s:13SWCompression13DosAttributesV8rawValues6UInt32Vv":{"name":"rawValue","abstract":"

    Raw bit flags value.

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

    Initializes attributes with bit flags.

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

    File is archive or archived.

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

    File is a directory.

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

    File is a volume.

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

    File is a system file.

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

    File is hidden.

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

    File is read-only.

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

    Represents file attributes in DOS format.

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

    Undocumented

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

    Undocumented

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

    Represents file access permissions in UNIX format.

    "},"Protocols/ContainerEntryInfo.html#/s:13SWCompression18ContainerEntryInfoP4nameSSSgv":{"name":"name","abstract":"

    Undocumented

    ","parent_name":"ContainerEntryInfo"},"Protocols/ContainerEntryInfo.html#/s:13SWCompression18ContainerEntryInfoP4typeAA0bC4TypeOv":{"name":"type","abstract":"

    Undocumented

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

    Undocumented

    ","parent_name":"ContainerEntryInfo"},"Protocols/ContainerEntryInfo.html#/s:13SWCompression18ContainerEntryInfoP10accessTime10Foundation4DateVSgv":{"name":"accessTime","abstract":"

    Undocumented

    ","parent_name":"ContainerEntryInfo"},"Protocols/ContainerEntryInfo.html#/s:13SWCompression18ContainerEntryInfoP12creationTime10Foundation4DateVSgv":{"name":"creationTime","abstract":"

    Undocumented

    ","parent_name":"ContainerEntryInfo"},"Protocols/ContainerEntryInfo.html#/s:13SWCompression18ContainerEntryInfoP16modificationTime10Foundation4DateVSgv":{"name":"modificationTime","abstract":"

    Undocumented

    ","parent_name":"ContainerEntryInfo"},"Protocols/ContainerEntryInfo.html#/s:13SWCompression18ContainerEntryInfoP11permissionsAA11PermissionsVSgv":{"name":"permissions","abstract":"

    Undocumented

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

    Undocumented

    "},"Enums/ContainerEntryType.html#/s:13SWCompression18ContainerEntryTypeO12blockSpecialA2CmF":{"name":"blockSpecial","abstract":"

    Block special file.

    ","parent_name":"ContainerEntryType"},"Enums/ContainerEntryType.html#/s:13SWCompression18ContainerEntryTypeO16characterSpecialA2CmF":{"name":"characterSpecial","abstract":"

    Character special file.

    ","parent_name":"ContainerEntryType"},"Enums/ContainerEntryType.html#/s:13SWCompression18ContainerEntryTypeO10contiguousA2CmF":{"name":"contiguous","abstract":"

    Contiguous file.

    ","parent_name":"ContainerEntryType"},"Enums/ContainerEntryType.html#/s:13SWCompression18ContainerEntryTypeO9directoryA2CmF":{"name":"directory","abstract":"

    Directory.

    ","parent_name":"ContainerEntryType"},"Enums/ContainerEntryType.html#/s:13SWCompression18ContainerEntryTypeO4fifoA2CmF":{"name":"fifo","abstract":"

    FIFO special file.

    ","parent_name":"ContainerEntryType"},"Enums/ContainerEntryType.html#/s:13SWCompression18ContainerEntryTypeO8hardLinkA2CmF":{"name":"hardLink","abstract":"

    Hard link.

    ","parent_name":"ContainerEntryType"},"Enums/ContainerEntryType.html#/s:13SWCompression18ContainerEntryTypeO7regularA2CmF":{"name":"regular","abstract":"

    Regular file.

    ","parent_name":"ContainerEntryType"},"Enums/ContainerEntryType.html#/s:13SWCompression18ContainerEntryTypeO6socketA2CmF":{"name":"socket","abstract":"

    Socket.

    ","parent_name":"ContainerEntryType"},"Enums/ContainerEntryType.html#/s:13SWCompression18ContainerEntryTypeO12symbolicLinkA2CmF":{"name":"symbolicLink","abstract":"

    Symbolic link.

    ","parent_name":"ContainerEntryType"},"Enums/ContainerEntryType.html#/s:13SWCompression18ContainerEntryTypeO7unknownA2CmF":{"name":"unknown","abstract":"

    Entry type is unknown.

    ","parent_name":"ContainerEntryType"},"Enums/ContainerEntryType.html":{"name":"ContainerEntryType","abstract":"

    Undocumented

    "},"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":"

    Compress data with particular algorithm.

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

    Undocumented

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

    Undocumented

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

    Undocumented

    ","parent_name":"Container"},"Protocols/Container.html#/s:13SWCompression9ContainerP4infoSay5Entry_4InfoQZG10Foundation4DataV9container_tKFZ":{"name":"info(container:)","abstract":"

    Undocumented

    ","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":"

    Undocumented

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

    Undocumented

    "},"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: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."},"Structs/ZipEntry.html#/s:13SWCompression8ZipEntryV4infoAA0bC4InfoVv":{"name":"info","abstract":"

    Various information about entry.

    ","parent_name":"ZipEntry"},"Structs/ZipEntry.html#/s:13SWCompression8ZipEntryV4data10Foundation4DataVSgv":{"name":"data","abstract":"

    Undocumented

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

    Processes ZIP container and returns an array of ZipEntry.

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

    Undocumented

    ","parent_name":"ZipContainer"},"Structs/TarEntry.html#/s:13SWCompression8TarEntryV4infoAA0bC4InfoVv":{"name":"info","abstract":"

    Various information about entry.

    ","parent_name":"TarEntry"},"Structs/TarEntry.html#/s:13SWCompression8TarEntryV4data10Foundation4DataVSgv":{"name":"data","abstract":"

    Undocumented

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

    Processes TAR container and returns an array of TarEntry.

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

    Undocumented

    ","parent_name":"TarContainer"},"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:13SWCompression17SevenZipEntryInfoV4typeAA09ContainerD4TypeOv":{"name":"type","abstract":"

    Undocumented

    ","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:13SWCompression17SevenZipEntryInfoV11permissionsAA11PermissionsVSgv":{"name":"permissions","abstract":"

    Entry’s UNIX file access permissions.

    ","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:13SWCompression17SevenZipEntryInfoV13dosAttributesAA03DosG0VSgv":{"name":"dosAttributes","abstract":"

    Entry’s DOS attributes.

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

    True, if entry has a stream (data) inside container. 7-Zip internal propety.

    ","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"},"Structs/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryV4infoAA0bcD4InfoVv":{"name":"info","abstract":"

    Various information about entry.

    ","parent_name":"SevenZipEntry"},"Structs/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryV4data10Foundation4DataVSgv":{"name":"data","abstract":"

    Undocumented

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

    Processes 7-Zip container and returns an array of 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.

    "},"Structs/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.

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

    Represents an entry in 7-Zip container.

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

    Provides open function for ZIP containers.

    "},"Structs/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"},"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"},"Other Enums.html":{"name":"Other Enumerations","abstract":"

    The following enumerations are available globally.

    "},"Other Protocols.html":{"name":"Other Protocols","abstract":"

    The following protocols are available globally.

    "},"Other Structs.html":{"name":"Other Structures","abstract":"

    The following structures are available globally.

    "}} \ 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 218c21b5d214de595f138a06a3877187d850156f..57fffb8c69ad9447eee67df04f78c835720bb00e 100644 GIT binary patch literal 73728 zcmeHw33wb?d0%`$!L(A4Jso0WqUu*8_Mfmq(EVs~+<7*q*0d`j|Hj|VLZ4G}43WDP! zyAO^T;cZFG0=na4`^Jv79yvCCXyn-G)&paw?`uUgt;fes9cQ?dKM^7Q+2IA6i;=G* z;LC$OflmY$19kp4`uF>O=zE@TL)|OtZmoS??fv54iTl0Z z^1i^^Q}eN!Nza!&Q^Gd{S-6{jH@~0z9CrbMsXv)bBG=U{_s&WyiMVtqkxFL{FE7nV znIoC>MJbcJI+@EX$8*`P$RN7G9eGg3C2NT;Gb z##U3&!91vwiOKnu%tjN=*hAI8sY4~4$$Lbuqgn1uUrtGxeVO#~#lt{(HwM{f201wi zBYdb`$Tc;~&GR^@@jWgKX;1-0gge*9z!PG3z$>5# ze6CgG+MDH3SZhlOT0~hFMi7k};Ejw#qepb`Q!qa=*CKMA&GONu^lV}-5s&3y^&U^S zvmgenK%?Dz)61z@LejS z*n`dvoET5#dV8i;9(*RTuf}+KX-P`utn+3ZONk>MR6tEmuH@>AGOr2{6lY$ymBzd( z!CfNry0tj-sswup%!|Cg|$xKId6!x_aZe(=jOe{q6-f}qu?l6~-bnCzn z#rdGfwKU63a3IgRgJDPmh47_-iBcqlx<@GjN0jm#DCH6oMkx)&d7n-xcQ6p8H26}T ziBc0Nv%5zr0!NgpHBibWB+8n?9@ClH8#uj*<2#Ncy-M*8enj+ z=cj5E$Wm@TG3x?kf`^$s_QuU%nmw^)16cwTIvz zagz}IK35xf$^-uqh{%DbLca_qLJx&chTr9XQ}E~F`-Jw$Ht)ARC+lwWzR*9;j|;2( zdxUS+zCQB0;41>j&OZe5 z>~7#KCPFtah^YSaRoDOTJcWoFc-Qs+CIztT`u`nqoRBtNSJ$dPvP zCT-mfGzIkk+hsvS^`Ey_(p|t_T>o!4i`=o1uZsTv%;Llp=@R|WW-_5WK6Ft17wY5M<$0?extz?%LanZt9e9rn1c zu&-HL$k+eFGsq)bcwJ>*I}(fjADR|X{pU5Mea#rm`hSp73Pf+Oe2duGBwrF{rMcL0 zGB=W(PlH`!VQDNWp_NiqRn8<6GyB0BA!WJ@UbchMij;H|!MpX3rlJGZ&nBV+R-7X} zV@rFvPeZq!aRY^-aiN${wC`HtBI}lOFZ4Fh3oAfd2LboLL*LydZ&-!c0n@DEaxFM-Lt2Z8 z9@w$@;Ar}$0OzTB5!CTc_{&>5w}aL-a--PQNPlb)!G5re(gOLkx6H=y@im;2F<5-D zOe_wrjLC~qJP}Kp#-aJ4$Wen!)M;X(+wkwdT=F;(W5*=#n4|>gqZud5F?E)?DEc=(e2)26L zxUGV=4zl`RtU=&TZ!@=9P`Z#+f3uhVyS?o&6NX)7_>(p9wR;;HqQb#5hhP~QsYy>* zo4Ph{eM1+u$!o$|)Nb}RHS`O6q`4$`txb)TXRMvbuIR7j2;`^q3ggq(plu9JFLQkYR^>{kCi{z#U(`zjYbER4q2s; z*wo0rKJ4T)E)dntJ2Jjq?d#-Bw9njKcw%s~;}LtXd#d|Lw0rVuHYY7%|0gEryL-~v zW8EWTYV1e8K$JVM_YC*1*TjxS5Wh_HQjFK?V6EKBcCdy3QYRN6Ug4!zh zf=6F>+tV7h!;6l8z1fsXW;D#-CkMoRP4WRDHanZZSesZ9Hjflr${tSVCYLW>OlNY^ ztZC^_f|Q#=5vGt#2k~ddW)nR_1rgA~zj@F~zl6=1^}sEjSzdGzu1t z?iFsLJG1`wz{Z4z!zWoOfP8)}LgQw7p z&hUah=G;fU*E?-`2kv9*tapJn2;N37wS@AbCT4>Fn2rezO3 zV@>~r!PJBgeKBc|Si>iFc{}P)3mEvNABotS^_@xgiiyMAh<*RfUYro#bh4N!WO_v( z^=$KQtlz0ht(K7}a;sr1e?0CTYCg&DkyND*jwj6^qp~RVcecyE9U(qG&96{u9|PSV(kbB_diO2f@`TTly8iBJL}IG`$ERC;$6{g zXxvj{-u~uE7{3l%%K@fh#y&$q05yGosA@t%Y)!bx=)xu&jf!^=&W)%4VwmGBP{mQ+tKYREUWCG%i<%WLz-eZ(cMqz_IHEO%6rmi ztchCsV-c8L>ILExmcdE{w#iwIQ!oltfHB&w192WYY6U!>#Ze9w9;Hzmx1si+s==2) zZ&U~V?^PV>NU@QYina97azB^zEpVVUDkRqTh~qxA8GTQ;UF##I&;lmlfvP$XmEa24 z26oZOsz{}Ad7IH$a&A<$m24ba9z?aS9@mZ?c%8pGZPRGC-e$@Kn)_$qAzx^cW9Y*` z>yVJ_EW$D5{@MSqTf3_m-Y?3<(CphoM(aJFnF^S+aNMtQ`4uq{sqc%ex(ppUP zK$;#J3-cf{!^TTts7-ROfHti0?1@xtC6-8H9QN7`E0D@(1)6j~ji#7`|YO-f&keVjG9ilgr>z*5Wk(Ft#~K6_sX@{3&}R7&}o?! z?1-(gt$0s%EQq&4tRGM#uC8)bE?5&0dI6voi;c|TgDJ5M!Ue!zo605Tm($Bx6RR_C zl=6MD-8x+2cK2tIuY==8mnR(U*U0<|nXZZXVFTdm4)6$P=267COOyY>I^l>@BW@wY z26j~fdhW4DF+hCWh@Z(&)|u5MK1a@FmhTLsW)Me4yQ9%jowj4$6D!sZ1896 z`Ts>~4p`#<*Yp1iIaSPg8|(T1YpQxtTDaSK{=cp$R3MZ&htRI)|D#B^p8vm||F7!b z1x5TGW2;hQb+4@F|7%Btk$#Snr#<&%8&nF&;KV|E@*$|Vn!OJwB-5N zdj7wv8aULHP?P6l>-qnd)wG`f&+6Ej7EU$u|IM3OD=(lKxmHmB-^@*OkvB$mhrbE> zzZiN;Xm{{i!RH0H1U?dYN#H_YoBvn-SNc1AANCE`{dHY??dxmLicgCv@2|Zt^+szx zS~KnWh39#myM%8E4mtC z^dYdx*wubAn;*TlFW>M!q@kKdFZa?xs!lU{lkDOb4iLJI1O^W(P7Ccok{Yx85vw~s^B#l}^S?yhs_(;m%p zXpDq%?A6*GgWLCeIS8D}x7HSoo0{7P)xDbJ=yGZ?1qBM+H2w}MFv$peX)hF{fdKmK z)uowqG7&$RNG-aFEZSp)Oekl^ph`-U+?9oV2`T3$vH=E?u*~gY1k6bD%Sng~W%-9l zcSG2h7RTna25d8$1{IiuXJHgdrGRe|oZho;6K}f;lrUY`4STyu-a41CB%0+fud;^I zhX4t~LnBbrr%CRgO=P5aE}gmRCe?;CsDx|jekf4{9u8!eH^ISibr+llkm_d5MRRk6 z4w-J3p3SzHF_FYowD~D2_YVW#X`V1I3{;j?{;dAC?gdSumW5|g1;A;W@+Cz-wmVd8 z9d1SPN9FKNst34a&6I&2kU!qNo|Iw{Dc7LY+qIZZ3l02`FC7K(d=(uxag>-TaH zA8&|)HwS+kUJx_y?(=exm|--@m_IPSVPEvp7e))T`3vJ4`l6@D%Rx-KDem0-iRl%6 zb0JEV!rG{`Kq{G6s4f2sJLX_Xu-dLd!wjpl-BeVqc_A@7E2UgX;2L1C2znQTo~5)l zcc3#^1brKWzLHKtRn#6$FNJ8gQJykE+bJR4ae((pJ(Yh6)z8 zt7s89Dz|g@(vt0TDsER1HX8+Zx`XhvBtfLcgiw`tu`N|m-TCb*EDC}>w}s}W88k7w zAlSV9ZMX9*{!s-K1HV}TU!8bPKlc%?jhp1e7l{GyE4hCPobdnHpYi>wHsX7ZFI@NX zx^4VX{=Gtr@W-Bac$y=xiS&d&6VB9LtbH9J(g4VH6-He0_;{+D%!PhT{4NVYjE+ys{RGXN3a#5z2rHF{ll2J0x3`u4E1dT0` zU!NDjc+@V;K@}QhajqFYSdLaC2L3-(@abjM*5(3u0LH-o(tPT;Q<_^lbuSp1FDv zo`pFXf_9y9W-uG46&@- zNP!A&>Ura|Gq$S@Y$~|DBaW#ZTWu@DnP$fcxFHOjWv!t53M<&e_o!9kJ`_V79X!5K zR{;EW(M@*X9O@#?e08iA-7wG1kRZGe%fb;4)n?Q|s0Y4@P?}M<#AQ6BfraaJxc4PQ z^l$L0FT%|wWp;3kR=M8yITVr_-~?m^nyfU_&uhn(WlS2?iznf|Xxz79Nr7_)${SY8 zJF|OUj4A~ble5R*p1#bA1lJe9MF6HLF_uQLnQ*;WBn&{Z0HTxOtX`-wIZGLShw0ut z6BgXS1y3Qh0o4B^JO)678qF@u`{7?9Q z;D0W7|3BeN_yTors2i>QeC^d*ulR&G=KZqwhBsLA2Q}L~U-Vq{c!WO`+WEiW$GNWn zz+yiamf^y@Cb@wsF0y;6fDWe7m43!z-7F~FsDYueC3EE48e}yckB#>BR0>@w3yB~w zPt$zcT5Kvl0*rVzORlXZ!geqnk0qITqEeg#RzNhSOh)7|MMxEhToO?VW(XxOi5%40 zY==uDp?YF!-VK?k+YT6w@Zv?d(+h;K5+tJ1*GEqwF({W7IgmHEE}klt=Uo7Jx~(FFqu4SUAzP z&Y@|Lct{mwyhB=xf^`$mB#1?^MKGQ>PZ|)XqtJjR%9s=Zq0uB3C?ukvW)MmrRy=_1 zDg;N~H#1Mmg7H4a_SS+>;pQ438qS$H1F7~VWAo-z%nC?FKnQk5BA&CA4OF*%F)KyI zgzI7ZGSBS6#xrXe&!O0SB3>~bW$FnC!A{0$A-53&+I=-A!DWTgyrdLnGiuMJiYYx& zTUcx)GsMXvM7<+eATc#>8cV52qKsY&2!j1kjHuMhW(JFMR|Z)*!4ZJtDn5GwuCQ#9 zZy{WJAcH<{KbAZY)?XC{jpV{KxY(e?xTQ9DWy7(pFn;#Dq5oj2ghJBedn$v^`me%Z zvwY4l%c#p(cX-LfVY94&AlP$fMGl4Pd{MZv?mNlU7anADKr_4-`LbUZ516ia8;gtE^RFpm4-;wg3< zvc0EsMe+!kCPo8Y0`i`yEj*&$*^?0M1bc+d5ABqS@kAM(y#$4zr>01b-E75=E3slU z1xm(ePLzDAltsWor^^20UbqqWqrFH%7;p-diThL$n`eL z`<7FRvv`ZaX^eOI=|~iKP78Zb#W$qE%GVD^_NldsDHvV$AEuc2L;@C`YccT%OpA%1 zW^v+Yibuwy{@>2Mhl{)w~Ox;PkDa~dcU{kO*LCRANHISz9F38pXMLq8vxAB`Z*`VebW%Q+DMx@pV5-D zrl5o#?bh2&uNe{Jehe64Nyu=SG>(X{P{~8IJ+B!NQ{psugiEfK;RQl@G13$MK>J*G{9!!AJnCh+Wn1-qz0BDEL z-&y6uCpZK@A;TTiu&Xu_nNSMJq?4#h=PiYDurQ;p0UF^-%WxlcFIXT6*PcY2ZZLo% z?s$!fQCrsu;>aOQL}UEX43IF+LnSX<1nkJsr*2KyY}dh6StKbKLQ6p(W%n{H$H{7# z$1^l{Ss|B(!LLY1YIk%n5A>dH8s#M!Zm-6Qg_!ntlL{6-43*l@emz`*{ko#@7BppF zhszL?d2c^ycv z187=)mm#1E9VbI}5r!_1z&Ud9@}mrKHW$m}j-;Kv8I{q#+YT-b`N9oyJG2oa%VS>^ zVY7H3&R-|1b_-+67OQqe2z2u{##3Y;AybrM+(~DaVmUkKOhuTY4AovER3h8r!z7w_ zDrB>Bt5k;2&ckxy8X;={X>ueRPb6StSPizS*VyTlp}-O1zR^B27#hw)SLrxotKdlN zisA^xFc8zSF9Qu*1!h@xMnXi7q8WmUMV7bmwa-C zxm$DT^yE@3nZ%&e@$3<}vCdN2xAYS%!H*&}c z`xyq4gk~aMWn!3<-1kUQ1dD8^I;`r-eGf0<`cPF zVbP&-1 z^Tz(W93wV&4h8aCSpU_?n92xm6J2v&xfh7mjviA|8GOZfp~bflZ5}*_B5J+Tf45^R zP8zAB#ywTmd%M`FEGl7JS>Fq*4X#B}oG2YXhlzng!Y z6CbbrVB|%SF8=ZGhxn(%lioi88-OhA^}MfUSIFbpAN(WXQ^8^H=D?S0J`%VbxXu5U z{^8nF;*aX?6B~U``7*wmx>wyKjr{*hG)m%WZXqM7R)sZZZuS#2mb&@xXT@7V`V(@O z)mW!BgYN}c4EQg=(E{-_Cj>1B#u`wgBEzjxB&5cC9Z(r@HQe{F;eBn`3uCoDH5m(0 zv*W^*53qBm0-Z!2o1GP@L?i&J-c~kk(?f z9EyLbP57*3uB#abBLWS5GZc1gPKgN zaG$@9NvnqtfqnzM6^Eu9qM;ilGe=amNvkHBy#r;tpo;<5X+2hgiAS{OGHH%2MjzV;+zyxSdyH_f>^nO$=fQ)Ug*HQ{t&`f3|ZC~{c6(8O$tgsJ%g+s$(P7URHta|Wse}(UIm6lk7`XQatm%$R#H$PFhmhDqHw8< z21B70(eTfpzN(&y)rgwoeqYJ1uTEXPZSyG2MR~I{=T7NhW9{XA*HMVt2Y6!a#&oOf z3g^61lAwqHQ%NxR!~&k}gS_3@j<&y|vP7vjf80_45t@99BQmy{$`>8f(w%oM;fO{| zBhpEz#q$?OXjiLNMXMDG9b6JIH<`C{aGO|b>1OQ$-trY?#aE|JWmg9I=`hcPpqo+! zd@siTcW}#G$XMz!iAu3|D3HF-pa>eg5c=r>af=wTV^TBBNL z(!5+9E(M$G8lzFGyCFjn>-J{(B*b4YCFoj^th>02mG$<^P`w)N9+jNxdb^@ymRPz^ z7G$VnjdvW|74>$fC&deT-;kloHOQBz^9y>r(}iNiyf4YD@bv*ZdBDW-%4H?$$(gU~ z$K-y-jk7j}leOVQh*VrKCigKM#)96ikhD)L<}GiKdtpI0%FB4H1s+b4vm^oiYsQ$l~v%TOsCPTq|e z5^rTUs(|N26hpl*{5(I=5sXzQWGEC42yR7+tpNdkj@80Om11Eqxm~49F38NAgwrAZVJgLvN-%B53!>TfAIzeJ}PL z4K8{+^@-AKGc{8+2)&v5gqm%WH$mb4`eBV@nn9W#(+6ARjb5&;eo&A9(jn{5sOcv8 z9vTupwsci{L=Eqg+u^=}`kh9jpAOadRO!Oq)CJuZsW;Z2QPZT{Mv?bB$^2(EELj@c zrgQ0SCW_mZB)OHs)Z40T5nh&CC|`%=%jN~+np8-A07Q{ugDe=}8<+2*tVWi|pho4c z1)W`h?~>e1=?pCC*A$SuCRA+xOz>C$hI}W>D}(&Q+4K^e{JcI2ST3?ErtTY zCxYXFrvq}}cK`eRv*P<|@ACbp@72Eh>%LR_aGhLN=d9YVzgefiItA7#uug$>3RIl} zO3+kRT9MS+nW~acXMaW2`Ux5fu=$k|G?mqYde#gcu4z-Ecm7ko$|IXhU)E|XDUyh5~?9b4p>r##U4Mb$d-p{dKz@ zYjaT4XJ->=q@&>8HHTE`HBkjjHn#QG3l758Q>W2r`)Mq~Ue7~`j^zYY+{+|lGf7EZ z;bq@aG{E4X8{MNro_7f{z(L403z)doB3KLInD&BM^|sju#soL}nmXJcDqiktUy!?J z8f(=z@pPx3E4M`rX`ql`q7l9;F%t~F8Zi-!VcGaL*8i&9a2Pd=z@3l`8i5v&;hVt` zZ1g!@cvtpDu(|AR9#M4iPAJ^EQ}5o4h((J8+bTm9Z;_q?Rg1V6t%z89%7n7|wWqj0 zP*NN%CJ56Q%QZ9D+B3MmxX^3J`=tx^mORY zLf1kQq2}OEg42Pg0=xY0^hbT)^S#x#x$cR&{k2ck9uPkxPC)Jd2W$ShX3_IgPu9~Z z{6JXZ|CN6pzlHlG0JHx&FGHDVjMGhISt4CBFHBdD(RMtEjh8<}yLC|DyFM*LjcD+Z z*T?OzVk{H-paO=jVSG@A8qs)h#auP+t&n7>1`UT~S2~L^l~%t=nH?WsP)0_(!9@ez zoupe;$GRt09+9CkG`M`ni@AKu#8{$}_qq(FqPqY+P?qjg(fr4fDHc1Z%G@&zx~RX=S2tC;8PLFBcgReeK-QqU0E z7MoQ{L$W$0HeIm)-bT=fns!C8YtC{qREmas&W@(>bX9nn4SF+~O52gvJM#Jo2Pqj> zWGEqx2^!{zzA7O$53qjrS25%1z^agxWQM)g`s%I>L+$ zwWx8-H!~;Yh75(OF(<__no`xEwS*I=byZnP$`u)^R(CYY<7zM`Iy3PuSS;(S;zk9z zNGzv08AYw%oA2@-+1G~{rgMAG$Q~K$S7RPj(ZQG9fijYEvNF`U1`6!5-iC`5P#3*! zB5)#q)OaJPU5#*+CQ#EjJ{LbPL$zx>-1Wp6D^D*IrzHpHVfi>6UHjrXPbWLbTG0$x z0ot7$*X79)Pp)!DS=z}pB10kV&iZqP6M-d#8V(*Ev%RfoRECn;#ZE7KAZ+_6r`M4} zr&rPMZBH-#tK!#$LXANv-wmJb}8} z$Q!WYq+r6yG$mnCe&-fs|5#5KYmr3!3WTLP@B^rX3`P7xcvzd7OZ&Ry{Lt^{E1UKLLk__P~uV=!+fl zKG?vG<9YT!GnTy9^l^{87s68-M@(-Ed`KS+$zy=ALBnX@Q5B^2mcEsn@K?i+32zR!h29<7 zQTut1C-{b7B=D&J-^8ESp7%fBzt#5v-_g2H);(aa?5{svr+`}&P%gDjB~q@HM(9Ie zbR6)U;^a%a2fY_y5peF`mhmdX4z) zXp~)Tr~$?(6}!9p#Ie+*Em_pr_63hb+h;>P}@@e$wp2$j>!?C42?}2f@Itq-K?_$_Uy(Wm{0clt61*bRT zd#oGR_r+!$IT6E20cgcze_vfYc z2j*H+!JPYJY&ELV1~aHi@6S6SDjGCMPZ9d4e5H7&v_nH{YV27VIvV%)4~wH%o&f6K z-}H-$7atPwZYcq9n=gbiahS5gQyear;$EVZ5jB_jH{rpZUyzfj4JK@F3%I6)P}yY$ zRv;7U`GAoEfU!$Oqo>R~Q3rg75}Re$V|6JOhpsI}t?87Gg8OSFHp_^^hAU~`I&MST z*erxfd~ksB|An_>{C`9EP2qItyP*eyw+Fr(_?y6s0_OtT{O|Se@qOGkRria!*VgT< z{c7#?+E(!c;(70{y}##eta-fVWKC~P!1J`{A3SgJJl8YpIpDd^BM4svkn2C|6mXXU zn^!l07leyWpx?Tc886}f`K%Z}TsojFXzM zUHBxg3ANa`DnfE)L%)(GXlkT9Q?Pjn8^t}DTG10~vu(8o6BfrPnQ9X9z>tb+r|e?0 z<-2$#i@X0a$&wIxZXgXFu!Pb`_RYCyh<1e%q1JA+3)S-Tj1a ze>Zq@msa5>tF4W4RE5F%WAP-r)C<6uU4`4Kx*Fvnyr`1JvQ&&Q+N}d|9(wM;-ZN)c z;f^W@5@@fEaqYYeH&KBKyirQbFQ^yv6J*fI~8fT}Rfup-&7#}NVy6L<$Jg4>@@+CMm8w`<8MrX4*V(LEmB6UTN zSTuJTO<+4(sFmU0 zp$FvdVAjR(xIOg$ zZ>T%ZMPlJkg@+*ae<1k5;Gw|R0y9wa?`8g8-;=&n-4CI``p-HA)+w+~fprS3Q(&C} z>l7%70&)bSK9(F~Uo-h+}p9HeT1lRLPZz+AQp#xZ}&{cZ17Nba0Sm*{EE$qCd3aC{swa zz~{aLDe({qAXK^1G53BbJpsWJfTxOeo4F4>jCYp}35irr%A{gRHWA>pAP0fTk*fI) z3wcwcdT1|2hjd2=^FZ(Ersxpvc_|Ss*gRzdsY&6g{;jTvvh&VIMzuP|S_=Af4sw8m z45Aw_bVrn1mqko<0_rAm*1G-b04+utTb)U7GgVw?;=WJ<)-pFi30S`i1!Evs zBmwlbi>J5YrA|7cF=hpULHs6*$(W{Ut4Gfik6bw{KLb0n43xL)jH)PC61k%E2$kcq xBKo<%D6LP%xD+P}MO~`@%l#EpV8k4VB6L!>zIF^cc1#N!(3-9x34;6Y{|}#5_zD03 literal 81920 zcmeHw33yy*b?CiUnmdwai{mJYP!!uy9NTeh&5U*%W8~2i;YG4#%kl2<=t`PsG$YT9 zWGjgsuGsq8LQ7dnX-XGpDYSG;Ukk6iKnoOFc%`(I7FxE~QlPYy@+g!puRZ7d_rKfR zJDM4diPe`Z_)I(%bx&a|2aiGS58V70|sBxgiff@&D9H?=i z#(^3KY8;04ct^OCovwL?@r$@H{xGoDV&WwJRXo=wb+;e)!^so}xX!`siC7(01p zc>CCiq2b53vsT;3Pi!}}+`c;EXvuGhEuAh>-r=;{l#~ zL!U*?Zw>uh=)0kR3VkE=mCzSMpY@$=`qQR&Hr;4C)cC!|_cRVP{6WLK_xs*gdH2a5 zmlLwr^DfV5{nzVn)$gc#uI{Y#*V1dG4)ML>Md9y+wA(;Fxl0yeZE7T)$&X}~($g^| zozKQoL&>a?$Y-)E!|Cbal(GO%hto?7xz6*+#o=r=lifd;Ur2Ry<_<)ftt#b_d70|>!RJ|qk6ZE6oaj-85C47r~}7>q^2 zG$_E3OuBn0o{vu@27z(cI%Hu_o7zSVA5-GfN_IU6Bi&X&j8zYsST&N0&*m!bkj5$k zLa?(tWMQC9-OD;^OrGOPelBC3Z~C~pO*r$&N1Xw({%kk(=XiWJnOJXs2nfMWZKH|2 zV__+kPaavxD`V-rGOJ{1rC88Be!l4H>C@iBBzA}*p*)Y*yn^mH;kTM?27 zl|g2UBZdH6XYs}RWnovFx`lAzfvmW&hWLfg)mIrOY_x77z$T)$vt56)mYKlX5#)~f;%{!QnFo9%g~-rC9f4-$^&|fac!Mx zU|iS3;yvs*B%G!r^_a4(q$)-pjX1(1?p@p}3mvdVsKp4)@rv<87#;?Npr`Mag`PHb zmmNRO#EQ{GwVlN{G!Pu&%Wf(8RME%A^;FSYj7N)|Dv#ae5eC}N4k-zPpuyB^CY#L9 zElgxH`Ai~{;=gm9&h3bZp^!)DX`eKWdl5KJtq4kg&?D?=AB|A)h}u8m_Xut61A}nWPA)6F75|;<)Lu~Ar+u=})vAsz zrSW18&39|R5A0z_zVl}e*ULVRZ$O7tct;u>?bG02$sZj#uQoKv!oF5j$t)`A-3iW` zLfm@aiD(Dx1A2>zZUiAL$`3Us)V2BxOKHN2Dw?%0g?a8k>gGZg)Z7b?5}o zjfhCMwcSKFLMueQa&$y(X@Cv5eN}|(dv;|opU)<*E#;LQuzOL-=JknT8r$+vM|y0K zbCK{+GJ)6Ccy?uKWil4&g;Pz@Q6E*{>Eh_J;)Tm{ySg`(OwUh%=uhO$;sK} zD>CrAUF}Hbjv=CIb-S0ro4mICga>xecC|B^(

    =VTnXcPyyG4dRb_0SGVOrY^fTO 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%0Aeki zizWE>ts4!jO#(2)1DgDiLouut>^D2-yOi?Ou9*wKR#H2H3-&V! z6ohe;^vo>#Uj4Q*`k2()Q!BqvXFd)p!Z`* zzTrXyH^ruGa7?5bhXkIapC%TQaj}t8PX2q|nmi4u?#C1lMg4rUkP*2Dr_?+6N$5!o z^+}B6egSQ58xd)ZB|B`A&geVtG}Id9tJ?g1j{HP5mbYygEAlex2^_Z{HPmim%AaC< z9Ed$>UxXRV2cFDCT&)PNlIEhlWvuw!nspwwGJS+Ma{sQi7(i#iKn`OFT&!oy+~W~| ze9Vva<)<-^ECuycM05GIKiz5>4`s~tx~;n)2Zt|~fZ@n*#<5UNGllk^9BDPvncpjg z#_qP#D#;1L$uq4uwZBm!1jV!C!a|U7v#aVX?_7J{t}4MhBs4Q;pXKfVxwn9tVlgm{ zJhT7%f)NFfkgFOR23Z)?d?eKTx5UOI{}n64IM_fU^j&{13dA{eFkvlQ31DXcGzDj6 zNXrob2_cSv?2mAAWR@@@SRc}aAt5A3_FoA7*GBul5TcHQgb;NcB!tq0r{EyTE>m#V zR^;!dbC3|CM*m+45<+mL!~yTM_Yit_Hw70+9XFXK%ybebZ$vf&J)Uhl;15`RJ^Cq8 z);&OhdFOfRZ~$zm=p;;8BXR8#a0-%njABcd&iGxME1HkF%3nDD5yO11RCFgfIl=Q(I?@qVT(^vu&@NpGrS-3kD%imk69?EoRGY2 zNVa#|q)Deg<>0$We$&7}-$(tMk&E{H3}e08wAJ z)oOhg{hw90yy@dL!eR3o!KcGHE^nwje*3YeEL<7G`mCEdHJh-kkkJk-KZ8#U_ zmMD6+Y~+uqdN$)7kzC(w6EXb7&!w?*o^rk&>82iyzxHSMEx$hlS) zZMh7O&W>UR4hj+?C$t{&KI*gv#L%Rf4Z9%)eI!N1@=}I~Mj}(EV8-<_fZ(eUs=*BopvL#EhRIoJz2K5K0 z#L-oD?qdM)!ADI0?lDVfDyAj`SgIK6^InEV#ucHdB505-l<%6row&ZDB^Fk&@dH7E zy0VC9G$rf;^H#(pMS_kMT|#|axG;7_#xV7O$BL|l;20hjeQaKz?f3izNvLW8B$i$J zPmUeX*9pXV-(gmf3Axwn^H1rL=i!B1LK}VsihoMK8gS2+xR?^nHB_RYpf}euTEh8E z=Z~N0G{?%IW)5sCjj?44B?{~ zM8Zg>fEkwNkxNlbqGcIFO5K^S?WsR5P)@ex#tKivQ}s;`Nk}ORW>Be_jF_7ZU!Eq1 zlBv@Pg2C;$fYRU{Ncuuegp%RRuQL4j=#*KA`=x$PM*$5=&qq9^BuM27KOV)S27V{t zhNhbbP@%We-;(tQy|(2$Vfv-^fJ*_-l-Q>eJjX>oUm5viwRD)5`$3W~HBuaMs6Qll zXqX_Y5~Et~6_{5jlQmzwc=I##wtU=?JFX&Vu_H{HJ`^c1Lw-!Xcr5&QzL#rqrt`-| zX;^SsXuk?*$jPJ44aXDo7Mj@!HiAscc?Hu9?`nfT$Yn~B773WBCg=!mk+sE94S%m` zno|DUP-|H>Vrx?8L%c4149?R!W1v&=PSUp|XNtKzI=6@M)~ z$Ne;^10e2TNU=_ciAOuR@b_t76e@C9`S)4>ScpX86{6|tgXP`CcPyr^rKm7bj)e$* ze8*Cfe3hK7d1S-aU4qB)D>EiIu`uv6ZysI){@TDt#zAatD7w2&f6EmxIIo1#fkMqaglq{s6AEd$h! zE3X7cU(B4^yNKnrAj|i7Z=U{%F1m( z*x=&OXJVb5AsC(SWh6*CD{K$pYY0ZZk0d-kR{`^%VKUYy}i`t?gzRB^g zn63n!S-;A_29I5*v2*6HR;l3hwoB&D2A^CfQNNh4}WC!D?cy69}i`b<-UdIJ1;>lRw2Roa%3IHP%O5LUUc_eFl(QjXtbp7ge(+ElGHoY`4TYl8r zw$fb&cUu@-aMyEvMp>W>*W!&GHK&{ZXCwDglDxgLj1WD!@sB&!TC2x`qc=J6RBI0P zXUi9LPMzC!a(ZtNmt9A%qV(s~Dn-dI_wEEkJu#rP^TZu9*AIp^f@Cn=eS?wwUunao zFKvZO61n7KW7ce;!j!soCN>r#6GT}?(<81YnVokPeZ06Z^eEAmZN@GiPK^o1GKid| z7$O|08x{uwaW~j+b#U4;tPkt&$3)E{Dczv8&!s-l{jD=U<*nhi{yAOiS5EpNAX(2g zJe*$qRk*l(r+bfAX?#?xlH+6|c=UE%StLVCQMG0$Jcq6Aj7D_IJeH{8f%e4xgN;d~ zk=sc#C3*4XiZQW;zNHst({FA|0Z4YW?%9!c{29jx?R%WDlXQ-XcBIBvdSY(4D>&0U6bwomV zV&wRImD#Dj=d1psH?mdq(6tUy>mcpM63!v7? zD4t&52T>4~RaXF`1J|(FIT=?`sf%6PTaxQZHq)ikbJ}}J+*b+@S@bdX(U5~nEipvf zsOr)_-bYQZtoYsFb5{sDX`>T$*~gzU>Pg8xVM6OyZG^bt`&jsG8HAAvN@ zwBHD=t4Ff>{~`O+f`#ct#HnKO1U^s#VX=o0v_IYk&Hq2NU;d8vn@hUooJ9227%-lq(-LSRfnU!i=a{a9==hg@hPyQ z)g`rMB!@N`toO711{SOS4r!9qRUz77qM^W8bcUiQ)a<8#qT@;tI>1vLhySSROr$st zUF?HcDgZ^dvrr8+zt#n-_DOgiSFs;j^^PgaEn^4S4=O2HQBk;Gs{(+i`1Da#JHD2R z8v^Fh)IX#6X4lXmm0KZ~kqKxY+|g+MN_)Mj@AL7er>`(XAN|>Oht<4CY4?*#nr*JE z`WoIXe##JUaRZT{lj38S2Hz$8*$nT8uYOja3AR_}LYpl6?XxZ)+F6`-pv39tz(X^j6EqavoMG%TX zJls|p$|C`y&o|A~8{{slaQN2hp;Uus6!epiVMazZZq~GlQTA7`s3xpkn%4L-;?O22 z8hbA=Y=SNRc(^SLmy%Ex0s-s{4A)H|FjJ=$eqH2@NK)3YGnoDy4|)Iww=4rbTrF*p zbItPquHeZnDycXyN#eO8$DgIL8;#pf0<)`X;W5~Q5ar?J>6c+cU*LMJCOhz+kamF( zyLZO;Y(cRLe{&a+co3bh^ji!SMoivth)`BslmgSCKx6~t68tSXy4lMa-!EbMblh)> zl@UqSI{GJhI>GDX_WZCVJY6uDDgmAf4crIq;C@QZ8h5*CslbVdropQ)9hm9K-lYLx2xN?5;11J z>d3=&SHfqpC9)6@l&^n1qk{GF;pK|3nYW(rO`zd!_8%;I zj;faSFQ-N6GEO$sMeF2r966pZvxQ9Bg~)lHu$2P*rc>@h0N5wq7QKnwjTd;C|$7cEwaRXcnO@y40Lw(bw3KCvxgxiZ$yYb-^<^4YRnbKhZ&PrRq@FYH>AX*LAMpj zbfvj++UEQN)$%l(TncBO5 z$_@zW=8&8YE}2`}O>7zm5hLux5bepa`vrHiaMo4N7eDcpYr1DslsSE8`r}~nic0=Z zt1)`H=pyG&>td91%%CV6zB6ka>F;H>zR6(sjiS!9+%nLxCTKVAq)1R!fOAZf- zMy}{9Z>nbv`9~C1l2Ld`Mz=Vve2rXIc1QJZ;?1L*M}@?aVw%v=YbZ^$N&t$rBtuyX zTeWP`GIi0XiO~#z!stkTse1l$sZ~d59WnAC8#K^t1wZ<-ZLQZZx8*io{ta$$wyeiowMYK*T|-|~H$cdKDx5M_+)f7r&xY)ex(@C=FLmc8pY&o?bfC||7*=)~#b zXI+rQ;Y_;DcS##|@g6r+o9P?u^6!ehLUnJ}qfQrpb1&c-8|L4mo;YymEppr!)q&Vn zO>HzBo4C@pDg%e^zr=k0dKX2uWTak;;*R!N0YRnOq;M;zU20d^DBz6}v*1T8b$Zm^ z>UcJ0LQDqu@;)j%?A%7UQpvps)-gMt_qOdqGv^uk=xDFTLhEprB?EV#5+1Jmkx;()?$Fi-S`*BXg$ z+@^bKV1#oG;j)r_R6Yk_D?9dD)kHMR1M(WP1Mr2-0sSl8mS4a#{5f8;!Is}0aM=I9 zGKmcOS``U4)Bjpm`QI&3)|l-F{;#VZ;fMb$0-ka5+o1n**Y$c#{xGUpVbDIuOc_LO z==U?3R(xXFgW|^XYvLkDk-3DjS|5Ybe`)XudD(&SBr4s?6NR-xX(Jzz?ruuIt=$G- z?aQ*^J82@OI+GyijY+mH*>yOC8;;uvBbqPCVVz zEf(3&2!$3Ggqg0_Z|CJH$g|U2hsf#cKwN$PrG(9t2-wELo@^+r+32uHtl7Nm*sR%sjU?|? zI$2_5)@*{M7<|PrXdGO24A_wrHi=Kgb~5O!*UJT?DE@0KGF91i@u+ZjXu%dsP+Csfic@>fo#5Ro>m-84+#^2`ZMyw#EY@o zmC^0qX&1fOr7TYD{?~1;y5C-d)F%w|%OP!{Q8Ym!3#>t>kfr5LCDp=UjPRL!$waw< z>ofDIAt}iTAl0~*{oG&7p@EbS0Z}<0fSZ;MLAL(F3tOJB(quQm;JsR4B;dO<xDB>^0&d_ZG{EVf{wwd*z(G2S zYzMx#0>|GiXS<%R&58bddA=dwKMRPdNGsug?vOK>fjkBict(*?mwRLSAC~l2{HS;& zo#r@lEgNfIwcl_4Cf1Ij_Ut%W3DecFZcwSv4(tiNkv-`%)_j7?2x2Fm3^jhOMjcUg z)t1N8(AA2;jF+7fEn^&E)u#8az+uNaG9^wT{xtUW?W6E?{SXo;r#b^ z$xuXw3Ukp%)BZB1sxW5_z0CMgWR3U~>4I|ps<|v^ObpU^Df@%Jfr=cheM**>bAM7k zAQhAq>`-}j?v5U3CMyG~hvLz8@X$*n!}=DsqS>fd=+Z5jCN=!I`WE3i^T^$icxp_Y z!c8W)StQ#yUH&BgUN%Q0MVFK*67nz^4Z0`RoTV&}$7b}%&X_eUq)-)Ss9m`_XvoWqQI>i1VZ|iLBnIg;ZCa(j z_CCs%Sx^m^ZBQa~c;$%^x@SMzuy!xiK>rRwMab9rTx&gphiL>iDWG)HN?g*WF)s*rhm)NG{rx zVjAv;Le%%fl3Q^vWJ2aI0~9+ZHA7OS#@1||-!Rz+se5mKCfV4XbRVq`)EzP-mmeG) zNFMCuIholp@UpV9;)X}}8&lp!V3-9=_{vBB{w*_xT__Rgn~0e6Le>J2`hT_HlQzV(Vnb{Shshx06_MbhOUrPOT}lj`Jh!XY)E= zyp(*tTMSLYv$IZ3x@1$nuPwH9lq1DCmWcl&U+3gzz{7fDtR1L+%Wt`W9V zN%WznEryN$u%4+MJt?E6RuML}Zn8G!cP4-6)bkUK-P|RZFf06%m67a#U#qTgJCH9>kmB>K6|4xX#U+l!YZmO8fvd$h~L$=y`L)QbXF zL4KgnP2p3lQqTYq;{d;SI{C9z0|3-}EMgq)mX35ry7)4m%Eh45sLNsaun2q_j|A46 z^zT*a_^F$YcP1%-_owozTJBP&qlI*?ZY6g4c4_EQGk^>Po3vmr@CCo~xn7p`{WNmt zYtP-oTR+-_7YH&Tr8np}?SsdI7{=cb8oUTSSAiB{su*Yh_2*aV1zBr2%bpW#+x@$M zLME-7<-NL|3Fjf_DqS~Y(;Ynh+c~|^Sa}BT^_0mMr)A_tpZoIV#0O#lP{vUW`=;-` z-oe|B@1&mKb8g;6`wro#(D>kb^5)o246gC)pTui?eGq!t6RQa-%Mwfl?B^EQNo9F2 zTH8JMU#4m>lPkq_U`%UMq_jX6b zfV-vZ$&9D-0ryTr8RN59@Xx_A^^H4&QNPY~pSR4{>BvR#i6<}^co?IT!pxWJcbm~x z)pB7nmd;q|7|8XaF`^tkEpd=<9%t#7HVBUC!#XO)0v{nhlJ;3lZmjQM^?c_&ERq7J zZ@%p3Ad)=JSNYv>Z9Yu^UjE@3y!7C`T@TY7#nW`Y>?!!X>?jDm-YWQACrS!l#{t9uo{i9#$A0WyNQf(Y@k~EL!az9YJAu3vo>219A z#GN=THI2WTo|8bUC4*$8=iK}|la7GGPy~*J!Al;Zy6lDSbKkBnn!(LWTNY@<1mLof z<)h?bx<@LzdA~G3dO=q8vip<>_SsE&Aby;R$pRl;MmKHV({SlJ-E;X>-;9k`d4U%f zeZPXHJWrT)83E4Lr!$fAm1{Lthcgr)|WP3u0xNW72BaeA)SPV-tveNzQ_$e8S` zTrDG4^4KG{{2MN!#EW_94zY-6Gw|95f*t-jKco6sYP^i#h!JwFHyR&YhSV+WZCtLp z>($&8aK)~_rr{8}t@#|SH+6tkMpAE0``OIR^jdtFMWS1F{xvMV_&i!`WIPmZYClvE zZg4d2+{bQwbD9{qnfPM2-fVT3Lc(A#o8f%XO%Fb)qdcha1S<$CyRepxJmy zTAiH?{0>x?z^irotpD6MX&@!na?`X>0bV;usUUiq@YqdLJ6OM;)~V`z zD@CgWFJuXwOcA&FfhwZ2+O{YspB}I#mp!Hx1aIw0aW2j8r!;((9k0vA3~ z{I1(av9GsO@ojy~`6RwJgWDSGkC(@4LJB^h#M%DXj{91f$tMsPw0IqS5<21cls503 zT*2>pzf9<7u^dCM(P1?Yx}%@abG}Owv(B|A=J8I6(^XosS*~rYH01;ygrc=yNF-jg z+;=yk*=f>@NtkA{6kb?dr&DH8J zp@^uA2hhRVLwNi_*3B-m;NxMiz0TbL^SXW~wd32seCXtc$1=jty|ko*Og`1lqpi!b z34O zomd9I@?+|Cu+-b}dGZbzLHCIxRsD<=64GMj|z ztS;gsDPz^Ciw2o>g*OXV+A6%N?MvCTw8TUP<8*nrzHgCTvGMr3h zHlUpY;BM#Doi*gCydSE;f0D^(&~&q-a}GR=u6j)wWnSaFU15Lld%4JT*MG}9F#sLM zM`!uo)X+3#bi7TtzZ`@ztzFNa(QDZ7pOogH>>yTcHkz%EEZVK%3b>pPXk;`PAL^y5 z+4~(ta%OP*9ZjK{kE`hg*nSY&7yvjEm%r8Pg2N>-9S0wolVWIC-jM(8tb!&Bwza`O zVoWJ&iaXyD|Ac*SxXXIf1#}EJBL_MRE_q80%q1l$2x$$}ZbLx^nX4(o)^m&AW zJhe%iTmR34jF|Hb>HM^cb^M2OD=+)VhV)cbu1K!7gz4KyQyV8^V>VI7Fge-piF`%5 z@#0oaJ`@Rm>>3?R*4pZ}JM@^>+PA6fpVG}n)!X$9nx7u|fSxbQTsA(&Zz>k3`&CbO z5Ap(@-HnI~K9{}L>Oy~-Pv!>woKK2k1aEfGIxlWvFP@v2H(kyrvh=QELeGf=!Bi<7 zH^D_fP`CHF=3UwiDR?(4>){#TdCDi`?K1z|=?PwR28IbZQ$O!ifhD|7Ex`Ay;MRi> zQvLfY06%B_MdKo=PDAJQES`V^wVUbq5}v_R8=4*{00sCkxBqghA@tH8zWLk)@HB3? zo?Cue2fu7rQPW=#QwV`hs@fk06nri^-G$t*dxW0ndwHDL@ZQUV+@k*^r)duS4%V0W;Ti%kzXD-U}!*y!Qg=dtjUO)KO*s zHej&n&FemUHtE}&m-3s-hx4hFFUxDA&5z|q^7-aM8um_dy`Wnq+sVepJWlM*RuZ%^Z>V3`EfoaE(MQn0{6H8uS`d;i#ELXBML$% z!#A6b7x^#i58zpQ-<>A_sN1*7^R;f$?|~0|`?rV_{FZ_yISC2{FoL%v0V$6=7nRSe z2c6d^n;!dotDW~~i-LC<7jK8w2BZAWvk$1u{Oqm|(Xr}T;eL197weZpV!+M=wFmx- zq1cVrz{!s1;VeJElaP;MZLOLeoReO_ZTBl3wsfErbp z6F`6u{}Fgz!w-!E>J=C$kp7gO&T9!d9o z4ac_KnV6Gg;>pCe?MyVWZA@(2w#|uc+qU`i%>Dbn*ZZaWoH}doQ&)FY?Oj!Cuj2_` zzTN~A_zES~FnQ+WPrS?y5}l$OFL`Qqio9h0wteq4KnxKOE-?~q}_QH zdK0J~!|-P3p+CO^UxuRVqWsiL-NPRI;to#QiLJBWVKaJx7<#Zl40l1#)6l^mzoJR- z-5s2|w#fzK0ZLxS8m0ce_iH(}mvRR=eaYcLdq%ArP|(PlZk|n>f4$-&yvZgVDE-yN zi(~-+REU!Fg184NJ6oF<~Iv@#(!B{Pn?f9*BjVzHa4h2scVYl}KLG2nC{=C4`Z=pruqx`3(e%wnpzu0S|TqxDP6?ejkm>mgu=k z*Ok9{9Ul_39iORU7aQFWQ%nL)J=y+HFBM}bKt!ojTf0ip5~jJY@^KyJ~6%;@(NjM~r$mtMUqgkar!Z~n&* z{Wz3EwLp6sI+;-c4uhQF0KdxzmB*luze9>Cp?LiST}rJ2lWLm}wtZ@$3K3o+A0wro z;1QJUE&!|_rtSI#nK&Q{hA9t|y4v?C7}1y+l7%B1D1-@g4Tdr)v%jS~7rgr_ zog?}~xPlrsaQl2kdGGiY;0C1i0oCG;o=pAbN3lp)T!}o>AHwCut)6}S&jb?5s8#ng zO-sTx)a#Y^8=17b2B?Hi@K~1fyha)C&v%tSM^R~NkC`=&ybE@Y^94U?C8`2GRR0o; zbsI*4E|OlgB{d(*7I;<`Ud`t7vu`0Y7>+#dg$~R9kE4G8HuVT37~gdO3C4FF*_V)> z3`g$#oA56>K!UL+!+!+h|F+ToBN%rk0SU&PNkD?}i_X;JUxM)?kYN1RbRI}B?!^Ar z0uqcLfdu2fy}tzGzwV|U{W_B-Uv%Ew0u>j-9QZIy-6y@F@gM5`td7nv`^DR?*GmSL8#6kQUNsC#KKf3H_17uNR`D=3dgRf;Kg150{h)isVpH15uRbPT&dNefV6oHUc6Sl)_Vh0dj}f0!C}k|Z5eq95dkBkxse z7;x`8H&k~zf!uus9BU_G$D=Dh(^Tj&RGDtV-dohw>&|{1Z?)c2B1y#Pej*_R6|*0} z-b_w{I38UxQFAu}MTK~6cpnH;lQNHUZ2R`s8`&BF-V=k>V#f>XajmRV)Y#uqj9C>z zi&wDZlhqE(owk%>UfQB1Ph|;pfYQY@SWv@Y`6dqTU2pyx!8;wWz(c>_tK0mO9A~V( zpBwwZzZ)BHy+07EK%cZ9I^et*SojO|lq0rmNElt8grc{&*44BZsID|^eUEO^JkVKx zZ3Om|tBp_Lp??YM*^iy5xAoM!-|L0)G^6M-eL$bKL^h!I$+neGr+#Wu>nO)5FVCJ( zFz$o5TG1&Ov2l^aGS`>ugLl5tDJWe_5?^Z<6X{i}v3n=D*^_C&s5eUth|KfB2W*Sb z$~OwA&>HeVU885nXer?ZeY-;C z)fow0^zdak98;wh!Ze1TLq5uJ9ikv-P=!}-WHwPzIux!EG6?uC659(Q+%-Q58=BX^ zVA(AWW&`|jkT`5BEGL2?rR~-k%9&>2p^UX|^|+vHt`*sOsg&4wQ_6zDJfT)$B&Nw3 z(3DjI1!(s`TT!~E3l?UQ*s8aLJH0HseEXN|j2u2a4Svat18X`wGsox9knBj+^R!yB zAfBFh>h$*q@+A3bEt+7Zh0><_NRp?InjZ8-{xsbcAo943R_U%wNawR;3bA#6suwhXpKk`%$RXc&_F2qL>X-xkH`^8Y}>mQ ztIpYjj~EyVkz}N0gh@3<=U#LTG~@#Rq=;udF+vxC^~5@T`>6vacAfI1VAMA7&6UYs zs|0JgzCdFqc?!?^J8c-j0R|*%++yOa3|wHT7>06XFdhu7h+ck+Lp`O0J^VUA3Mb8wdY{MVb}0EN8WSY$KqDzxFjJAv@97`sW)OK z^n4dFug?9a#WuC(4`5xi?)TJ4Az*G1qXevr?)qC7{W&%g^pf@W0`xv~iZ{k;6sS)bb)lj+QL>dj#Vu@hZz^4tQd_=1P1> zvf;<@x6b6A7Xr+MVxgtg)L{bLQ0^Ue3RSW4c2o>BB*P&qU=acVp=$1=Jc9A=y`UgUw{*aBj^p`7N4J8G5$D^+E_3hO4#%4MrziAX3Nx_HD`eBJVkP- zOxabmk8|vUr2Bvlb~G?(H}~*>ysv!pN~iBGKZkQ5DjRQK!$=Ms-#pD;^qW7yt$QtZPR~maXjicHQ$pP% zfhocZsK0o3Hjr%)oEy}qcw!|^_f(T(YN$C16F3>Q_X1Uo<62_4zRWn{8Bi>EYwRaWC;`!g8w}^#~wixm8d32NGF;H1Z=a0R9TC@c*|B zaYm)?A_w}k<18Ecv}iYgi0)4B)dKfUuR{aoujxZQQ4Tcx-xg5t^iI!QG#l7k0<{_W z>kfzon${7OdkX8t{OVm{W;boE{(axbNM#pj_}n97AE7pYGlvsAPHxabOovCk;lbEv z;8~z6{L{mI4KO<&YPE-9Uw_W?+BcJ)s`{2|$STpLia;;hV&R4;ro|K6{3Jk8R~}DK zleAF^uaScdv6{B?V2bz!Yp+aQOS0RFi3OO2$2JVz=T}el)NYYci*$jg^Lkw+`+EqLAONq)& zhbE4}!wuIItI>7Ou+D2$ioFxvLK!xep0xVm&49=RZ`v5JS?R&%j+`w129ZQ-)os>M zX;5?J=?>xU={6>-e69vSR6YgMGGk@VCAMq%LW&7^2%(vT>D=gj^ZDKYV>P$s>W{t# zla&aly3RUVRZrv16MidFqQSK7^A63A3;x6y8dQ9vEW1H{8wMU4gm1%UM3$mnX4Bay z53u@KC=Vr+`dJ$PD;((asP#m-g=NZGX@Y0UYIoG_^AH%L{NKlo(suAOM)7g*^W5qT zdmEtv&zA#q10JB!qGu8LeSaQhNUKg=`%sh0 z<6h{{y$!3?O0ubHHa+EHz8ek_mosXZl@HuRt?x z(gxl%5|gbl(^ykN(dT=9&@67=GK2mbZg;nA7^-*f3x3QnohAJB(w-7at}w;yi~j#| z7VqpK7a^3obf?=sT_}VbT>nx8@p{`v1^U`$*@VTDDF=_*+Mz%I9UM(R#c!dPowVE$ z%+<7<>Hl&StY@jN-xQ-(Q#!)vdF@BxrQHI?bT%sj1L&Y;ee80hoUc)*Sb@@3gRD%n z8ia@!%kA~POq@2|!NI|Zne5%Ds2u~Jb@C<}Kk}5{x=d*f!atLwicmipf}@I_yp8us z-~Og5TyI&+-&Z0(7TY<$JOTVZzdY&6`hBuqx(KRV+*t>|o4gV~01Q5Xg6;;NuBV;B z??Fr6|NA&B=|z17O7^0@R{fLD==%^n*mj+gq74Y^`&4Q7M!c>eCW|%QGt*4mUZNNSH>b&sjGWD4E<{e^}5F1gKvX5FzITn z5<{2XC##8GF9XK>Mb%{d!DsDb{;4JY;>V?8wCPvGWYW;PSQb5EuSi06 ztGecz+5CcJuO%^o9g5i6^5C<&&AKrJD0rj6oc(6M)nGNKx=ha1bfZJYn<(0m+DRNq zp6pr}*xOR8`A z78UG#B9*vO!)c+(?U&h@o$*2&-&KT5FN=pJh=ygTuQqi?6d^BnYrP>xZr8lWeZ*TI zJmoWiW+JW<(26&Oxj)?Vf3V~c1YbVqWtrok8)AWS#^h6~f6?zjsTn1|Yy8c#@X?yf z(BL_n^dopv<3$1TFwTgV&eN4KtqM@lOXgZLkk`N+ooErr&Zj&Q6z!=t9gD9RGHw>7 z^TX=_VGlF?DKud2K}_I=&(pnRup=tcO$qhPss0gFw7Tr$J=6OV@3ZP?tFA5LbobNq zp&A^y?)vk4*2byQ^{3U&CRhLGD4iE3MD<(QDj@_TIEghO>=ivo8631)Ab5E%XlIg* zk9E!KM}E+dsz{A$<~Qrqb5S@zk}+|Cf0 z+q$aLEo=7nR(iR{_8Tq2nBK~|j;$wj&;61jVI3ZMMkIGFEG+vVChL`6F@YWSjD|C) z`lAD#N#SSg<}yRhVqr)m@C@{-A1 z7l4SC5IhSTe>`zev5Ue`wQOWBmWr!H!mr%7*d@wljjr3=@Zft}(otJVWD zpVdVJ(~t3&X9CjeuISJxPcl=QvWLRrsRn-q5B4|F-8Mz~gQ!HhSqDIkBMWllR}< zqbi!6x=EBHJ3m@9dwa4%f?{iikQQBG?nB_2foAXR#-sj|ZhtB3B4y;P_;~I6EI4#qyQO^cSPd?^?BRy*#6;#_8(oJ_|rIp;2#^4T4f6jCaztjo4aT$G0$_Li1}^T4VZ zX-=Y_!XXc0Ax;7>^o9Hh)L=>Pq*K}M*K}GsUl(2}`S&q5aUfg0^!6EOU+SD+m~|7E zItp5B_rLqRDdJME-NDX8(%Xc=DjF4b0}q3Ml3QE~3b)1=+k>u~xDbHUgMONJ@$G){a6!1c(0btMtRbQI@}Q6aonQo<8C)*G>5#dXxg6(!(OP!J zotQ3AV>6n>R+RZtOuLd$#dVQ}rf%^HvZ(I4|4feSYHlunG+Bj~^|1jyDj0C4(CNyZN1$yjjfV0nX~jwdw-r;5+tV~^ISu4nQDF9C*_;Rn<^{kn@0?ujqkUw zX?&#;uQ~;uRWqGkN%fc3D{kI1ySuc4NF{cimq(@vx9{MOwIk0u`yN$xovNIhW$Bm7 z6OZ^unhCd_ydAGcP6`RP9skC=hC53efS|6|HD%7t#}JPHpvY@=G>5Nk57qxb-c_e+ z|L4kEmKO*)j-xqr2TnuEHv)A0uMPCqd6<4#X!y#Tc(qQjGMIRt@uCwZ)p_v3ayip> z(~58@LWKvnIc%xqy772=w;z*snp?PCsk*k);Vhr`LZ5aGb5Nn^ z+k}&4h2U1C*4g);Onl#R_+5v>BW{ZIzQ4~?M{R80f$L^J?jo_F^3BQtf*UfdD(F?6vSxb6h?Us>cq*ox4izn1B z!y@I3*ai7RJ7fV$O1s>0h;z|DVJMLX0y0=g*~sfc{V;gfDIsH`J=1;-cF>p-C%yYm zA;m{LIynd=tdpHHx@Yken-21TkKf=@9hdP9h($?X^RWV)RI(zw*{lETu9%?)4Kq?J zV22|g$;LeBRXl%Zs)fjCrVxZXt*%5&y8Web>ZXHQ4m{Q4^oGwJ%3xJ6S*qdi)F2Vx ze!jhOUw>|Vd)vg{`Se_|;yuII`D_5F{1?9lKg)VQmA5}DVLu;N^FEb(KH<2l{QiDh z5kKi-zA|W@0!SOhF<&pW-PQX)$_zf0Yd%Ytyp_+oXdX5Z?Y+bS(crS6xL}K*$|%j;hf2M^xf{ng`&- zz&6mIJ95qEhqK_PXI~6(hpu!nAFaE*%(Kj+Uz77bI{K+flf5q|qt0DjZFrZ~^NbMi zy+gRXRoa{{_4h?pUZwByLrC|U$xuaue+^l`F zwRm%9oH1>e&3zDgL8yOnL-Tx7r~H8EDDb{AVch1p9CcAgO;{lc89@r}9M3NZy&5#) zW&Gue(uK6k5t;`uDKTv>imquZ?SuupEwnv%(~e2uj!nV-1~b^gG+dsKLupRBFhG_< zfpZuFW-Jv)m3p*9DF3a@Z~UgnJy*Ex%O_i09*q$2py)oSeZ?N8OV$0M>B*{H&hVH+ z$9&obtE_$u^KFs_?N)~@MYugbTXNI|_4U-BO1&TkPvBVE%q!ysI)M7odEgPp^i`RuLohpAT9sJ!IXFjqC6LZC6 zsz*Hl3?3um{g>qlgX}K30!}mHpe>nM&vUB?e9vC+reAj)2zsYhFU*#vLunPvl>1Dp z5ixMbbKNnibAisMp5r+uvSNq#Xwilq`TgybHv*dL%n6TM^kCZq{mkKjcVhY&AbZDE5&oN5B&?ZGr zZG{cZ+{wO?cYCFkNEs<~8}ZgBN|$nER&=ISWr@G$&g+n+6S8gwC!W8^|BYl>+zJ3K z#FB{;?I#gDWSIb-7MAj5AH4oQ&odk!{B8cBZ@{qP<<$FTNg)8p`of>!^;6Vc`6c3H z^YZnv@|kzcht}F`7x9^w$MY#WWAgJl`!;*z)ArwWK1l10=2i4rwTbIB2qLm+;@y^> zQ8|UT6!Roo)6U8?UV&C^liCT7KeK}C{z0F*xyx?6+Rc&wbMn|4`G2l< zAMb#W7@m?FFD2kKVEJ16@5TSxK!5HNuQ@3%K>9VnO$(qo5p|m)i@>h)`F5Gg;CgL- z>op``E%qL>phEt(RQ0%Og0|9mSx@cR-Sj~P`o+<4fB<)XVpSWYBBBW9)p?G)r3r@iZk^O3 zwu4@S%WBN}tZ?*FhKsgXMwU?F_?(#~%M|+Tv+QJ8iCuX5fE|lu+RIeQH;&3bc*X6P z9|VyTOxK6wEOzOxksUL|^Q|T!J_hEK#1uB0Dl`g#2V1p(_|Uh&=x$`<;IF# z5}UmA%iOU$VWGM0fY93bxc0RA^vRt?_@jC>nfMXX0Ot=w)+*_r&9(1=U0RD&PHi(f zL!kuMlnVC6Zj-7^N?K|C*uf+Nz0}+|Y~k3cHkL&EpwyS!=xvk=cCaczPoy&EH{!Jf zo`Ui$S?}m^eV^x!%)1WWF*NT24*hNa=MZ;A@c>cD0I6aOsx-a<4w4Ts#?i_1n+uLecVN!rbO|D>M zxUSqb7JZ9fm1`0Ep;2+5zhmwW?sz2lfyK&cQYN)hDpiIFT6P}cgILE^JO@Ac)jd*% zqZ!%RV|PtQL2cLqnDy)VU9Cki7EN^uv8k_1rw|*uTl18PtrLl7q|c^ub7e^(ad47w zzUo&B-EBX)8t*3N)Un zOdE%#^F2GyCZMZcOAGO}Kt-vzQIw`0NRU&oyW85WtE!x#xG=4fNGtyAF#qVX5F0vO zZRYvh{1f!}{qg4clgIt(SHkBd#YczY2XDudGF129gcFJnk;pm&{0b37*$A|}7DPoI zWK$BWoBgbv_jvm{p(jDr6~x)0egyo<*Ij)dwEPA{#TBS_>Z455O@q7zjQb ztoN@Cgs#~W@d++H0Y)KA!_R(>LN=>S2pSr1-Bf}2y-GouE~plOuT^<39^&osbO!h= zK6XgJK4tn1e^otQc`^9PU30cR3`)rC)Pj3;>;*j~u5`Ng*?u!y`cCnpun#iEVe-X@ z(IEynJMh{fDSKfH5#-k~&}k}}vxA?_Y>lJ%JR16O#z_@d>yb5cXAG7`YxNBuS}yZT zD2oNXC{()Eg2SB#0)|>l-b&}N{IFH?cz%h*SKtjRO76sL2(QLDy(g54lYMUF^5Y%9 zu-V5UI!r8EzQh+(kJiO>!uBvLrjXJZXkbiE7UCv$F)X{`E<~Bb+<+*d0SG?m3)gOl z4rwH-3BDHkKZqwi)5L5A6*5CTZ5nGR7NG9|pRz2x1(G}RO zT2y$$G?I1yx6 zie?27WO=mr1r}mV%atar`!lS9Y#K_c$5l*z;IX^(l7s$Ix9ssgk6`Zhu=8rIw>kd( zRjgA}z-7_1wfnuhLcD{VPaERAx9k>l95o1^ye$>$1fk_rUUT^R?)f@o?@w|cEU+50 zvmpYW?I2v(!%fPXogS}b@3)`Bo!ZXBx?5@wKn=i0Zy6)+Jk-)A@@~b~OwU}VLv?`) zw53TM_iu@z((CZq2X3pjv%k~J3{4kjNhaLdA<$UD7|evyEhHliaI-QfCBN0Sh#8~C zw}5zP+&XTVj~;*By??e-@mEQ&ko2~MA0R^Z^$#y^J^AXrxeIXSmQf+$x>4n^G1c)V zCSkCsu=y>7pxPb&`$Gd^+s?KVFAP;nF8lB@$ly%dQg|mq^Yl54wN)(yy&3nl?2^HF zGU-;hT}wAqkq)9c3407pkzuv+j2Fpk1#cqz#!%Y2(cpmaV}@6UFpKy7F>1yC zfWrB6cw1~NXQ{`*(S{0ZW7~I~H}cJ27aD1b$W~=T4TSpx6`Y?J%6QnRQQKlUtr6=8 zTZ(_M3P)ot#0Pfkhuv)f7iO6Y+H8SQi1-iuia{&Q@{P7qWL%%zJ+MHyq13p-j*qN7E6{tr3}wrUxl_2fw1s?_u1OgJ6TT zh{<`xm-19@I1+)0p0jwD#`e`@tMT6B@CBF1^<0FM1J2!3W6Oro<`ul$3+tSqK&N`V zu(}aO1nuiujv6SQoj&QGC^dT1ldZ_FdLbG^u;V0APU-DzD}7&j40_i@Nw5T$?%YUT z&wGr)x!lei^-fO*&5kH_I%Ww;;NTB##m^=c0yxcB&d{ynODyPU&DjX$yQ}lYpXw&C`6!Wq(zvj5>;~P000NHnJ=3-RP>`mZ$l6^g$w>cq5=fJ?r;TC&qF#Z) z8}2+eL*E4}-jja?PnHkNggqh#6yAV#Lb++)AMnBBWzaXkZ}{eEYnGX$&e>aAa_#rE z^01BG=o(kq3V%b_k}8uH4HR^l<+7#4!g+WoKD|&DYP8v!8(r);{(>? zd~k!N0ED+6b}k8x^*TBvpId2ZUDL%`jJJFF+i9d{_H@dMaVnQRv&AZ!Jn?&rX}uUU4hHw zg4&$?vR;!l+@B!MFj4IY>R?ZS{@5#1{UEc%pwjSZ!+c7nUh96i)vxN`h96=0*-e8H zz4^?MBNk7VvPM3 zzJFk=&p0a{#fq#3Cdg;0gDv-KV2db`m21F6^wVsNeW2tLAyNN&^0XPmJ+tloD-*FS zw2Lq@W48Y>pG?y=gqqnK#etFcD1%c|KYBP|0L*)%vg5Q%p&CZdN79pU4s>i8#`RcY z93_k-$R6*IgU3G*YU={I)%DGg!BQGDJ=0)HK))i`o^2c3l^ZYw9YqF_IF9;dD?zzm|gH_gbMPtMisd&FHheYhBUJMyO`Yjmw2#Z z-`|4~B2qu_x#xrFChS`dI%!yZUg2B{cp|K&OlM8yS%cI3bI8qD(5zVOTJeU05caI! z_#EXgxNvO!atB?}S_nbaJ{_s&NYW^I>G{aYyAXqO0SH1{&%KX8RsC?>D;B3C@oS+v zt({D8W}Q7l&*eHFSG62NDK1@Ke<}C1-pW4?c)VhG*G?Fdomis0Lv*$_0XswdLERQ%8S1W(2jmGbeQIPoLg}F)$)PF9@Yx0i)G7w_6Wrzr zZ!f20jj7OPFa5NFb2opY&;7)S<^ zw0adj5#+j040(txKa?!gI)<#*uDYQMjwt>DNq1mZYkDC5rw2Encdh&gPHcQ1%II?6 zqjp6uvrRg_{7nxG5FSSrYLaFM`DDTjdf_3MVvQZ=0`8w-In{@f@ta-25yCR?3XI}N zbMgcL=;~bL;n4vA7^0#~1_%H6l6T(HwH*@u=~{q-(;`4%d)Lj@Yx4y0et+oxrLp6F z$t4X@0WYbB?G2UeeW5-$=vnq`IooQkIewX%2(CQ*`mwIdvpo07b>tf9F=KzZ^h>d8 z>oUXFezB#Fv+;%@lHSAK!ZLf~GDpXR)SQ#&H_zuE@R@S_A3TkguT84w7B|)w&=h)% zOKRhXa<|$hvwn7iOZ87Zf?~#GdYWBwx~WP%3^%*Jd1n3$&+n9s@}$W{*yMms%s22V z-NcT@SJClL1J$j8X<_d%jC&>dqwX!F@KdYFbaJ!TtOM*%n?Bj+0X-*PUproR)yd4} z6ld>5MFeYr_w7-C*qJ5{P$xpZKrK-31&BQWFco#mr^nKv#fySwcGw;eAMWWW>g`T}$ z6BU)$HenIhTjKHMa@!HzhfkIsG$5f{Ol~j+pS|~!opD0eFh-p~v}~|kd^8HNY}d$X zR;S-24K+MOG#-hO3#!?79hZ~)q;;C9?eN~)x6_-Xtr_$42B}6hUQV7Q6VVA6h-zRb z7EhnYp7$70KY!cp?!qwe@^_pvsQMpV&tIQh*m@sSO|RcR?Z~|anZMSpi%Nmc8US>= zb$uY8K~B)Twg?~e)q+TTXqWs4gGf=KaEJ2Vp;qZ{kbnD^MLs!5<{eqO1Xn+rLcsLO zZzb4iWX^jb&fRa#1|eU1mp&2gt@!Z6$lp6*+$ZNYO{Lvmsv%@Oh99K&baj~f zWlhA>{`g#!JKO2pg=$IU<@Twwx*WUpF7=H;wxf%w>84aT`+?A-%}(gy;@4)o>Wh|i zc7X>Wc!c|bwtUBhqIzjkfv+wtwZxDy_*R63tJS7n3whT0;~(G}@~x>xNWL_dO{uWB zP%LeHn=O@JqFpGi>`BhBcUZqwJ59mML836sGp!nhR zLj2+)Q!JSzWeFjhE&$hEE$SvIX#oX&vv+Z#kz~4TH)T0tg5?yv37oqVUE&2aP?ZqX6o_o4t}rWt3@_;UEbO5aU3NF>tjz`{K$g*2t6f| zO#h67Jf`l7a^`Y7u;3t0fari})UdD&C%pQCJ9eyYPFN+@TCl9^DtSqO(*c6Rtq~{k z2b-{yQAxK4N&B}w>!S!2`?92t2qETNV=T;*FA+;NtP~0iA5|6$-5{bynTI~8rY+0(8S0z=X_8|=u>9_gc_@Oo zs;rW}R3dN;t?xO*Zzkl7F^rWz#~0^PowH5$bo^9I$>vFh!BD3 zfLx|Ldaan}z^$}|7V73nAatoYk&I^JM3PES{qz7C`wnyP;)#|YJ5i1a2CFfM)@MO0 zp`$Ltp3&j9F500X4_`ttqJjs;d*H0A3eF4BXG6HkQdV$nMYBs{|5TzQ8C@i^d#w zh-f`&NTPJ)YaaFYw{v!3{q(s|uS~4h$izA$+L!Jo6VLaXRqI;Q#fm(*D2<54(nPc# zUJ+K09QsGhF~v2oFZ0k$80d25@94MS!7o3-cXmAv-5$om`qyaNQQ)h1>VK*Qi-1oa zihxkV|G+eVmcPTa89lX*oyVh}cIy{41!GEi^?5~%n8Lu^xsTk9v|$F%%#+P_x?N~I zs3Y9W#Y>z55iNQ^15cC^_AaI>fF|Iu;pMz3&;{oi#2f9_H(AG+VKZpQl7x6kJ~y+3 zAIi0;93snpqS|g*DlI(Upp-h_(bf{kt0^-XMmQkc9<4)=oaFi-{AHN#swO%2Q}T&E z*3ML_rKL^u$sQWtZ%5inXvpF`xz*M9L@y46-RA2_i?2a{_h|f&hRIR9(`D2Xw-ask^ze5b<1}gI;8125Uvd}+ z$AVE6!-{Axi>63($&)J4<{)Drott7VVi$%Si|)r^q)}m@N1~x>;MvZosQ3NIqoPc@ z0vl#O+1T1E3Dny!gti<*6ai2(@n{0YCd3Nm zi#BBgGI*(PM~I!D>{31-5&~vkSTpp=6aH#D$&**eVUW}m!?zt&@XIaIsltHrf?{da z?)`CwUh&$i3y{uahTuw?eQIv5y&zH3`miY2EDR3IGV8f}cn^-L;=E~&-Q@;3eamJ4|%E#z+t2KYy1II{^Ci5H~p|1enV7+k>aXYV#DO2sWOL%b? zrFRZ|#nUNa5I(ImM{R+UBV!nJDHx%x*79AV(6wZ{T@WTnr#Q8)GrI0~_%I)ybyXi$ zzQ|D|OVo!KL7M=bL$xbzZ<=w!C;JS(>+C8eEuL9Qw6k!WMEm4Z%(_zV5SbY zipEy+3)WIF{*?$j7d|#E1_+5TxXheXg>_m(HJ>}g>F3Dyou%#ZBs(o4k)52ZbNm`A z!mpw+D-bH$+SaNa)K!cYieR4HN_bM}eoPJ{QrT5@N^I-7vh<9_LvJ>HM38Z9yJeK` z>G3oDd~Q{nK01`4BU`n2ke#dsk4Q7bDG4*_KEv~SF?5^Guf5GMA2xTRbY7NZRar|m z-`Q1eNZ(y2p(5Y9i2*-Z1H-^w7**3n(K)%fKiB=Hwei1Dh&ly~7HPM+I{YK?ZA$c1 zsgHC9xzFD-dOk2ZzfUbrwKcwGqv~^K)E2C;_J2_)$aa)$^&u`vKBXSe*#vC0c<_z% zzn~oO;mb}fIXvbB3AW>EZ_a=HMZvEm-yqh($A0%_MN^H>$ZC}_saA((P?FuQ1eA_P z`&o~8*A9V5nrqA)h-iwo3G22yVo+6m8`65w%vbeuFvHgcmx@l!>qz3ezEZ{&px#b` zcbcQ2n$D=Y=sA}p9bkAfkM-D zqXzDQN%6O33kj63U>5m~O@u)ulqMJ7F@) zksf6{TxF{irc2B4rOBApGjrxv9jyEhyiz&FJU-N@%qorzY&TLc@Ak_ur-n3mPy<>~ zW?wAB!cbIpvA}O|CwyFV4}I_B;1Gi&eu@+1m>kO1X+Z7*Oj5Ae^OP;ZdoF`zop=Tr z$Rag@K&WKBWvIL;IP){w`K=@Z^N-OPFCE02N#*Ojk@cf_>TOKAA*nwCp$xA31cSxplR)d9-$g7BvcK<}&b zlQQhsEm%H=`{l(E8GqCY-o5VNpR*YGV-(+yLHpWgR}Syt;N4tBWeRE-o6@mlCYLz^ zIMg6ap}w&Eaj7#X)GC;44bIHDoufG4e;BhiiAL!7xf^59_4Sn}gY4Hki>rFF2-pL| z3J6qatr18nu)=6Z-$lG@&sG~&176W6*tTvt-Yjo~MP30IV(R-Ft7YvpRg#gUUTVG@ zUXiIck^X@Vvy9j!f^*`~wwkKjrP#3x1Ki0CW44}nBD+I1bq#6yw6c{fVY&oHny*Xi zrZPnOz}E9HZ8BjL5D!Vet77s088DW5`l35JaJFWQZtkL_%*v&tKKs2|OQ{7M19Lj` zhB5X5ibx-IXHek^s&ZZ675nzN2mB7CHs2BXUTB;Wtx;@3yb6ZszLgpk$0veYycvL- zCt@8eip)KlZJ`3&$U7Q}CCNgt;W$99qQm`*<>Y7ngo(vOHplNkd)8@%?!L4;Z18xl z!H(ez`bM(0N%2g_3g=dPYtTBDwCMXHWa$a~h%vE7w=h9c`zqd(3|yggZu9N2*?W*E zeU*v%66Xb8=m3*l_c_rXY8Y{D~3lPOl5n5N@dYb}E1UnjBL+ep&kNZTldd^Ijg>RExuzSw`# zV`B|pyiJ8>pbkD61&RtRVFQ`V+hR`1DousMFmr07aFJc2(a{myEPc01>LzU<$K+3c z@*KHEalESy^AoZ_UB32W`}F(yGOmuOAFO!kTrf_Wc+M7PLc|gl)y6zJlRs~7)5VU# zL>UXdtL?tJ#&5-(AK2CPH*)vXOb*N|lwE0uK<+O=0eAM_>*JTUZ z@JS$ZD*v9rgm*p#1!8o2u%*ve!S~8V+aLJud^<(}CuW|=mWhG)^8kCP(NK3kG zjozcp}XU}r8tU61zEd}7!1T}blxa;nV zhlaMH4b%wZiRai|=hH$J8JVxLQpxx(1BmRa5D|a!avbTUJkjZrU`oFnJz=wfv**VW zTVk6lA~EDFUO??3AFbQJy>ZqfZ~EVPt{-Nwd+<;rknh$V9(Ot+BSlXimzw2DvF0^Z z7A}W(!i<=I8HIz~A`WwbYR>uF%(%X^-TfK_v)X0FIg-{j-Q{<=!+b`16Sx%szDz|Tg2{$DlVf>l!!12c^My>-U z+FihgD?(m6RguA*y?d@{^i^5>=;*P+Gu6%VQR$Sst-C$io)iX5Ub3tXgLGGG*%1Zh ze965BYV~Ij3kg$-bd(V*Q|XU)lD2VuJy4L+TXci_Of zW`oilL@r!kQOEO)yG0J(bZ}i1w9*Z}V`9?eO~reIG?{Ot+{=7F01)=|ZH@Ioa&baD-~8t*>o;nXIPA zv#<;!z*ZK9MxF-`jW043GieTiMR_4-(z34fU_C=%_{X)KKpseSL0yB$&vK(xrcz7k(3+4~#|H3S?4B$o(Nzs#t-~stRn_*6ik*y4{f^Op^|){WF0(wkTA~1`5@<0(lhv?86Ml%>`Ngr z{?B`Z<3Mf@R`;dbbxyH;nJQiz(F@!Z7jS2*JW2Y503+V(t=)p;o(NA88-wfq66aXR z0L6GhN}oKLUm{8GxLP?+E)-Q1NYB()*T^>;9=?ct1w|{yWSX0?r(D~t9R6Iz#rWt& ze+G0Zk4!&)PoASQs2m;>E+C^FY@iYmdEBE{&sp=mA{QzW$nXDc;a5Wv*?Ji{Q9G zTd1RKWAa;;AW-Gh?zS8tekBR}0x8eM3?ee8Kq=s<&`Sy?`b3!1E7T?62Llq(2x6ID zY3HtHOh4!XMohs4_pU8!N<6HZ2qng>Ox%2D_h|q@{$s8(?-9iZF_V^qdMsmP=R!z_ zW0l|8CEfuYckBySw-C~lFI0}Vk7psD8KH`g_VA4qQpAj%)w2>>mc$KIR&V0YaYTnP z^Dx9M<7$L*8}2&R*`Ga_Zl5;(B(dpw3J%UA4jMV1{OW2HhqE|>wOtzbYFO>j6}+0L zcx#06d-)ktt$byQU;_w;*etXCS}zHR`DGc*#Zpt|d&a=hMRnk78+xWUvB)bWwkWMW zYH$BiVW=RAR(zc@G$L$u# zFz6zp^cmPPr*jy)tADPG7N$N4?Tca49Eg-ike1kPvFMtsteUZd#{nUA;lZ&BXiF; zOox;7Fg@#GOB58lYJ_<3%3>{{r_-+dPjGkJr*wqiNWoeg-m_?8>h4Dnuv~pKQ>9~2KsB9uSI7p>$CxnO& zw0_=I6rn}L>dZyLmpubP4uEOy0DniOL>P|gdS^UDruRJCU88F#pabgnTEEq72XF~lzQfstX$@BH}=B{{H!^=DQQ8Qv~g-4K>X z85Km$fHg%M(u#5_fz3q{t;d!q*XaNfV$&=)Z-XT)eMp+sGy%o9#~w(j71!Ij_mE2L zFz>pPH6N#)U{TaT>kZ@PqI%%+%U$CHR-09F_1!ADbS{)<8krdFS~wZ-E7z^m=v?;f zn?j#B^j2X7I0#I=-OJ55n(gkghKmeqxX84I1MD4a(ZFv?d)`}75Xi;STcvhT@=+hS z9}X(HSZY1cRMIjipAt2AN^xFS%A$+{I{p0ZH?RrdAzi{FZOpjRmt<$SR*ewS$>2C( zR}O#qf}%oT?1;nOk==8@I6ge?9BnW*#4C8+>i^>Y`M7`F5`(*+9HuIa3pKBRhB5)B z0)3(~ZDEYBjOmBLAlFs&H-R=5XeqHJG87c-I!o%w^6u%!#duiM!B^S>RaeQ(vWmEd z0YlR#nu)lsWf=5KhNc8cbmX2>}MS60428E*&GlSTFs!-3F|f#9w!@# zRBT|l%G=$Nl}ZmJeiua2Y!PT&4k9QUMAqqsHUmmKY($~D5i3%l#wby^CO-Dge)v?XhFPOC*q?{ zPwhFh#tDfMDfWvBtGiz2u1OYou8*<)q(N87?B-g#ka3PV&_>6hK$4~BE7yM5b|}tj z*^y6OmMmISH5w^LgH!M7UMNq=Et@637MEu9uU|Qa44?=5i~jM&@lS*1k<XmEEU zni{?V7 zU&Us~`s{FJ;8im?J)WtFk*862S!^am=ORdB%oE(X?esVR5d`m)XwXGXHBMMJ@3w>y zg0!VU2X(xo-iWPUq#bmB2jgk$IsP@)o=VqII0sd~VV6lp8{NGTMs@5yjUVOn~U_|Ddb@11(Y z5qLFs>#FStSk^bA0iv5mW?Lg2L4#lY)HvKVvZDm4uwl`ZXDs0#I&`ub5-(N2VG$j1 zYB7{fRZX@AmEHDZvIwSf5~E zWtb-XHQm=wal}_zbuRIM&lunSinOohJOM;e>~W-aA^^Pc807l^TFnM028p+bzn{{; zuyHr#Shhm?N@ijiBTY=uEqe|eHyyv6r1ejjprSd&G@j0vmyN~*2rC->;L#vP`$i(G zEH*>{ueumHT*mlD1OEO{ot#aOkW7&GCd)7QUtklJp7RiMGcUc z2|^vg&S02nG)~dDlTxLO6`6L)!c=uUWi!x216@ggfia?e3v?&ZW-pWg#f!uVGJqzf zN4GtU?N*W_XN(L41C$OzUSdtI3~g~(ijs$7j3*_)lQ?7Tiirwv3^^SiVUJ@x!J@0- z!2v2xxi@(ZP;(TfGG|QOPTiK#C)EK#-i9+BiE>BfHstD-7EHX*V@5h#xFm^CeY_Qu zxycOZdJ$vUzNxq|c`<)pkDFlkr_yuj|oPW1v$rsm>D&w!JJh4DR=>WxSeCUZGMu zn$O_JKt>ofER1W69#G{i%SP5f;D;3MQdmPD(Dxg@J0Tli`ffH~C&Nn%iRgTU4$Zl5 z)n@~oR10Id5QUArtJT_HmrYp+=x=i2U#?2tVFb2WY;4FDcGoV<>UwMvToqwb7fVsQ znoT3(UOAePhm9jID_x_ogI<}yQO11?@H(&y&5kI1TUo-du1vm^)`tS}Gyxpj)0eix zgAQAA!Q`Ov9v1?6be?(=WpFtFQlT^LLDNFWvj)^I;lePjl@siZIF*O)62=Dcb_vOw@KP;58iY4s?89#R^* zFlRaR0A~dK&M*D|zEg++p4_8*L<}H=(}WnDObSz_Qx*3jw|vKD%R|4^4yPbrYR2&J zm7F+H*B^_R&J8cdahat!nn4y4OHgJ*Ef16G0XVwd@DjU7*p#Omh&5_DWo=k7-x64Dd0 z{ADT>qpx1(_B3;=Ro$p%$jt>lN~goTQ#%OzaEdw1cms`!8wg9FjTj9;2Zzg#1nUqZ zV{=H>@@vY`$Qm`TWS>m=RlZxkf~*wD>m+C$L7)8OCu^de3To#JUkTmsnuYPb~eCblwF{+-Ee_pmQudq^ZuHyB}WE#)U*S7o!kNe~Y6hgO- zl{OlgN{`w=Rlm;6-lgcH^B_$Xa9g8MEW;k4q7l`Bxu>>8wOOb#fS2>(P(MK--<0y7 z!LGh6#@@6qWvty?{LLrde=B{yzM1>0WjzxzPRL>eu1r`6!Z)gD{}eC zE-V9ZDNOS5VEt?4`@i-w$YOW>We}jeSBu?uijS_F@nTtHy4l?CG9LqV$BgGnsTt>> zOPY=N(1l?%@o;Ua zK+!2mFy=HC4`IV*R&cwuwOsMFMjL^%rLp`ylU(K-Iu85>k3^>Ssq)IznefnV4>ssG z;uKi^34HP;(#7xaRQwzN652;OZdzbo*j%|AW===UkgbR!EV4ynSH1Nm#+r*KSZv<4vju}9g68|1`ChKz^A}xmQQR~<{I@pkeMi2 z>Q|hW)49q$K$QT3t&FMalXgWyY*13Vv)xKYkzm#j!+5cN;;;RZz^kaV!dHF6d5)tt zLkD9KNeMB(C1FM;a4*O162WZ@za{;8Y-dwjMr+9uH zN<`vW>*YCNExv7r?zbx7OHUrg{_Vy0-;v_O2pcwS zVbA4Q*{EGf>{~6C=}CE>Iv^SuG|}phCV+x>44_J*=+PNXjF3cq>V05fw@ujdeVhGP5kDLft!Uop%DH+xvQ;v#e;WoL(CWG zt5e7s8kFV?rF@@pk7`PD^1>a4_0wI?zM@AIjb}v876KhPM)Xu)ki*c(;~Ph$1E=i1 zIDax@DBysBR|cd(kKzCX1HpJ^NcNtEZyn4wJQ730o9Ks(F;&U>M$-L3uPMle#+r^% z*6HizAGrFGoUhPfhfEb%|J=g|F8<-MqM)zR>;_H`ZD*zNKC8CTmO+mIdQWg3K{*(z zOSzWK@d-AFfCBhBF!Js>rni!ju0e*b?gyBvflxxP{v2b47Iu#IliJ$os3^bGBN5Me ztmKYF^MeTkX(BOvB*+174taw_Q->wzT*N)2KAIkn({yjQsX)Rreub7hSg(6!p+X~G z*DO4Bx8i9KNAgfq5=pFTP0bi(1m=bwK0mxBin9z1+_ z|KWo+{If_$Ni~-myZNRm81e?syvby9C zGV0-f-l94|a@T*}s!A%GKd&#ep^b@XH>iW&5pJ}hVHn#rX%q{3#yN^SW+6O3WOKWr zajFe4_aA;oM~SOALdvv484JkIsA%Fp>WA#Hh8Hc2r!3lJw5NlJF)`%BA9JrnQlI(| zcEg--9^hn z*-PIsf{T}}clI2+*hKnK+Czp11q^5B@p)W;xQtP+k2&7Szi;>&^ViWQsA5&qNl|I= zu%aGuMoyI>zLzPJG1|dQ?>eSCaOdQ5pa&bp#eO+glv4{kAw{iei%N0(sf`I~wzNYs z_JE3gJ)fVhbOfEuLd0o3+b)_`D_t|n#st`Dg%Q9ex=-5J5l`C4sMxgTw@{Sv-jEKr zM6B#`N91c+$3qm{V08XLN47cEZO7 z)IiH>!4Yb*uR_lDlE*J)OUIqRrw(xo);1*4VP0LFRe}3of&!a|?SSJ_)Ts>xrhbOKv3ucoA;=|2Zc-yV(jg!Kc8_wf7We7&Ae;o=+Aq71~3yVCCh{y|d^Jo*9%nW6;G zQR_*5$6!cx!(J^HteDI-{^>Czx?1Iw=IS6``uUeRi~|Icajzy#>6x^16{C2K;?fwo z#L!XAQ0-$80^cR@xE@;2G2t@II98C&X&s@1?TB&>pOE32o%$B2d}5AkpLl^Nrl(Y4 z0Qd`v?Hp1<0%=^UUEc$W?S&x$dXcNn0Px9Js8>!3198uHPkO2!j+^uX3K@!r0>iEN ziREw=m1IM4N-(!)depyLpCPkGh@Hx%P`^-X`gG}!sD$*fFkFOcwJ#>g?DX*H3-aSS z`r=UjDzB(R|IU$*eo^d9M43puJF4q<(7EUo0KiAh&rjn7IIsnX{8FW3coJ#h<+Qa% zb(vS+k#WUZvo=jZ)oE+Io=#rG%fz2xFqHbv4{;#*?;bv$z&`M-FWi~`3Pwjih$ah@ z2QT2`5Q~$u4**na4jd&-l;D6tGBGp^+!8vZ6hdT}OIif2s|Q?0mlm1n|3W2rJ$el@ zudZ=QXLIVg`kp*yGJVq#A2Y5~xt^dzR`dvyi%4L1r>2H+M_$~iQO1xvYq_}en5Qw{ zhh05VW7WeTJv2^Kkj?022YE$x2wd@LCZkurk`5Xe6*>Z6*|2ZlNy!(OO1`LE$+xu& z%0|M6yA+NkQG-}NPceuvv|2Kw2tpx7{k;L;d8`Um7XCNV-pyz5dnFsy^h4{SvZYIQS8e2(BIKZqp6U$UkAWXW% zL@{H1Y?pW;Am2ni0iGt&J_3}A>^zCkyoN43r66+zP_HF-Z^g7s-EkNjjMTwZI;3e+ zcV&mGlHtM7qkoqNls4kM@r9bJ< z2WVspm7pq+_UZ^WAW|3iq!obZP3q{)W-fMqJ4tnfR}}tfF6J;rRL2?XOCli`(gmsy zOXc#y3ALndoXr_dR`ENWEoF)=z)yf$i9)&y=^x!f3*Q9RdFG9vceuuUMR9EO=pN6{ z0esuy1aZOn0t39zMe0Yn5U1!#S?@p%#iPVt$?4)8pc`X8`&p!1I6SnPP!jD)Pp}SL z68u#yPaH8(Ft1=d`@rLwLmgmmri}J-Lj#7ojd5mXD(-|(E5|z)Cj>BkS01($jSJs; z2TL6rSL&)Mk0q#&uLE_AD7_ofquwM7>60v^ z&%9GAO>vyYls+IAp#Au`Tx75@$hrn(iL)zs)>S9!(tG%D5-$N?b%Rlg^eJ$ zf!BvgzC>s|Q9+Gltjiwf>vaQhX1voYM+Nkq0l+Tjd>?xgj}pmWiu;+2V2#FKa`$za zqHNJDkS84cBGsNk^+y;x+dlIaMw8I{Gp*}7lRF4CX2z$k<$Te`6y|`w7I-dUD96zq z1vbaD#jCjx#p5UR6Gh&6^^&{h#l3s(ePK+2ca~ys^Es@PXWaHmx8d0vx1r04oKV97 z%)PSug*Bo;!Wer-UgB|-GUN#9+$E#J6nNk$P7A1I!Kej2_)gXQqe-#6)cMdu-T@qQ z1UG*j8FJ=3Nn@U@*s}r;Xs+0n?KFd`Hk*ZzE1onLxT`U`qTzqm1sOa0WUeB}0ihmu zF~mAB!8teCON>n-sfC%?c(a+vs<>Ym;$}P35sRSld4Gl>i=g+oz!>A)A5qlh7wb6) zPZ7Y9%w0V@>hu!#RHIrP%FweF*%+rAk=$PT{MjHSEKq{CFu(|(RM51J(Rgl%MzLem zHKlLxOXCQTl8tB>$b7AzvU5T}{$J?%!ZTqzQrM?)EC_AWaOL~wTp9<9I`LEJFTX$- zP}j0O8AKmiWoaVUN!+wBk_bSm2oQi2aD)>?YH-2o7*S+P7c7uL9kwzMTGE+(zM$L) zy26P*6;U&?CDVFhX0s-OdJhbf*S6tZlJPAm+Mu4K3(gMq*)?Z&nn`bQo9VY#TaGbF z9?O2ZL3j^S#jpynh)-nSaUqOb?v_-<@|L_B>*gf8wK7YI6Xeu2+z){*2qfJ5yWsxH zZ-wVe+&r>lLzV+ZX+0o#=;rz(qrzv?X&fb()~T#!8_JkC5PH%RmHN;js$8su*5j+r;r?KTZPK)hwO{9TT8Gj zkTFhlx6;waV7si=YTeM`#=Ot0qwrIhRdc%g)Ki7&46>{b>0p@_5Fu_f64QAb=AENx zquC^BSL#XzR7%de$1xc|U^N~2$V*m6T+LLO=s4|Ud{kDkj4w!$)7ss!^svGZD8m6+ zdYjQSggzjN`9KwakYzALsNNK48TCjyCMU=m$cQKMmCW^*=v;qj@{Se8I*4?vSwI=G z^a{biP15O)w|XVVUj*gFsWJUUAkT8gXpuHTcb3-$V`GE+&_Q%f_cl3kXy~DiJ)jyo zeCWr6?g*%6{-HPW{;dQ{KE5S24Ij(>EBod&zU1eqQiwdV+g_}cBQabms}K3cano1m z31M(cL&PdkRz3*m{DdN|__%aK_@hr|QSa((nF?z=Y!MPT$mlJ%I z!GSf}{Levd!~;ocqefxh;z$-CRums|A8YGm8oyZk(?#tSFeDhkI2>DsF^o{Fh#z_tTJcdEm;5Gh-*SRWkk!OrEAZ67{4bv>rl?v$FQkD18O8{co3MOIO3Imi> zzZi?u_y?wKlEAe5EPwx18!qQlxui9=<@{Ox{;LLPGX9zV{;ReMmvKD%S^oa3ww}wc z-aI_h0wj=Fjk3iWZFh5XKuxRInW#6WUXwkBhN(PfNpX#GCeVbm@MuEFI@8LU7&HS! zBC>ME(>W;-n-AK~0hi)$j8f(UN>54Cq-+0IruLWfMW%AP&()olG43&*OxOsLv^^|7 zP}W7xQ*u=hVzucG66OH8RK|Z;+%c5C=~JM~^^U3Z6&ZzzC3Vx*R-i(+^BB{gMQf)v`BpRX-EEC;f9T}y@^JM)(Ecn<_uebfX!p@uoKCWrdKdR06eKKsaY zNHOqla-EmUEG*wbO+pX@)sD|+yi6w7l6BZh!{adbf;vOwyONndQ71dOCoOKB4yp8a zXkI5)$@F}Z@q(19ywt~DYHAHCghnHzt?)&%dLe6|Tn?F50l#jYZq&<(5q7N7Bp21+ zQt^SlYCEK*u)q%@zBKhiUa7B5FMs-6>SBX)S>|~|Ms@kz+Nt9=A0l-#t~MC6NLoN} zO6k8-j;csWVOhT%6!j?t91meC9D=yr#$<1$_25HKyf(p?@qNwC^=s|IQJsk;B zKQfR_@g>hz3R%dq_x!*O0?EN}o9G>`!HA} zastqA=}B>9XmMWXO-_o&b=3e%Yds9~Kx_8n)zc>;? z92{YX7%p6xrEAeOV1T8?eAp!RU&ZP%kOv`8Vr6l8#~;WW`H6Z()F>a;B&Vqucvl%h z76_&Gf=d>53Vyp`8VNGTN07<77TzUSX4g>^XImcA2uY=pkY*M`EyV-ZrL_&^?&Hcd z1FbvJ5mKDC_{d!zjbk#%>`3K%?}`r4-i9axRh(K5dYKR^QuU$b7Z)HJ-1-k!jO;q4 zHCGQTk)O6eb66OHENw2(3;^Sw^s!8Yg-Uqrjmq{O8b-^Zurebjt7EgTxOy{E_6idV2LHGtfQ!j~~J)rrpU zSYCNz!)5f8ISgZL%&{BB`2B7e`b_2-*0b$$wr{hs$XX}!Fu%Oq(S=Oe$sK6@ zM|p*s3u8$G9geA)<EJDA;+UAa1GW?;wIXRsSHt6$h>xzyAT*lK9zD=Xb@LQB7?j`(X78D2 z$*L(N-BrsSp|N<38E^`Q9zHwd2&1S#XTP@7?Cijmzp2@SP8WTW(#m5DpjjMEsxMOQ`2LKki}XaX!vz{x;w$R>6?${D3U2!)Rt>bMXa zS01pkCJCd+*pY_;M0Jg>e1YZ+CEkG%S%;~z^491Os%7a^2dWKpNP&8kiJELg?v7>L zt*A7}hRrb|e6*P;-DH?Sk!*96y@ox?*`-OIwdfR(!>?$26q0YyR?KH*V!WxTF;)^m z4?0;c(25wBmpJaMG=fhwB2kkQnY<=O)y$o*@oYrKseGha%%;_{n#LDccze<2)`{zLMHbInZKoWiBuQudP zjDIG8={BfWNhYh!Fd2nDq+?4@Cl3P^^x|z?%TAeJ2}oZQYEQn`AoL zu-PzL+hd>o4X_~o)Uh!lygO)efOzNl@aS-qh!d(zzBv@9cuNNUhl!Zr&8G3^-tk4V zdnl&duDc4C$zr{s;1AS_17&CMQZlU=j=tyifAIzz53ZH5c?*lpaTK3yjt`;4iT}#q z#NpI;xJG!rz}FZ=01CA3LVwP9)OWwAqd{{2@smd{A078M2M5ju9}JEMczpyVK7qMh z2Hq8Ck9PYVVST~4p$5c$oh(3Jx}&b{U>2D#4*C6&H4uP{fS~bL!z7+WK<2qjdN&X_ z<6LIyFZeZG3%;EJBw?QCRMhvbrF= zCYa@~^_|%k^y7Zv`}I<`w>&CoRO_pA-X6VvTUeN!W6`HLud#r4p|U@KOE2N>cK zP+{P$f{gP+xn(}=@1O;%Nd5Ns8dek*S30KP1@2P3P~)R(-pKSGXPdql(`}TZtMedt zROMmxQAHn0Jy$T`O0WEtOjzl-x&jJgt>SGz!ZR)UIR99GDD?!Kvy6Bik3u_|A#Z`5 z@5cdrQ5|D^JZD;Za7eGASsxtx&(An`QHQcrwm9C2jDPrKZ!g4y~qCq#G4o8l-X&$lMn^ zjXE@UPpQlLoq?-P8VY&O&02pAN@CS3cmY5{w{;3OZ)l3xX8WsG{se^1Aa(Yo%(UiP zGX&Tp*-#Soc^nKZ_sGnrSu}$k%3+y6JNTK-dzA2thD%q}-Ya>iNxwAGg=FMmq`F?l&Q$SAUHbW#u5EM@ zP`L8SqI({l>F(!c6Q?pVY6`WT2Ej~CvPkO2TtJZW0aAiK9Y$7tuL&m z8Pw_skS87hWZd*zd!1dJ)W34AK#s8}P)rjWqkhlMLwnvwl2enI*+Dwl2f5xma;KkT zPEf!WNVy#{bdO38UYG< zl-5FGKHSIb#AfLr@S61XAzL@4{RF5quxX0P6k`Jj zF~ECss6&+{0Wg=JbbvSg?dN7>%BYyGRhA()rGPu`+`CetZX@R)-Rfw>AA zKg4+Sq>M9g=`e>&6^6-z_s}u6`G|J+7|raFc&E*e`!Qu$R%@(Ige*sAJ{qPbtBeEY z9H?Vf5_(DP{WPaSo9KWFA9v!(=u%>mcccakk<(eHasviIa41#+&J*!`86N>ofE!`f zTngHBg26h7#Zi2iqjhKc$qWFnm(ypV3fRqZFF2Hu=3cPo^r#W<#6*Sn!uFLg73H}c zlBEhy?Zk2MGoDyI;U((o^^R;a|70Cp$(z)&rN@arsiZVrq3|NM3fXC^fHG;iqJl$A zejE6dW{@-D8M}y|l^#O|vRax@v^ZX+vqkzmN?clpX zE`Y*z%gJm0Kpli_9WU2k(qSU*q)f6J>@J@(zGH6-2jIB}`R26()*r5S+AzM4Ml<=? zwoa)dZdO?Id(+eqJB4pljih2^q}2`qGjd^uZ%c#u0TK-<7;IL4Kp9bE-!O-Lk#h#z zil3T1lUYZGQiM)cRbNd1p~mNvhm9Nsn--zJ9ffDV%4e&~4a27(+A0Z`2~K{dH(9b9KW2^IMy`u##N00A@PtIXOjU zG?9(QDEsyreh*6k+o@Sp|2h^GiJ(u$Q>7dzxy6x}PIMG@L);%cNg+>CUQ=S{fGi*& z%S3@eZ05C%z_;5#?))6Z@vo&GvcuVwGKDN7#=*}UF;ajtk+*8djfe1uOe-OKAVmd* z5~U#__mjNL6jnEauSs5lf})`b?9Nzb+HISR3{~%QTL)dz_>>isiOC@AB1(lTfaFOg zmf4K0=H}kypaVh{1&2Dzrd3&xka@P*OfdUb;YfKwp15gnoyN~mwuhS6?T{$opevg$qZ&3D9Bs|-6Xt(-u7g9Fhs=3 z63U2m*C|P$$U=!mEzwclYg(L zRudVuXoj3&#w#2PI!&ROMGQrLTu#W#SYGo>YWPTATEgTWTxo`-o<1VB#Uk#-Qn&)kz-!3~!Zcr=J=p374>GpI~AfeK1Zr!oFe!whT1L z-n01Tap1v!Kum4x3(m_}qraRcz`N7FQ={Ynbj7&~@bVC7oiPnT-u;S#4n4;7+Sz=L zn@#4S+Kf(`#XM+TEP+PbGHMv9h0^Xn4)g>#f`&w{JDE9Q%kONWoT2h;hl zyWZ`1tiU|LHTlhHDc9hY*R2Y@_E)qx;7%Tjud~J( zzt~puMbmQZUVZV}>H7!2{@$zGpkDSd8$%a2bAzkD%Qguq0#5kz?e=f0D3kX zOjG5mw1#Lthv;NPV&Cqw35t|9<>okxGEAq8Hw4u3ukt$J(A#5PJj(t#O=g^BWQaHZ zYraXJ8&B1D-U$0I>rl@k^P5;0Ut#EEEvSroBX`uatgYh~^6IEy3kt9AS}U{I?_ULD zx>>lxI3yT~1k;JZtd1#Uj5(Y2zvrhDA s&S&g21r5TCk{>F)#0&_0>178%&rlsq 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 diff --git a/docs/index.html b/docs/index.html index 62379449..5e364668 100644 --- a/docs/index.html +++ b/docs/index.html @@ -22,7 +22,7 @@ SWCompression Docs - (100% documented) + (86% documented)

    @@ -111,34 +111,22 @@ SevenZipContainer

    - - - - @@ -197,6 +185,39 @@ + + +
    diff --git a/docs/search.json b/docs/search.json index 30217920..b5ca0bdd 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":"

    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 +{"Structs/Permissions.html#/s:13SWCompression11PermissionsV8rawValues6UInt32Vv":{"name":"rawValue","abstract":"

    Raw bit flags value (in decimal).

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

    Initializes permissions with bit flags in decimal.

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

    Set UID.

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

    Set GID.

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

    Sticky bit.

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

    Owner can read.

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

    Owner can write.

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

    Owner can execute.

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

    Group can read.

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

    Group can write.

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

    Group can execute.

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

    Others can read.

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

    Others can write.

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

    Others can execute.

    ","parent_name":"Permissions"},"Structs/ZipEntryInfo.html#/s:13SWCompression12ZipEntryInfoV4nameSSSgv":{"name":"name","abstract":"

    Name of the file or directory.

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

    Size of the data associated with the entry.

    ","parent_name":"ZipEntryInfo"},"Structs/ZipEntryInfo.html#/s:13SWCompression12ZipEntryInfoV4typeAA09ContainerC4TypeOv":{"name":"type","abstract":"

    Undocumented

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

    Undocumented

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

    Undocumented

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

    Undocumented

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

    Undocumented

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

    Undocumented

    ","parent_name":"ZipEntryInfo"},"Structs/ZipEntryInfo.html#/s:13SWCompression12ZipEntryInfoV22externalFileAttributess6UInt32Vv":{"name":"externalFileAttributes","abstract":"

    Undocumented

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

    Undocumented

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

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

    ","parent_name":"ZipEntryInfo"},"Structs/TarEntryInfo.html#/s:13SWCompression12TarEntryInfoV4nameSSSgv":{"name":"name","abstract":"

    Name of the file or directory.

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

    Size of the data associated with the entry.

    ","parent_name":"TarEntryInfo"},"Structs/TarEntryInfo.html#/s:13SWCompression12TarEntryInfoV4typeAA09ContainerC4TypeOv":{"name":"type","abstract":"

    Undocumented

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

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

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

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

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

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

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

    Undocumented

    ","parent_name":"TarEntryInfo"},"Structs/TarEntryInfo.html#/s:13SWCompression12TarEntryInfoV7ownerIDSiSgv":{"name":"ownerID","abstract":"

    Owner’s ID.

    ","parent_name":"TarEntryInfo"},"Structs/TarEntryInfo.html#/s:13SWCompression12TarEntryInfoV7groupIDSiSgv":{"name":"groupID","abstract":"

    Owner’s group ID.

    ","parent_name":"TarEntryInfo"},"Structs/TarEntryInfo.html#/s:13SWCompression12TarEntryInfoV13ownerUserNameSSSgv":{"name":"ownerUserName","abstract":"

    Owner’s user name.

    ","parent_name":"TarEntryInfo"},"Structs/TarEntryInfo.html#/s:13SWCompression12TarEntryInfoV14ownerGroupNameSSSgv":{"name":"ownerGroupName","abstract":"

    Owner’s group name.

    ","parent_name":"TarEntryInfo"},"Structs/TarEntryInfo.html#/s:13SWCompression12TarEntryInfoV17deviceMajorNumberSiSgv":{"name":"deviceMajorNumber","abstract":"

    Undocumented

    ","parent_name":"TarEntryInfo"},"Structs/TarEntryInfo.html#/s:13SWCompression12TarEntryInfoV17deviceMinorNumberSiSgv":{"name":"deviceMinorNumber","abstract":"

    Undocumented

    ","parent_name":"TarEntryInfo"},"Structs/TarEntryInfo.html#/s:13SWCompression12TarEntryInfoV7charsetSSSgv":{"name":"charset","abstract":"

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

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

    Comment associated with the entry (PAX only).

    ","parent_name":"TarEntryInfo"},"Structs/TarEntryInfo.html#/s:13SWCompression12TarEntryInfoV8linkNameSSSgv":{"name":"linkName","abstract":"

    Path to a linked file for symbolic link entry.

    ","parent_name":"TarEntryInfo"},"Structs/DosAttributes.html#/s:13SWCompression13DosAttributesV8rawValues6UInt32Vv":{"name":"rawValue","abstract":"

    Raw bit flags value.

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

    Initializes attributes with bit flags.

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

    File is archive or archived.

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

    File is a directory.

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

    File is a volume.

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

    File is a system file.

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

    File is hidden.

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

    File is read-only.

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

    Represents file attributes in DOS format.

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

    Undocumented

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

    Undocumented

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

    Represents file access permissions in UNIX format.

    "},"Protocols/ContainerEntryInfo.html#/s:13SWCompression18ContainerEntryInfoP4nameSSSgv":{"name":"name","abstract":"

    Undocumented

    ","parent_name":"ContainerEntryInfo"},"Protocols/ContainerEntryInfo.html#/s:13SWCompression18ContainerEntryInfoP4typeAA0bC4TypeOv":{"name":"type","abstract":"

    Undocumented

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

    Undocumented

    ","parent_name":"ContainerEntryInfo"},"Protocols/ContainerEntryInfo.html#/s:13SWCompression18ContainerEntryInfoP10accessTime10Foundation4DateVSgv":{"name":"accessTime","abstract":"

    Undocumented

    ","parent_name":"ContainerEntryInfo"},"Protocols/ContainerEntryInfo.html#/s:13SWCompression18ContainerEntryInfoP12creationTime10Foundation4DateVSgv":{"name":"creationTime","abstract":"

    Undocumented

    ","parent_name":"ContainerEntryInfo"},"Protocols/ContainerEntryInfo.html#/s:13SWCompression18ContainerEntryInfoP16modificationTime10Foundation4DateVSgv":{"name":"modificationTime","abstract":"

    Undocumented

    ","parent_name":"ContainerEntryInfo"},"Protocols/ContainerEntryInfo.html#/s:13SWCompression18ContainerEntryInfoP11permissionsAA11PermissionsVSgv":{"name":"permissions","abstract":"

    Undocumented

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

    Undocumented

    "},"Enums/ContainerEntryType.html#/s:13SWCompression18ContainerEntryTypeO12blockSpecialA2CmF":{"name":"blockSpecial","abstract":"

    Block special file.

    ","parent_name":"ContainerEntryType"},"Enums/ContainerEntryType.html#/s:13SWCompression18ContainerEntryTypeO16characterSpecialA2CmF":{"name":"characterSpecial","abstract":"

    Character special file.

    ","parent_name":"ContainerEntryType"},"Enums/ContainerEntryType.html#/s:13SWCompression18ContainerEntryTypeO10contiguousA2CmF":{"name":"contiguous","abstract":"

    Contiguous file.

    ","parent_name":"ContainerEntryType"},"Enums/ContainerEntryType.html#/s:13SWCompression18ContainerEntryTypeO9directoryA2CmF":{"name":"directory","abstract":"

    Directory.

    ","parent_name":"ContainerEntryType"},"Enums/ContainerEntryType.html#/s:13SWCompression18ContainerEntryTypeO4fifoA2CmF":{"name":"fifo","abstract":"

    FIFO special file.

    ","parent_name":"ContainerEntryType"},"Enums/ContainerEntryType.html#/s:13SWCompression18ContainerEntryTypeO8hardLinkA2CmF":{"name":"hardLink","abstract":"

    Hard link.

    ","parent_name":"ContainerEntryType"},"Enums/ContainerEntryType.html#/s:13SWCompression18ContainerEntryTypeO7regularA2CmF":{"name":"regular","abstract":"

    Regular file.

    ","parent_name":"ContainerEntryType"},"Enums/ContainerEntryType.html#/s:13SWCompression18ContainerEntryTypeO6socketA2CmF":{"name":"socket","abstract":"

    Socket.

    ","parent_name":"ContainerEntryType"},"Enums/ContainerEntryType.html#/s:13SWCompression18ContainerEntryTypeO12symbolicLinkA2CmF":{"name":"symbolicLink","abstract":"

    Symbolic link.

    ","parent_name":"ContainerEntryType"},"Enums/ContainerEntryType.html#/s:13SWCompression18ContainerEntryTypeO7unknownA2CmF":{"name":"unknown","abstract":"

    Entry type is unknown.

    ","parent_name":"ContainerEntryType"},"Enums/ContainerEntryType.html":{"name":"ContainerEntryType","abstract":"

    Undocumented

    "},"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":"

    Compress data with particular algorithm.

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

    Undocumented

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

    Undocumented

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

    Undocumented

    ","parent_name":"Container"},"Protocols/Container.html#/s:13SWCompression9ContainerP4infoSay5Entry_4InfoQZG10Foundation4DataV9container_tKFZ":{"name":"info(container:)","abstract":"

    Undocumented

    ","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":"

    Undocumented

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

    Undocumented

    "},"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: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."},"Structs/ZipEntry.html#/s:13SWCompression8ZipEntryV4infoAA0bC4InfoVv":{"name":"info","abstract":"

    Various information about entry.

    ","parent_name":"ZipEntry"},"Structs/ZipEntry.html#/s:13SWCompression8ZipEntryV4data10Foundation4DataVSgv":{"name":"data","abstract":"

    Undocumented

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

    Processes ZIP container and returns an array of ZipEntry.

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

    Undocumented

    ","parent_name":"ZipContainer"},"Structs/TarEntry.html#/s:13SWCompression8TarEntryV4infoAA0bC4InfoVv":{"name":"info","abstract":"

    Various information about entry.

    ","parent_name":"TarEntry"},"Structs/TarEntry.html#/s:13SWCompression8TarEntryV4data10Foundation4DataVSgv":{"name":"data","abstract":"

    Undocumented

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

    Processes TAR container and returns an array of TarEntry.

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

    Undocumented

    ","parent_name":"TarContainer"},"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:13SWCompression17SevenZipEntryInfoV4typeAA09ContainerD4TypeOv":{"name":"type","abstract":"

    Undocumented

    ","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:13SWCompression17SevenZipEntryInfoV11permissionsAA11PermissionsVSgv":{"name":"permissions","abstract":"

    Entry’s UNIX file access permissions.

    ","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:13SWCompression17SevenZipEntryInfoV13dosAttributesAA03DosG0VSgv":{"name":"dosAttributes","abstract":"

    Entry’s DOS attributes.

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

    True, if entry has a stream (data) inside container. 7-Zip internal propety.

    ","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"},"Structs/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryV4infoAA0bcD4InfoVv":{"name":"info","abstract":"

    Various information about entry.

    ","parent_name":"SevenZipEntry"},"Structs/SevenZipEntry.html#/s:13SWCompression13SevenZipEntryV4data10Foundation4DataVSgv":{"name":"data","abstract":"

    Undocumented

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

    Processes 7-Zip container and returns an array of 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.

    "},"Structs/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.

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

    Represents an entry in 7-Zip container.

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

    Provides open function for ZIP containers.

    "},"Structs/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"},"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"},"Other Enums.html":{"name":"Other Enumerations","abstract":"

    The following enumerations are available globally.

    "},"Other Protocols.html":{"name":"Other Protocols","abstract":"

    The following protocols are available globally.

    "},"Other Structs.html":{"name":"Other Structures","abstract":"

    The following structures are available globally.

    "}} \ No newline at end of file diff --git a/docs/undocumented.json b/docs/undocumented.json index f43c0df0..60d700d2 100644 --- a/docs/undocumented.json +++ b/docs/undocumented.json @@ -1,6 +1,250 @@ { "warnings": [ - + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/7-Zip/7zEntry.swift", + "line": 14, + "symbol": "SevenZipEntry.data", + "symbol_kind": "source.lang.swift.decl.var.instance", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/7-Zip/7zEntryInfo.swift", + "line": 19, + "symbol": "SevenZipEntryInfo.type", + "symbol_kind": "source.lang.swift.decl.var.instance", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/Common/Container/Container.swift", + "line": 8, + "symbol": "Container", + "symbol_kind": "source.lang.swift.decl.protocol", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/Common/Container/Container.swift", + "line": 12, + "symbol": "Container.open(container:)", + "symbol_kind": "source.lang.swift.decl.function.method.static", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/Common/Container/Container.swift", + "line": 14, + "symbol": "Container.info(container:)", + "symbol_kind": "source.lang.swift.decl.function.method.static", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/Common/Container/ContainerEntry.swift", + "line": 8, + "symbol": "ContainerEntry", + "symbol_kind": "source.lang.swift.decl.protocol", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/Common/Container/ContainerEntry.swift", + "line": 12, + "symbol": "ContainerEntry.info", + "symbol_kind": "source.lang.swift.decl.var.instance", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/Common/Container/ContainerEntry.swift", + "line": 14, + "symbol": "ContainerEntry.data", + "symbol_kind": "source.lang.swift.decl.var.instance", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/Common/Container/ContainerEntryInfo.swift", + "line": 8, + "symbol": "ContainerEntryInfo", + "symbol_kind": "source.lang.swift.decl.protocol", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/Common/Container/ContainerEntryInfo.swift", + "line": 10, + "symbol": "ContainerEntryInfo.name", + "symbol_kind": "source.lang.swift.decl.var.instance", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/Common/Container/ContainerEntryInfo.swift", + "line": 12, + "symbol": "ContainerEntryInfo.type", + "symbol_kind": "source.lang.swift.decl.var.instance", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/Common/Container/ContainerEntryInfo.swift", + "line": 14, + "symbol": "ContainerEntryInfo.size", + "symbol_kind": "source.lang.swift.decl.var.instance", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/Common/Container/ContainerEntryInfo.swift", + "line": 16, + "symbol": "ContainerEntryInfo.accessTime", + "symbol_kind": "source.lang.swift.decl.var.instance", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/Common/Container/ContainerEntryInfo.swift", + "line": 18, + "symbol": "ContainerEntryInfo.creationTime", + "symbol_kind": "source.lang.swift.decl.var.instance", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/Common/Container/ContainerEntryInfo.swift", + "line": 20, + "symbol": "ContainerEntryInfo.modificationTime", + "symbol_kind": "source.lang.swift.decl.var.instance", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/Common/Container/ContainerEntryInfo.swift", + "line": 22, + "symbol": "ContainerEntryInfo.permissions", + "symbol_kind": "source.lang.swift.decl.var.instance", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/Common/Container/ContainerEntryType.swift", + "line": 8, + "symbol": "ContainerEntryType", + "symbol_kind": "source.lang.swift.decl.enum", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/TAR/TarContainer.swift", + "line": 39, + "symbol": "TarContainer.info(container:)", + "symbol_kind": "source.lang.swift.decl.function.method.static", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/TAR/TarEntry.swift", + "line": 14, + "symbol": "TarEntry.data", + "symbol_kind": "source.lang.swift.decl.var.instance", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/TAR/TarEntryInfo.swift", + "line": 8, + "symbol": "TarEntryInfo", + "symbol_kind": "source.lang.swift.decl.struct", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/TAR/TarEntryInfo.swift", + "line": 19, + "symbol": "TarEntryInfo.type", + "symbol_kind": "source.lang.swift.decl.var.instance", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/TAR/TarEntryInfo.swift", + "line": 30, + "symbol": "TarEntryInfo.permissions", + "symbol_kind": "source.lang.swift.decl.var.instance", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/TAR/TarEntryInfo.swift", + "line": 46, + "symbol": "TarEntryInfo.deviceMajorNumber", + "symbol_kind": "source.lang.swift.decl.var.instance", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/TAR/TarEntryInfo.swift", + "line": 48, + "symbol": "TarEntryInfo.deviceMinorNumber", + "symbol_kind": "source.lang.swift.decl.var.instance", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/ZIP/ZipContainer.swift", + "line": 114, + "symbol": "ZipContainer.info(container:)", + "symbol_kind": "source.lang.swift.decl.function.method.static", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/ZIP/ZipEntry.swift", + "line": 14, + "symbol": "ZipEntry.data", + "symbol_kind": "source.lang.swift.decl.var.instance", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/ZIP/ZipEntryInfo.swift", + "line": 8, + "symbol": "ZipEntryInfo", + "symbol_kind": "source.lang.swift.decl.struct", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/ZIP/ZipEntryInfo.swift", + "line": 21, + "symbol": "ZipEntryInfo.type", + "symbol_kind": "source.lang.swift.decl.var.instance", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/ZIP/ZipEntryInfo.swift", + "line": 24, + "symbol": "ZipEntryInfo.accessTime", + "symbol_kind": "source.lang.swift.decl.var.instance", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/ZIP/ZipEntryInfo.swift", + "line": 26, + "symbol": "ZipEntryInfo.creationTime", + "symbol_kind": "source.lang.swift.decl.var.instance", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/ZIP/ZipEntryInfo.swift", + "line": 28, + "symbol": "ZipEntryInfo.modificationTime", + "symbol_kind": "source.lang.swift.decl.var.instance", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/ZIP/ZipEntryInfo.swift", + "line": 30, + "symbol": "ZipEntryInfo.permissions", + "symbol_kind": "source.lang.swift.decl.var.instance", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/ZIP/ZipEntryInfo.swift", + "line": 34, + "symbol": "ZipEntryInfo.comment", + "symbol_kind": "source.lang.swift.decl.var.instance", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/ZIP/ZipEntryInfo.swift", + "line": 36, + "symbol": "ZipEntryInfo.externalFileAttributes", + "symbol_kind": "source.lang.swift.decl.var.instance", + "warning": "undocumented" + }, + { + "file": "/Users/timofeysolomko/Developer/Compression/SWCompression/Sources/ZIP/ZipEntryInfo.swift", + "line": 38, + "symbol": "ZipEntryInfo.dosAttributes", + "symbol_kind": "source.lang.swift.decl.var.instance", + "warning": "undocumented" + } ], "source_directory": "/Users/timofeysolomko/Developer/Compression/SWCompression" } \ No newline at end of file