summaryrefslogtreecommitdiff
path: root/Zip
diff options
context:
space:
mode:
authorPaul Duncan <pabs@pablotron.org>2016-08-13 14:31:15 -0400
committerPaul Duncan <pabs@pablotron.org>2016-08-13 14:31:15 -0400
commita63cfd89ab6070e8c75b29535a615679552da764 (patch)
treed9edf51acb67e0e5c2a0891d1d8e3d9e6a4c3721 /Zip
parentd0ef3ffa806a0b659e1535f53f9910dea341e2e0 (diff)
downloadzip-crystal-a63cfd89ab6070e8c75b29535a615679552da764.tar.bz2
zip-crystal-a63cfd89ab6070e8c75b29535a615679552da764.zip
update documentation
Diffstat (limited to 'Zip')
-rw-r--r--Zip/Archive.html17
-rw-r--r--Zip/CompressionMethod.html17
-rw-r--r--Zip/DeflateCompressionHelper.html17
-rw-r--r--Zip/Entry.html87
-rw-r--r--Zip/Error.html17
-rw-r--r--Zip/Extra.html207
-rw-r--r--Zip/Extra/Base.html401
-rw-r--r--Zip/Extra/Zip64.html437
-rw-r--r--Zip/GeneralFlags.html17
-rw-r--r--Zip/NoneCompressionHelper.html17
-rw-r--r--Zip/Source.html17
-rw-r--r--Zip/TimeHelper.html17
-rw-r--r--Zip/Version.html26
-rw-r--r--Zip/Writer.html69
-rw-r--r--Zip/Writers.html21
-rw-r--r--Zip/Writers/DirEntry.html48
-rw-r--r--Zip/Writers/FileEntry.html50
-rw-r--r--Zip/Writers/WriterEntry.html72
18 files changed, 1262 insertions, 292 deletions
diff --git a/Zip/Archive.html b/Zip/Archive.html
index cb75fac..c506a33 100644
--- a/Zip/Archive.html
+++ b/Zip/Archive.html
@@ -50,9 +50,24 @@
</li>
- <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
+ <li class="parent " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
<a href="../Zip/Extra.html">Extra</a>
+ <ul>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Base" data-name="zip::extra::base">
+ <a href="../Zip/Extra/Base.html">Base</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Zip64" data-name="zip::extra::zip64">
+ <a href="../Zip/Extra/Zip64.html">Zip64</a>
+
+ </li>
+
+</ul>
+
+
</li>
<li class=" " data-id="github.com/pablotron/zip-crystal/Zip/GeneralFlags" data-name="zip::generalflags">
diff --git a/Zip/CompressionMethod.html b/Zip/CompressionMethod.html
index 83b022f..9f4cd7b 100644
--- a/Zip/CompressionMethod.html
+++ b/Zip/CompressionMethod.html
@@ -50,9 +50,24 @@
</li>
- <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
+ <li class="parent " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
<a href="../Zip/Extra.html">Extra</a>
+ <ul>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Base" data-name="zip::extra::base">
+ <a href="../Zip/Extra/Base.html">Base</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Zip64" data-name="zip::extra::zip64">
+ <a href="../Zip/Extra/Zip64.html">Zip64</a>
+
+ </li>
+
+</ul>
+
+
</li>
<li class=" " data-id="github.com/pablotron/zip-crystal/Zip/GeneralFlags" data-name="zip::generalflags">
diff --git a/Zip/DeflateCompressionHelper.html b/Zip/DeflateCompressionHelper.html
index 6daf337..90d7051 100644
--- a/Zip/DeflateCompressionHelper.html
+++ b/Zip/DeflateCompressionHelper.html
@@ -50,9 +50,24 @@
</li>
- <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
+ <li class="parent " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
<a href="../Zip/Extra.html">Extra</a>
+ <ul>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Base" data-name="zip::extra::base">
+ <a href="../Zip/Extra/Base.html">Base</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Zip64" data-name="zip::extra::zip64">
+ <a href="../Zip/Extra/Zip64.html">Zip64</a>
+
+ </li>
+
+</ul>
+
+
</li>
<li class=" " data-id="github.com/pablotron/zip-crystal/Zip/GeneralFlags" data-name="zip::generalflags">
diff --git a/Zip/Entry.html b/Zip/Entry.html
index 02dd78d..288ead0 100644
--- a/Zip/Entry.html
+++ b/Zip/Entry.html
@@ -50,9 +50,24 @@
</li>
- <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
+ <li class="parent " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
<a href="../Zip/Extra.html">Extra</a>
+ <ul>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Base" data-name="zip::extra::base">
+ <a href="../Zip/Extra/Base.html">Base</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Zip64" data-name="zip::extra::zip64">
+ <a href="../Zip/Extra/Zip64.html">Zip64</a>
+
+ </li>
+
+</ul>
+
+
</li>
<li class=" " data-id="github.com/pablotron/zip-crystal/Zip/GeneralFlags" data-name="zip::generalflags">
@@ -209,9 +224,9 @@ io <span class="o">=</span> <span class="t">MemoryIO</span>.<span class="k">new<
</li>
<li class="entry-summary">
- <a href="#compressed_size%3AUInt32-instance-method" class="signature"><strong>#compressed_size</strong> : UInt32</a>
+ <a href="#compressed_size%3AUInt64-instance-method" class="signature"><strong>#compressed_size</strong> : UInt64</a>
- <div class="summary"><p>Get compressed size for this <code><a href="../Zip/Entry.html">Entry</a></code> as a <code>UInt32</code>.</p></div>
+ <div class="summary"><p>Get compressed size for this <code><a href="../Zip/Entry.html">Entry</a></code>.</p></div>
</li>
@@ -237,7 +252,7 @@ io <span class="o">=</span> <span class="t">MemoryIO</span>.<span class="k">new<
</li>
<li class="entry-summary">
- <a href="#extras%3AArray%28Zip%3A%3AExtra%29-instance-method" class="signature"><strong>#extras</strong> : Array(Zip::Extra)</a>
+ <a href="#extras%3AArray%28Zip%3A%3AExtra%3A%3ABase%29-instance-method" class="signature"><strong>#extras</strong> : Array(Zip::Extra::Base)</a>
<div class="summary"><p>Get <code><a href="../Zip/Extra.html">Extra</a></code> data for this <code><a href="../Zip/Entry.html">Entry</a></code> as an <code>Array</code>.</p></div>
@@ -258,7 +273,7 @@ io <span class="o">=</span> <span class="t">MemoryIO</span>.<span class="k">new<
</li>
<li class="entry-summary">
- <a href="#local_extras%3AArray%28Extra%29-instance-method" class="signature"><strong>#local_extras</strong> : Array(Extra)</a>
+ <a href="#local_extras%3AArray%28Extra%3A%3ABase%29-instance-method" class="signature"><strong>#local_extras</strong> : Array(Extra::Base)</a>
<div class="summary"><p>Returns an array of <code><a href="../Zip/Extra.html">Extra</a></code> attributes for this <code><a href="../Zip/Entry.html">Entry</a></code>.</p></div>
@@ -279,16 +294,16 @@ io <span class="o">=</span> <span class="t">MemoryIO</span>.<span class="k">new<
</li>
<li class="entry-summary">
- <a href="#pos%3AUInt32-instance-method" class="signature"><strong>#pos</strong> : UInt32</a>
+ <a href="#pos%3AUInt64-instance-method" class="signature"><strong>#pos</strong> : UInt64</a>
- <div class="summary"><p>Get position for this <code><a href="../Zip/Entry.html">Entry</a></code> as a <code>UInt32</code>.</p></div>
+ <div class="summary"><p>Get position for this <code><a href="../Zip/Entry.html">Entry</a></code>.</p></div>
</li>
<li class="entry-summary">
- <a href="#size%3AUInt32-instance-method" class="signature"><strong>#size</strong> : UInt32</a>
+ <a href="#size%3AUInt64-instance-method" class="signature"><strong>#size</strong> : UInt64</a>
- <div class="summary"><p>Get uncompressed size for this <code><a href="../Zip/Entry.html">Entry</a></code> as a <code>UInt32</code>.</p></div>
+ <div class="summary"><p>Get uncompressed size for this <code><a href="../Zip/Entry.html">Entry</a></code>.</p></div>
</li>
@@ -314,14 +329,14 @@ io <span class="o">=</span> <span class="t">MemoryIO</span>.<span class="k">new<
</li>
<li class="entry-summary">
- <a href="#write%28path%3AString%29%3AUInt32-instance-method" class="signature"><strong>#write</strong>(path : String) : UInt32</a>
+ <a href="#write%28path%3AString%29%3AUInt64-instance-method" class="signature"><strong>#write</strong>(path : String) : UInt64</a>
<div class="summary"><p>Write contents of <code><a href="../Zip/Entry.html">Entry</a></code> into given path <em>path</em> and return the number of bytes written.</p></div>
</li>
<li class="entry-summary">
- <a href="#write%28dst_io%3AIO%29%3AUInt32-instance-method" class="signature"><strong>#write</strong>(dst_io : IO) : UInt32</a>
+ <a href="#write%28dst_io%3AIO%29%3AUInt64-instance-method" class="signature"><strong>#write</strong>(dst_io : IO) : UInt64</a>
<div class="summary"><p>Write contents of <code><a href="../Zip/Entry.html">Entry</a></code> into given <code>IO</code>.</p></div>
@@ -422,15 +437,15 @@ io <span class="o">=</span> <span class="t">MemoryIO</span>.<span class="k">new<
</div>
</div>
- <div class="entry-detail" id="compressed_size:UInt32-instance-method">
+ <div class="entry-detail" id="compressed_size:UInt64-instance-method">
<div class="signature">
- def <strong>compressed_size</strong> : UInt32
+ def <strong>compressed_size</strong> : UInt64
- <a class="method-permalink" href="#compressed_size%3AUInt32-instance-method">#</a>
+ <a class="method-permalink" href="#compressed_size%3AUInt64-instance-method">#</a>
</div>
- <div class="doc"><p>Get compressed size for this <code><a href="../Zip/Entry.html">Entry</a></code> as a <code>UInt32</code>.</p>
+ <div class="doc"><p>Get compressed size for this <code><a href="../Zip/Entry.html">Entry</a></code>.</p>
<pre><code><span class="t">Zip</span>.read(<span class="s">&quot;foo.zip&quot;</span>) <span class="k">do</span> <span class="o">|</span>zip<span class="o">|</span>
<span class="c"># print compressed size for each entry</span>
@@ -514,12 +529,12 @@ io <span class="o">=</span> <span class="t">MemoryIO</span>.<span class="k">new<
</div>
</div>
- <div class="entry-detail" id="extras:Array&#40;Zip::Extra&#41;-instance-method">
+ <div class="entry-detail" id="extras:Array&#40;Zip::Extra::Base&#41;-instance-method">
<div class="signature">
- def <strong>extras</strong> : Array(<a href="../Zip/Extra.html">Zip::Extra</a>)
+ def <strong>extras</strong> : Array(<a href="../Zip/Extra/Base.html">Zip::Extra::Base</a>)
- <a class="method-permalink" href="#extras%3AArray%28Zip%3A%3AExtra%29-instance-method">#</a>
+ <a class="method-permalink" href="#extras%3AArray%28Zip%3A%3AExtra%3A%3ABase%29-instance-method">#</a>
</div>
<div class="doc"><p>Get <code><a href="../Zip/Extra.html">Extra</a></code> data for this <code><a href="../Zip/Entry.html">Entry</a></code> as an <code>Array</code>.</p>
@@ -583,12 +598,12 @@ io <span class="o">=</span> <span class="t">MemoryIO</span>.<span class="k">new<
</div>
</div>
- <div class="entry-detail" id="local_extras:Array&#40;Extra&#41;-instance-method">
+ <div class="entry-detail" id="local_extras:Array&#40;Extra::Base&#41;-instance-method">
<div class="signature">
- def <strong>local_extras</strong> : Array(<a href="../Zip/Extra.html">Extra</a>)
+ def <strong>local_extras</strong> : Array(<a href="../Zip/Extra/Base.html">Extra::Base</a>)
- <a class="method-permalink" href="#local_extras%3AArray%28Extra%29-instance-method">#</a>
+ <a class="method-permalink" href="#local_extras%3AArray%28Extra%3A%3ABase%29-instance-method">#</a>
</div>
<div class="doc"><p>Returns an array of <code><a href="../Zip/Extra.html">Extra</a></code> attributes for this <code><a href="../Zip/Entry.html">Entry</a></code>.</p>
@@ -597,7 +612,7 @@ io <span class="o">=</span> <span class="t">MemoryIO</span>.<span class="k">new<
associated with the file entry itself, and the file's entry in the
Central Directory.</p>
-<p>The <code><a href="../Zip/Entry.html#extras%3AArray%28Zip%3A%3AExtra%29-instance-method">#extras</a></code> method returns the <code><a href="../Zip/Extra.html">Extra</a></code> attributes from the
+<p>The <code><a href="../Zip/Entry.html#extras%3AArray%28Zip%3A%3AExtra%3A%3ABase%29-instance-method">#extras</a></code> method returns the <code><a href="../Zip/Extra.html">Extra</a></code> attributes from the
file's entry in the Central Directory, and this method returns the
<code><a href="../Zip/Extra.html">Extra</a></code> data from the file entry itself.</p>
@@ -661,15 +676,15 @@ file's entry in the Central Directory, and this method returns the
</div>
</div>
- <div class="entry-detail" id="pos:UInt32-instance-method">
+ <div class="entry-detail" id="pos:UInt64-instance-method">
<div class="signature">
- def <strong>pos</strong> : UInt32
+ def <strong>pos</strong> : UInt64
- <a class="method-permalink" href="#pos%3AUInt32-instance-method">#</a>
+ <a class="method-permalink" href="#pos%3AUInt64-instance-method">#</a>
</div>
- <div class="doc"><p>Get position for this <code><a href="../Zip/Entry.html">Entry</a></code> as a <code>UInt32</code>.</p>
+ <div class="doc"><p>Get position for this <code><a href="../Zip/Entry.html">Entry</a></code>.</p>
<pre><code><span class="t">Zip</span>.read(<span class="s">&quot;foo.zip&quot;</span>) <span class="k">do</span> <span class="o">|</span>zip<span class="o">|</span>
<span class="c"># print position for each entry</span>
@@ -684,15 +699,15 @@ file's entry in the Central Directory, and this method returns the
</div>
</div>
- <div class="entry-detail" id="size:UInt32-instance-method">
+ <div class="entry-detail" id="size:UInt64-instance-method">
<div class="signature">
- def <strong>size</strong> : UInt32
+ def <strong>size</strong> : UInt64
- <a class="method-permalink" href="#size%3AUInt32-instance-method">#</a>
+ <a class="method-permalink" href="#size%3AUInt64-instance-method">#</a>
</div>
- <div class="doc"><p>Get uncompressed size for this <code><a href="../Zip/Entry.html">Entry</a></code> as a <code>UInt32</code>.</p>
+ <div class="doc"><p>Get uncompressed size for this <code><a href="../Zip/Entry.html">Entry</a></code>.</p>
<pre><code><span class="t">Zip</span>.read(<span class="s">&quot;foo.zip&quot;</span>) <span class="k">do</span> <span class="o">|</span>zip<span class="o">|</span>
<span class="c"># print uncompressed size for each entry</span>
@@ -776,12 +791,12 @@ file's entry in the Central Directory, and this method returns the
</div>
</div>
- <div class="entry-detail" id="write&#40;path:String&#41;:UInt32-instance-method">
+ <div class="entry-detail" id="write&#40;path:String&#41;:UInt64-instance-method">
<div class="signature">
- def <strong>write</strong>(path : String) : UInt32
+ def <strong>write</strong>(path : String) : UInt64
- <a class="method-permalink" href="#write%28path%3AString%29%3AUInt32-instance-method">#</a>
+ <a class="method-permalink" href="#write%28path%3AString%29%3AUInt64-instance-method">#</a>
</div>
<div class="doc"><p>Write contents of <code><a href="../Zip/Entry.html">Entry</a></code> into given path <em>path</em> and return the
@@ -807,12 +822,12 @@ compression method is unsupported.</p>
</div>
</div>
- <div class="entry-detail" id="write&#40;dst_io:IO&#41;:UInt32-instance-method">
+ <div class="entry-detail" id="write&#40;dst_io:IO&#41;:UInt64-instance-method">
<div class="signature">
- def <strong>write</strong>(dst_io : IO) : UInt32
+ def <strong>write</strong>(dst_io : IO) : UInt64
- <a class="method-permalink" href="#write%28dst_io%3AIO%29%3AUInt32-instance-method">#</a>
+ <a class="method-permalink" href="#write%28dst_io%3AIO%29%3AUInt64-instance-method">#</a>
</div>
<div class="doc"><p>Write contents of <code><a href="../Zip/Entry.html">Entry</a></code> into given <code>IO</code>.</p>
diff --git a/Zip/Error.html b/Zip/Error.html
index 6aeba81..db4949e 100644
--- a/Zip/Error.html
+++ b/Zip/Error.html
@@ -50,9 +50,24 @@
</li>
- <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
+ <li class="parent " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
<a href="../Zip/Extra.html">Extra</a>
+ <ul>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Base" data-name="zip::extra::base">
+ <a href="../Zip/Extra/Base.html">Base</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Zip64" data-name="zip::extra::zip64">
+ <a href="../Zip/Extra/Zip64.html">Zip64</a>
+
+ </li>
+
+</ul>
+
+
</li>
<li class=" " data-id="github.com/pablotron/zip-crystal/Zip/GeneralFlags" data-name="zip::generalflags">
diff --git a/Zip/Extra.html b/Zip/Extra.html
index 554e82b..cde4caa 100644
--- a/Zip/Extra.html
+++ b/Zip/Extra.html
@@ -50,9 +50,24 @@
</li>
- <li class=" current" data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
+ <li class="parent current" data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
<a href="../Zip/Extra.html">Extra</a>
+ <ul>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Base" data-name="zip::extra::base">
+ <a href="../Zip/Extra/Base.html">Base</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Zip64" data-name="zip::extra::zip64">
+ <a href="../Zip/Extra/Zip64.html">Zip64</a>
+
+ </li>
+
+</ul>
+
+
</li>
<li class=" " data-id="github.com/pablotron/zip-crystal/Zip/GeneralFlags" data-name="zip::generalflags">
@@ -122,30 +137,17 @@
<div id="main-content">
<h1 class="type-name">
- <span class="kind">class</span> Zip::Extra
+ <span class="kind">module</span> Zip::Extra
</h1>
- <ul class="superclass-hierarchy"><li class="superclass"><a href="../Zip/Extra.html">Zip::Extra</a></li><li class="superclass">Reference</li><li class="superclass">Object</li></ul>
-
<h2>Overview</h2>
- <p>Extra data associated with <code><a href="../Zip/Entry.html">Entry</a></code>.</p>
-
-<p>You should not need to instantiate this class directly; use
-<code><a href="../Zip/Entry.html#extras%3AArray%28Zip%3A%3AExtra%29-instance-method">Zip::Entry#extras</a></code> or <code><a href="../Zip/Entry.html#local_extras%3AArray%28Extra%29-instance-method">Zip::Entry#local_extras</a></code> instead.</p>
-
-<p>Example:</p>
-
-<pre><code><span class="c"># open &quot;foo.zip&quot;</span>
-<span class="t">Zip</span>.read(<span class="s">&quot;foo.zip&quot;</span>) <span class="k">do</span> <span class="o">|</span>zip<span class="o">|</span>
- <span class="c"># get extra data associated with &quot;bar.txt&quot;</span>
- extras <span class="o">=</span> zip[<span class="s">&quot;bar.txt&quot;</span>].extras
-<span class="k">end</span></code></pre>
+ <p>Extra data handlers.</p>
@@ -171,54 +173,16 @@
<ul class="list-summary">
<li class="entry-summary">
- <a href="#new%28code%3AUInt16%2Cdata%3ABytes%29-class-method" class="signature"><strong>.new</strong>(code : UInt16, data : Bytes)</a>
+ <a href="#pack%28extras%3AArray%28Extra%3A%3ABase%29%7CNil%29%3ABytes-class-method" class="signature"><strong>.pack</strong>(extras : Array(Extra::Base) | Nil) : Bytes</a>
- </li>
-
- <li class="entry-summary">
- <a href="#new%28io%29-class-method" class="signature"><strong>.new</strong>(io)</a>
+ <div class="summary"><p>Encode array of <code><a href="../Zip/Extra/Base.html">Extra::Base</a></code> and return buffer.</p></div>
</li>
- </ul>
-
-
-
- <h2>Instance Method Summary</h2>
- <ul class="list-summary">
-
<li class="entry-summary">
- <a href="#code%3AUInt16-instance-method" class="signature"><strong>#code</strong> : UInt16</a>
+ <a href="#read%28io%29%3ABase-class-method" class="signature"><strong>.read</strong>(io) : Base</a>
- </li>
-
- <li class="entry-summary">
- <a href="#code%3D%28code%29-instance-method" class="signature"><strong>#code=</strong>(code)</a>
-
- </li>
-
- <li class="entry-summary">
- <a href="#data%3ASlice%28UInt8%29-instance-method" class="signature"><strong>#data</strong> : Slice(UInt8)</a>
-
- </li>
-
- <li class="entry-summary">
- <a href="#data%3D%28data%29-instance-method" class="signature"><strong>#data=</strong>(data)</a>
-
- </li>
-
- <li class="entry-summary">
- <a href="#size%28%2Aargs%2C%2A%2Aoptions%2C%26block%29-instance-method" class="signature"><strong>#size</strong>(*args, **options, &block)</a>
-
- </li>
-
- <li class="entry-summary">
- <a href="#size%28%2Aargs%2C%2A%2Aoptions%29-instance-method" class="signature"><strong>#size</strong>(*args, **options)</a>
-
- </li>
-
- <li class="entry-summary">
- <a href="#to_s%28io%29%3AUInt32-instance-method" class="signature"><strong>#to_s</strong>(io) : UInt32</a>
+ <div class="summary"><p>Parse <code><a href="../Zip/Extra.html">Extra</a></code> data from given IO <em>io</em>.</p></div>
</li>
@@ -228,67 +192,24 @@
-<div class="methods-inherited">
-
-
-
-
-
-
-
-
-
-
-
-
+<div class="methods-inherited">
</div>
<h2>Class Method Detail</h2>
- <div class="entry-detail" id="new&#40;code:UInt16,data:Bytes&#41;-class-method">
- <div class="signature">
-
- def self.<strong>new</strong>(code : UInt16, data : Bytes)
-
- <a class="method-permalink" href="#new%28code%3AUInt16%2Cdata%3ABytes%29-class-method">#</a>
- </div>
-
- <br/>
- <div>
-
- </div>
- </div>
-
- <div class="entry-detail" id="new&#40;io&#41;-class-method">
+ <div class="entry-detail" id="pack&#40;extras:Array&#40;Extra::Base&#41;|Nil&#41;:Bytes-class-method">
<div class="signature">
- def self.<strong>new</strong>(io)
+ def self.<strong>pack</strong>(extras : Array(<a href="../Zip/Extra/Base.html">Extra::Base</a>) | Nil) : Bytes
- <a class="method-permalink" href="#new%28io%29-class-method">#</a>
+ <a class="method-permalink" href="#pack%28extras%3AArray%28Extra%3A%3ABase%29%7CNil%29%3ABytes-class-method">#</a>
</div>
- <br/>
- <div>
-
- </div>
- </div>
-
-
-
-
- <h2>Instance Method Detail</h2>
-
- <div class="entry-detail" id="code:UInt16-instance-method">
- <div class="signature">
-
- def <strong>code</strong> : UInt16
-
- <a class="method-permalink" href="#code%3AUInt16-instance-method">#</a>
- </div>
+ <div class="doc"><p>Encode array of <code><a href="../Zip/Extra/Base.html">Extra::Base</a></code> and return buffer.</p></div>
<br/>
<div>
@@ -296,27 +217,15 @@
</div>
</div>
- <div class="entry-detail" id="code&#61;&#40;code&#41;-instance-method">
+ <div class="entry-detail" id="read&#40;io&#41;:Base-class-method">
<div class="signature">
- def <strong>code=</strong>(code)
+ def self.<strong>read</strong>(io) : <a href="../Zip/Extra/Base.html">Base</a>
- <a class="method-permalink" href="#code%3D%28code%29-instance-method">#</a>
+ <a class="method-permalink" href="#read%28io%29%3ABase-class-method">#</a>
</div>
- <br/>
- <div>
-
- </div>
- </div>
-
- <div class="entry-detail" id="data:Slice&#40;UInt8&#41;-instance-method">
- <div class="signature">
-
- def <strong>data</strong> : Slice(UInt8)
-
- <a class="method-permalink" href="#data%3ASlice%28UInt8%29-instance-method">#</a>
- </div>
+ <div class="doc"><p>Parse <code><a href="../Zip/Extra.html">Extra</a></code> data from given IO <em>io</em>.</p></div>
<br/>
<div>
@@ -324,62 +233,8 @@
</div>
</div>
- <div class="entry-detail" id="data&#61;&#40;data&#41;-instance-method">
- <div class="signature">
-
- def <strong>data=</strong>(data)
- <a class="method-permalink" href="#data%3D%28data%29-instance-method">#</a>
- </div>
-
- <br/>
- <div>
-
- </div>
- </div>
-
- <div class="entry-detail" id="size&#40;*args,**options,&amp;block&#41;-instance-method">
- <div class="signature">
-
- def <strong>size</strong>(*args, **options, &block)
-
- <a class="method-permalink" href="#size%28%2Aargs%2C%2A%2Aoptions%2C%26block%29-instance-method">#</a>
- </div>
-
- <br/>
- <div>
-
- </div>
- </div>
-
- <div class="entry-detail" id="size&#40;*args,**options&#41;-instance-method">
- <div class="signature">
-
- def <strong>size</strong>(*args, **options)
-
- <a class="method-permalink" href="#size%28%2Aargs%2C%2A%2Aoptions%29-instance-method">#</a>
- </div>
-
- <br/>
- <div>
-
- </div>
- </div>
-
- <div class="entry-detail" id="to_s&#40;io&#41;:UInt32-instance-method">
- <div class="signature">
-
- def <strong>to_s</strong>(io) : UInt32
- <a class="method-permalink" href="#to_s%28io%29%3AUInt32-instance-method">#</a>
- </div>
-
- <br/>
- <div>
-
- </div>
- </div>
-
diff --git a/Zip/Extra/Base.html b/Zip/Extra/Base.html
new file mode 100644
index 0000000..fc9fcc9
--- /dev/null
+++ b/Zip/Extra/Base.html
@@ -0,0 +1,401 @@
+<!DOCTYPE html>
+<html>
+<head>
+ <meta charset="utf-8" />
+ <meta id="repository-name" content="github.com/pablotron/zip-crystal">
+ <link href="../../css/style.css" rel="stylesheet" type="text/css" />
+ <script type="text/javascript" src="../../js/doc.js"></script>
+ <title>Zip::Extra::Base - github.com/pablotron/zip-crystal</title>
+</head>
+<body>
+
+<div id="types-list">
+ <div id="search-box">
+ <input type="search" id="search-input" placeholder="Search...">
+ </div>
+
+ <ul>
+ <li><a href="../../index.html">README</a></li>
+ </ul>
+
+ <ul>
+
+ <li class="parent open current" data-id="github.com/pablotron/zip-crystal/Zip" data-name="zip">
+ <a href="../../Zip.html">Zip</a>
+
+ <ul>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Archive" data-name="zip::archive">
+ <a href="../../Zip/Archive.html">Archive</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/CompressionMethod" data-name="zip::compressionmethod">
+ <a href="../../Zip/CompressionMethod.html">CompressionMethod</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/DeflateCompressionHelper" data-name="zip::deflatecompressionhelper">
+ <a href="../../Zip/DeflateCompressionHelper.html">DeflateCompressionHelper</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Entry" data-name="zip::entry">
+ <a href="../../Zip/Entry.html">Entry</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Error" data-name="zip::error">
+ <a href="../../Zip/Error.html">Error</a>
+
+ </li>
+
+ <li class="parent open current" data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
+ <a href="../../Zip/Extra.html">Extra</a>
+
+ <ul>
+
+ <li class=" current" data-id="github.com/pablotron/zip-crystal/Zip/Extra/Base" data-name="zip::extra::base">
+ <a href="../../Zip/Extra/Base.html">Base</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Zip64" data-name="zip::extra::zip64">
+ <a href="../../Zip/Extra/Zip64.html">Zip64</a>
+
+ </li>
+
+</ul>
+
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/GeneralFlags" data-name="zip::generalflags">
+ <a href="../../Zip/GeneralFlags.html">GeneralFlags</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/NoneCompressionHelper" data-name="zip::nonecompressionhelper">
+ <a href="../../Zip/NoneCompressionHelper.html">NoneCompressionHelper</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Source" data-name="zip::source">
+ <a href="../../Zip/Source.html">Source</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/TimeHelper" data-name="zip::timehelper">
+ <a href="../../Zip/TimeHelper.html">TimeHelper</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Version" data-name="zip::version">
+ <a href="../../Zip/Version.html">Version</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Writer" data-name="zip::writer">
+ <a href="../../Zip/Writer.html">Writer</a>
+
+ </li>
+
+ <li class="parent " data-id="github.com/pablotron/zip-crystal/Zip/Writers" data-name="zip::writers">
+ <a href="../../Zip/Writers.html">Writers</a>
+
+ <ul>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Writers/DirEntry" data-name="zip::writers::direntry">
+ <a href="../../Zip/Writers/DirEntry.html">DirEntry</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Writers/FileEntry" data-name="zip::writers::fileentry">
+ <a href="../../Zip/Writers/FileEntry.html">FileEntry</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Writers/WriterEntry" data-name="zip::writers::writerentry">
+ <a href="../../Zip/Writers/WriterEntry.html">WriterEntry</a>
+
+ </li>
+
+</ul>
+
+
+ </li>
+
+</ul>
+
+
+ </li>
+
+</ul>
+
+</div>
+
+<div id="main-content">
+<h1 class="type-name">
+
+ <span class="kind">class</span> Zip::Extra::Base
+
+</h1>
+
+
+ <ul class="superclass-hierarchy"><li class="superclass"><a href="../../Zip/Extra/Base.html">Zip::Extra::Base</a></li><li class="superclass">Reference</li><li class="superclass">Object</li></ul>
+
+
+
+
+ <h2>Overview</h2>
+
+ <p>Raw extra data associated with <code><a href="../../Zip/Entry.html">Entry</a></code>.</p>
+
+<p>You should not need to instantiate this class directly; use
+<code><a href="../../Zip/Entry.html#extras%3AArray%28Zip%3A%3AExtra%3A%3ABase%29-instance-method">Zip::Entry#extras</a></code> or <code><a href="../../Zip/Entry.html#local_extras%3AArray%28Extra%3A%3ABase%29-instance-method">Zip::Entry#local_extras</a></code> instead.</p>
+
+<p>Example:</p>
+
+<pre><code><span class="c"># open &quot;foo.zip&quot;</span>
+<span class="t">Zip</span>.read(<span class="s">&quot;foo.zip&quot;</span>) <span class="k">do</span> <span class="o">|</span>zip<span class="o">|</span>
+ <span class="c"># get extra data associated with &quot;bar.txt&quot;</span>
+ extras <span class="o">=</span> zip[<span class="s">&quot;bar.txt&quot;</span>].extras
+<span class="k">end</span></code></pre>
+
+
+
+
+
+
+
+
+
+ <h2>Direct Known Subclasses</h2>
+ <ul class="other-types-list">
+
+ <li class="other-type"><a href="../../Zip/Extra/Zip64.html">Zip::Extra::Zip64</a></li>
+
+ </ul>
+
+
+
+
+
+
+ <h2>Defined in:</h2>
+
+
+
+
+
+
+ <h2>Class Method Summary</h2>
+ <ul class="list-summary">
+
+ <li class="entry-summary">
+ <a href="#new%28code%3AUInt16%2Cdata%3ABytes%29-class-method" class="signature"><strong>.new</strong>(code : UInt16, data : Bytes)</a>
+
+ <div class="summary"><p>Create a new raw extra data entry.</p></div>
+
+ </li>
+
+ </ul>
+
+
+
+ <h2>Instance Method Summary</h2>
+ <ul class="list-summary">
+
+ <li class="entry-summary">
+ <a href="#bytes_needed%3AUInt16-instance-method" class="signature"><strong>#bytes_needed</strong> : UInt16</a>
+
+ <div class="summary"><p>Return number of bytes needed for this Extra.</p></div>
+
+ </li>
+
+ <li class="entry-summary">
+ <a href="#code%3AUInt16-instance-method" class="signature"><strong>#code</strong> : UInt16</a>
+
+ <div class="summary"><p>Identifier for this extra entry.</p></div>
+
+ </li>
+
+ <li class="entry-summary">
+ <a href="#code%3D%28code%29-instance-method" class="signature"><strong>#code=</strong>(code)</a>
+
+ <div class="summary"><p>Identifier for this extra entry.</p></div>
+
+ </li>
+
+ <li class="entry-summary">
+ <a href="#data%3ASlice%28UInt8%29-instance-method" class="signature"><strong>#data</strong> : Slice(UInt8)</a>
+
+ <div class="summary"><p>Data for this extra entry.</p></div>
+
+ </li>
+
+ <li class="entry-summary">
+ <a href="#data%3D%28data%29-instance-method" class="signature"><strong>#data=</strong>(data)</a>
+
+ <div class="summary"><p>Data for this extra entry.</p></div>
+
+ </li>
+
+ <li class="entry-summary">
+ <a href="#to_s%28io%29%3AUInt16-instance-method" class="signature"><strong>#to_s</strong>(io) : UInt16</a>
+
+ </li>
+
+ </ul>
+
+
+
+
+
+<div class="methods-inherited">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+</div>
+
+
+ <h2>Class Method Detail</h2>
+
+ <div class="entry-detail" id="new&#40;code:UInt16,data:Bytes&#41;-class-method">
+ <div class="signature">
+
+ def self.<strong>new</strong>(code : UInt16, data : Bytes)
+
+ <a class="method-permalink" href="#new%28code%3AUInt16%2Cdata%3ABytes%29-class-method">#</a>
+ </div>
+
+ <div class="doc"><p>Create a new raw extra data entry.</p>
+
+<p>You should not need to instantiate this class directly; it is
+created as-needed by <code><a href="../../Zip/Writer.html#add%28path%3AString%2Cio%3AIO%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Czip64%3ABool%3D%3Cspanclass%3D%22n%22%3Efalse%3C%2Fspan%3E%29%3AUInt64-instance-method">Writer#add</a></code>.</p></div>
+
+ <br/>
+ <div>
+
+ </div>
+ </div>
+
+
+
+
+ <h2>Instance Method Detail</h2>
+
+ <div class="entry-detail" id="bytes_needed:UInt16-instance-method">
+ <div class="signature">
+
+ def <strong>bytes_needed</strong> : UInt16
+
+ <a class="method-permalink" href="#bytes_needed%3AUInt16-instance-method">#</a>
+ </div>
+
+ <div class="doc"><p>Return number of bytes needed for this Extra.</p></div>
+
+ <br/>
+ <div>
+
+ </div>
+ </div>
+
+ <div class="entry-detail" id="code:UInt16-instance-method">
+ <div class="signature">
+
+ def <strong>code</strong> : UInt16
+
+ <a class="method-permalink" href="#code%3AUInt16-instance-method">#</a>
+ </div>
+
+ <div class="doc"><p>Identifier for this extra entry.</p></div>
+
+ <br/>
+ <div>
+
+ </div>
+ </div>
+
+ <div class="entry-detail" id="code&#61;&#40;code&#41;-instance-method">
+ <div class="signature">
+
+ def <strong>code=</strong>(code)
+
+ <a class="method-permalink" href="#code%3D%28code%29-instance-method">#</a>
+ </div>
+
+ <div class="doc"><p>Identifier for this extra entry.</p></div>
+
+ <br/>
+ <div>
+
+ </div>
+ </div>
+
+ <div class="entry-detail" id="data:Slice&#40;UInt8&#41;-instance-method">
+ <div class="signature">
+
+ def <strong>data</strong> : Slice(UInt8)
+
+ <a class="method-permalink" href="#data%3ASlice%28UInt8%29-instance-method">#</a>
+ </div>
+
+ <div class="doc"><p>Data for this extra entry.</p></div>
+
+ <br/>
+ <div>
+
+ </div>
+ </div>
+
+ <div class="entry-detail" id="data&#61;&#40;data&#41;-instance-method">
+ <div class="signature">
+
+ def <strong>data=</strong>(data)
+
+ <a class="method-permalink" href="#data%3D%28data%29-instance-method">#</a>
+ </div>
+
+ <div class="doc"><p>Data for this extra entry.</p></div>
+
+ <br/>
+ <div>
+
+ </div>
+ </div>
+
+ <div class="entry-detail" id="to_s&#40;io&#41;:UInt16-instance-method">
+ <div class="signature">
+
+ def <strong>to_s</strong>(io) : UInt16
+
+ <a class="method-permalink" href="#to_s%28io%29%3AUInt16-instance-method">#</a>
+ </div>
+
+ <br/>
+ <div>
+
+ </div>
+ </div>
+
+
+
+
+
+</div>
+
+</body>
+</html>
diff --git a/Zip/Extra/Zip64.html b/Zip/Extra/Zip64.html
new file mode 100644
index 0000000..b5345a6
--- /dev/null
+++ b/Zip/Extra/Zip64.html
@@ -0,0 +1,437 @@
+<!DOCTYPE html>
+<html>
+<head>
+ <meta charset="utf-8" />
+ <meta id="repository-name" content="github.com/pablotron/zip-crystal">
+ <link href="../../css/style.css" rel="stylesheet" type="text/css" />
+ <script type="text/javascript" src="../../js/doc.js"></script>
+ <title>Zip::Extra::Zip64 - github.com/pablotron/zip-crystal</title>
+</head>
+<body>
+
+<div id="types-list">
+ <div id="search-box">
+ <input type="search" id="search-input" placeholder="Search...">
+ </div>
+
+ <ul>
+ <li><a href="../../index.html">README</a></li>
+ </ul>
+
+ <ul>
+
+ <li class="parent open current" data-id="github.com/pablotron/zip-crystal/Zip" data-name="zip">
+ <a href="../../Zip.html">Zip</a>
+
+ <ul>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Archive" data-name="zip::archive">
+ <a href="../../Zip/Archive.html">Archive</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/CompressionMethod" data-name="zip::compressionmethod">
+ <a href="../../Zip/CompressionMethod.html">CompressionMethod</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/DeflateCompressionHelper" data-name="zip::deflatecompressionhelper">
+ <a href="../../Zip/DeflateCompressionHelper.html">DeflateCompressionHelper</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Entry" data-name="zip::entry">
+ <a href="../../Zip/Entry.html">Entry</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Error" data-name="zip::error">
+ <a href="../../Zip/Error.html">Error</a>
+
+ </li>
+
+ <li class="parent open current" data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
+ <a href="../../Zip/Extra.html">Extra</a>
+
+ <ul>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Base" data-name="zip::extra::base">
+ <a href="../../Zip/Extra/Base.html">Base</a>
+
+ </li>
+
+ <li class=" current" data-id="github.com/pablotron/zip-crystal/Zip/Extra/Zip64" data-name="zip::extra::zip64">
+ <a href="../../Zip/Extra/Zip64.html">Zip64</a>
+
+ </li>
+
+</ul>
+
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/GeneralFlags" data-name="zip::generalflags">
+ <a href="../../Zip/GeneralFlags.html">GeneralFlags</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/NoneCompressionHelper" data-name="zip::nonecompressionhelper">
+ <a href="../../Zip/NoneCompressionHelper.html">NoneCompressionHelper</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Source" data-name="zip::source">
+ <a href="../../Zip/Source.html">Source</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/TimeHelper" data-name="zip::timehelper">
+ <a href="../../Zip/TimeHelper.html">TimeHelper</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Version" data-name="zip::version">
+ <a href="../../Zip/Version.html">Version</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Writer" data-name="zip::writer">
+ <a href="../../Zip/Writer.html">Writer</a>
+
+ </li>
+
+ <li class="parent " data-id="github.com/pablotron/zip-crystal/Zip/Writers" data-name="zip::writers">
+ <a href="../../Zip/Writers.html">Writers</a>
+
+ <ul>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Writers/DirEntry" data-name="zip::writers::direntry">
+ <a href="../../Zip/Writers/DirEntry.html">DirEntry</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Writers/FileEntry" data-name="zip::writers::fileentry">
+ <a href="../../Zip/Writers/FileEntry.html">FileEntry</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Writers/WriterEntry" data-name="zip::writers::writerentry">
+ <a href="../../Zip/Writers/WriterEntry.html">WriterEntry</a>
+
+ </li>
+
+</ul>
+
+
+ </li>
+
+</ul>
+
+
+ </li>
+
+</ul>
+
+</div>
+
+<div id="main-content">
+<h1 class="type-name">
+
+ <span class="kind">class</span> Zip::Extra::Zip64
+
+</h1>
+
+
+ <ul class="superclass-hierarchy"><li class="superclass"><a href="../../Zip/Extra/Zip64.html">Zip::Extra::Zip64</a></li><li class="superclass"><a href="../../Zip/Extra/Base.html">Zip::Extra::Base</a></li><li class="superclass">Reference</li><li class="superclass">Object</li></ul>
+
+
+
+
+ <h2>Overview</h2>
+
+ <p>ZIP64 extra data associated with <code><a href="../../Zip/Entry.html">Entry</a></code>.</p>
+
+<p>You should not need to instantiate this class directly; it is
+created as-needed by <code><a href="../../Zip/Writer.html#add%28path%3AString%2Cio%3AIO%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Czip64%3ABool%3D%3Cspanclass%3D%22n%22%3Efalse%3C%2Fspan%3E%29%3AUInt64-instance-method">Writer#add</a>()</code>.</p>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <h2>Defined in:</h2>
+
+
+
+
+
+ <h2>Constant Summary</h2>
+
+ <dl>
+
+ <dt class="entry-const" id="CODE">
+ <strong>CODE</strong> = <code><span class="n">1</span>.to_u16</code>
+ </dt>
+
+ <dd class="entry-const-doc">
+ <p>ZIP64 extra code</p>
+ </dd>
+
+
+ </dl>
+
+
+
+ <h2>Class Method Summary</h2>
+ <ul class="list-summary">
+
+ <li class="entry-summary">
+ <a href="#new%28size%3AUInt64%3D%3Cspanclass%3D%22n%22%3E0_u64%3C%2Fspan%3E%2Ccompressed_size%3AUInt64%3D%3Cspanclass%3D%22n%22%3E0_u64%3C%2Fspan%3E%2Cpos%3AUInt64%7CNil%3D%3Cspanclass%3D%22n%22%3Enil%3C%2Fspan%3E%2Cdisk_start%3AUInt32%7CNil%3D%3Cspanclass%3D%22n%22%3Enil%3C%2Fspan%3E%29-class-method" class="signature"><strong>.new</strong>(size : UInt64 = <span class="n">0_u64</span>, compressed_size : UInt64 = <span class="n">0_u64</span>, pos : UInt64 | Nil = <span class="n">nil</span>, disk_start : UInt32 | Nil = <span class="n">nil</span>)</a>
+
+ <div class="summary"><p>Create ZIP64 extra data associated with <code><a href="../../Zip/Entry.html">Entry</a></code> from given attributes.</p></div>
+
+ </li>
+
+ <li class="entry-summary">
+ <a href="#new%28data%3ABytes%29-class-method" class="signature"><strong>.new</strong>(data : Bytes)</a>
+
+ <div class="summary"><p>Parse ZIP64 extra data from given buffer.</p></div>
+
+ </li>
+
+ </ul>
+
+
+
+ <h2>Instance Method Summary</h2>
+ <ul class="list-summary">
+
+ <li class="entry-summary">
+ <a href="#compressed_size%3AUInt64-instance-method" class="signature"><strong>#compressed_size</strong> : UInt64</a>
+
+ <div class="summary"><p>Compressed file size (64-bit unsigned integer).</p></div>
+
+ </li>
+
+ <li class="entry-summary">
+ <a href="#disk_start%3AUInt32%7CNil-instance-method" class="signature"><strong>#disk_start</strong> : UInt32 | Nil</a>
+
+ <div class="summary"><p>Starting disk (optional).</p></div>
+
+ </li>
+
+ <li class="entry-summary">
+ <a href="#pos%3AUInt64%7CNil-instance-method" class="signature"><strong>#pos</strong> : UInt64 | Nil</a>
+
+ <div class="summary"><p>Position in output (optional).</p></div>
+
+ </li>
+
+ <li class="entry-summary">
+ <a href="#size%3AUInt64-instance-method" class="signature"><strong>#size</strong> : UInt64</a>
+
+ <div class="summary"><p>File size (64-bit unsigned integer).</p></div>
+
+ </li>
+
+ </ul>
+
+
+
+
+
+<div class="methods-inherited">
+
+
+
+ <h3>Instance methods inherited from class <code><a href="../../Zip/Extra/Base.html">Zip::Extra::Base</a></code></h3>
+
+
+ <a href="../../Zip/Extra/Base.html#bytes_needed%3AUInt16-instance-method" class="tooltip">
+ <span>bytes_needed : UInt16</span>
+ bytes_needed</a>,
+
+
+ <a href="../../Zip/Extra/Base.html#code%3AUInt16-instance-method" class="tooltip">
+ <span>code : UInt16</span>
+ code</a>,
+
+
+ <a href="../../Zip/Extra/Base.html#code%3D%28code%29-instance-method" class="tooltip">
+ <span>code=(code)</span>
+ code=</a>,
+
+
+ <a href="../../Zip/Extra/Base.html#data%3ASlice%28UInt8%29-instance-method" class="tooltip">
+ <span>data : Slice(UInt8)</span>
+ data</a>,
+
+
+ <a href="../../Zip/Extra/Base.html#data%3D%28data%29-instance-method" class="tooltip">
+ <span>data=(data)</span>
+ data=</a>,
+
+
+ <a href="../../Zip/Extra/Base.html#to_s%28io%29%3AUInt16-instance-method" class="tooltip">
+ <span>to_s(io) : UInt16</span>
+ to_s</a>
+
+
+
+
+
+
+ <h3>Class methods inherited from class <code><a href="../../Zip/Extra/Base.html">Zip::Extra::Base</a></code></h3>
+
+
+ <a href="../../Zip/Extra/Base.html#new%28code%3AUInt16%2Cdata%3ABytes%29-class-method" class="tooltip">
+ <span>new(code : UInt16, data : Bytes)</span>
+ new</a>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+</div>
+
+
+ <h2>Class Method Detail</h2>
+
+ <div class="entry-detail" id="new&#40;size:UInt64&#61;&lt;spanclass&#61;&quot;n&quot;&gt;0_u64&lt;/span&gt;,compressed_size:UInt64&#61;&lt;spanclass&#61;&quot;n&quot;&gt;0_u64&lt;/span&gt;,pos:UInt64|Nil&#61;&lt;spanclass&#61;&quot;n&quot;&gt;nil&lt;/span&gt;,disk_start:UInt32|Nil&#61;&lt;spanclass&#61;&quot;n&quot;&gt;nil&lt;/span&gt;&#41;-class-method">
+ <div class="signature">
+
+ def self.<strong>new</strong>(size : UInt64 = <span class="n">0_u64</span>, compressed_size : UInt64 = <span class="n">0_u64</span>, pos : UInt64 | Nil = <span class="n">nil</span>, disk_start : UInt32 | Nil = <span class="n">nil</span>)
+
+ <a class="method-permalink" href="#new%28size%3AUInt64%3D%3Cspanclass%3D%22n%22%3E0_u64%3C%2Fspan%3E%2Ccompressed_size%3AUInt64%3D%3Cspanclass%3D%22n%22%3E0_u64%3C%2Fspan%3E%2Cpos%3AUInt64%7CNil%3D%3Cspanclass%3D%22n%22%3Enil%3C%2Fspan%3E%2Cdisk_start%3AUInt32%7CNil%3D%3Cspanclass%3D%22n%22%3Enil%3C%2Fspan%3E%29-class-method">#</a>
+ </div>
+
+ <div class="doc"><p>Create ZIP64 extra data associated with <code><a href="../../Zip/Entry.html">Entry</a></code> from given
+attributes.</p>
+
+<p>You should not need to instantiate this class directly; it is
+created as-needed by <code><a href="../../Zip/Writer.html#add%28path%3AString%2Cio%3AIO%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Czip64%3ABool%3D%3Cspanclass%3D%22n%22%3Efalse%3C%2Fspan%3E%29%3AUInt64-instance-method">Writer#add</a>()</code>.</p></div>
+
+ <br/>
+ <div>
+
+ </div>
+ </div>
+
+ <div class="entry-detail" id="new&#40;data:Bytes&#41;-class-method">
+ <div class="signature">
+
+ def self.<strong>new</strong>(data : Bytes)
+
+ <a class="method-permalink" href="#new%28data%3ABytes%29-class-method">#</a>
+ </div>
+
+ <div class="doc"><p>Parse ZIP64 extra data from given buffer.</p>
+
+<p>You should not need to instantiate this class directly; it is
+created as-needed by <code><a href="../../Zip/Archive.html">Archive</a></code>.</p></div>
+
+ <br/>
+ <div>
+
+ </div>
+ </div>
+
+
+
+
+ <h2>Instance Method Detail</h2>
+
+ <div class="entry-detail" id="compressed_size:UInt64-instance-method">
+ <div class="signature">
+
+ def <strong>compressed_size</strong> : UInt64
+
+ <a class="method-permalink" href="#compressed_size%3AUInt64-instance-method">#</a>
+ </div>
+
+ <div class="doc"><p>Compressed file size (64-bit unsigned integer).</p></div>
+
+ <br/>
+ <div>
+
+ </div>
+ </div>
+
+ <div class="entry-detail" id="disk_start:UInt32|Nil-instance-method">
+ <div class="signature">
+
+ def <strong>disk_start</strong> : UInt32 | Nil
+
+ <a class="method-permalink" href="#disk_start%3AUInt32%7CNil-instance-method">#</a>
+ </div>
+
+ <div class="doc"><p>Starting disk (optional).</p></div>
+
+ <br/>
+ <div>
+
+ </div>
+ </div>
+
+ <div class="entry-detail" id="pos:UInt64|Nil-instance-method">
+ <div class="signature">
+
+ def <strong>pos</strong> : UInt64 | Nil
+
+ <a class="method-permalink" href="#pos%3AUInt64%7CNil-instance-method">#</a>
+ </div>
+
+ <div class="doc"><p>Position in output (optional).</p></div>
+
+ <br/>
+ <div>
+
+ </div>
+ </div>
+
+ <div class="entry-detail" id="size:UInt64-instance-method">
+ <div class="signature">
+
+ def <strong>size</strong> : UInt64
+
+ <a class="method-permalink" href="#size%3AUInt64-instance-method">#</a>
+ </div>
+
+ <div class="doc"><p>File size (64-bit unsigned integer).</p></div>
+
+ <br/>
+ <div>
+
+ </div>
+ </div>
+
+
+
+
+
+</div>
+
+</body>
+</html>
diff --git a/Zip/GeneralFlags.html b/Zip/GeneralFlags.html
index 8778ab7..2d2480c 100644
--- a/Zip/GeneralFlags.html
+++ b/Zip/GeneralFlags.html
@@ -50,9 +50,24 @@
</li>
- <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
+ <li class="parent " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
<a href="../Zip/Extra.html">Extra</a>
+ <ul>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Base" data-name="zip::extra::base">
+ <a href="../Zip/Extra/Base.html">Base</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Zip64" data-name="zip::extra::zip64">
+ <a href="../Zip/Extra/Zip64.html">Zip64</a>
+
+ </li>
+
+</ul>
+
+
</li>
<li class=" current" data-id="github.com/pablotron/zip-crystal/Zip/GeneralFlags" data-name="zip::generalflags">
diff --git a/Zip/NoneCompressionHelper.html b/Zip/NoneCompressionHelper.html
index b8b8be6..56567ba 100644
--- a/Zip/NoneCompressionHelper.html
+++ b/Zip/NoneCompressionHelper.html
@@ -50,9 +50,24 @@
</li>
- <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
+ <li class="parent " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
<a href="../Zip/Extra.html">Extra</a>
+ <ul>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Base" data-name="zip::extra::base">
+ <a href="../Zip/Extra/Base.html">Base</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Zip64" data-name="zip::extra::zip64">
+ <a href="../Zip/Extra/Zip64.html">Zip64</a>
+
+ </li>
+
+</ul>
+
+
</li>
<li class=" " data-id="github.com/pablotron/zip-crystal/Zip/GeneralFlags" data-name="zip::generalflags">
diff --git a/Zip/Source.html b/Zip/Source.html
index 894aef1..dd0f17e 100644
--- a/Zip/Source.html
+++ b/Zip/Source.html
@@ -50,9 +50,24 @@
</li>
- <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
+ <li class="parent " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
<a href="../Zip/Extra.html">Extra</a>
+ <ul>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Base" data-name="zip::extra::base">
+ <a href="../Zip/Extra/Base.html">Base</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Zip64" data-name="zip::extra::zip64">
+ <a href="../Zip/Extra/Zip64.html">Zip64</a>
+
+ </li>
+
+</ul>
+
+
</li>
<li class=" " data-id="github.com/pablotron/zip-crystal/Zip/GeneralFlags" data-name="zip::generalflags">
diff --git a/Zip/TimeHelper.html b/Zip/TimeHelper.html
index de19300..1b424cc 100644
--- a/Zip/TimeHelper.html
+++ b/Zip/TimeHelper.html
@@ -50,9 +50,24 @@
</li>
- <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
+ <li class="parent " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
<a href="../Zip/Extra.html">Extra</a>
+ <ul>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Base" data-name="zip::extra::base">
+ <a href="../Zip/Extra/Base.html">Base</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Zip64" data-name="zip::extra::zip64">
+ <a href="../Zip/Extra/Zip64.html">Zip64</a>
+
+ </li>
+
+</ul>
+
+
</li>
<li class=" " data-id="github.com/pablotron/zip-crystal/Zip/GeneralFlags" data-name="zip::generalflags">
diff --git a/Zip/Version.html b/Zip/Version.html
index f8a04b4..58a5a36 100644
--- a/Zip/Version.html
+++ b/Zip/Version.html
@@ -50,9 +50,24 @@
</li>
- <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
+ <li class="parent " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
<a href="../Zip/Extra.html">Extra</a>
+ <ul>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Base" data-name="zip::extra::base">
+ <a href="../Zip/Extra/Base.html">Base</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Zip64" data-name="zip::extra::zip64">
+ <a href="../Zip/Extra/Zip64.html">Zip64</a>
+
+ </li>
+
+</ul>
+
+
</li>
<li class=" " data-id="github.com/pablotron/zip-crystal/Zip/GeneralFlags" data-name="zip::generalflags">
@@ -187,6 +202,15 @@ puts <span class="s">&quot;version &#61; </span><span class="i">#{</span></span>
</dd>
+ <dt class="entry-const" id="ZIP64">
+ <strong>ZIP64</strong> = <code><span class="k">new</span>(<span class="n">4</span>, <span class="n">6</span>)</code>
+ </dt>
+
+ <dd class="entry-const-doc">
+ <p>Version needed to extract Zip64 entries.</p>
+ </dd>
+
+
</dl>
diff --git a/Zip/Writer.html b/Zip/Writer.html
index 0b4a935..64ed2e5 100644
--- a/Zip/Writer.html
+++ b/Zip/Writer.html
@@ -50,9 +50,24 @@
</li>
- <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
+ <li class="parent " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
<a href="../Zip/Extra.html">Extra</a>
+ <ul>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Base" data-name="zip::extra::base">
+ <a href="../Zip/Extra/Base.html">Base</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Zip64" data-name="zip::extra::zip64">
+ <a href="../Zip/Extra/Zip64.html">Zip64</a>
+
+ </li>
+
+</ul>
+
+
</li>
<li class=" " data-id="github.com/pablotron/zip-crystal/Zip/GeneralFlags" data-name="zip::generalflags">
@@ -137,7 +152,7 @@
<p>Zip file writer.</p>
<p>You shouldn't need to instantiate this class directly; use
-<code><a href="../Zip.html#write%28io%3AIO%2Cpos%3AUInt32%3D%3Cspanclass%3D%22n%22%3E0_u32%3C%2Fspan%3E%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Cversion%3AVersion%3D%3Cspanclass%3D%22t%22%3EVersion%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFAULT%3C%2Fspan%3E%2C%26cb%3AWriter-%3E%29%3AUInt32-class-method">Zip.write</a>()</code> instead.</p>
+<code><a href="../Zip.html#write%28io%3AIO%2Cpos%3AUInt64%3D%3Cspanclass%3D%22n%22%3E0_u64%3C%2Fspan%3E%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Cversion%3AVersion%3D%3Cspanclass%3D%22t%22%3EVersion%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFAULT%3C%2Fspan%3E%2C%26cb%3AWriter-%3E%29%3AUInt64-class-method">Zip.write</a>()</code> instead.</p>
@@ -163,7 +178,7 @@
<ul class="list-summary">
<li class="entry-summary">
- <a href="#new%28io%3AIO%2Cpos%3AUInt32%3D%3Cspanclass%3D%22n%22%3E0%3C%2Fspan%3E%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Cversion%3AVersion%3D%3Cspanclass%3D%22t%22%3EVersion%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFAULT%3C%2Fspan%3E%29-class-method" class="signature"><strong>.new</strong>(io : IO, pos : UInt32 = <span class="n">0</span>, comment : String = <span class="s">&quot;&quot;</span>, version : Version = <span class="t">Version</span><span class="t">::</span><span class="t">DEFAULT</span>)</a>
+ <a href="#new%28io%3AIO%2Cpos%3AUInt64%3D%3Cspanclass%3D%22n%22%3E0_u64%3C%2Fspan%3E%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Cversion%3AVersion%3D%3Cspanclass%3D%22t%22%3EVersion%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFAULT%3C%2Fspan%3E%29-class-method" class="signature"><strong>.new</strong>(io : IO, pos : UInt64 = <span class="n">0_u64</span>, comment : String = <span class="s">&quot;&quot;</span>, version : Version = <span class="t">Version</span><span class="t">::</span><span class="t">DEFAULT</span>)</a>
<div class="summary"><p>Create a new <code><a href="../Zip/Writer.html">Writer</a></code> object.</p></div>
@@ -177,35 +192,35 @@
<ul class="list-summary">
<li class="entry-summary">
- <a href="#add%28path%3AString%2Cio%3AIO%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt32-instance-method" class="signature"><strong>#add</strong>(path : String, io : IO, method : CompressionMethod = <span class="t">CompressionMethod</span><span class="t">::</span><span class="t">DEFLATE</span>, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>) : UInt32</a>
+ <a href="#add%28path%3AString%2Cio%3AIO%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Czip64%3ABool%3D%3Cspanclass%3D%22n%22%3Efalse%3C%2Fspan%3E%29%3AUInt64-instance-method" class="signature"><strong>#add</strong>(path : String, io : IO, method : CompressionMethod = <span class="t">CompressionMethod</span><span class="t">::</span><span class="t">DEFLATE</span>, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>, zip64 : Bool = <span class="n">false</span>) : UInt64</a>
<div class="summary"><p>Read data from <code>IO</code> <em>io</em>, write it to <em>path</em> in archive, then return the number of bytes written.</p></div>
</li>
<li class="entry-summary">
- <a href="#add%28path%3AString%2Cdata%3AString%7CBytes%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt32-instance-method" class="signature"><strong>#add</strong>(path : String, data : String | Bytes, method : CompressionMethod = <span class="t">CompressionMethod</span><span class="t">::</span><span class="t">DEFLATE</span>, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>) : UInt32</a>
+ <a href="#add%28path%3AString%2Cdata%3AString%7CBytes%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt64-instance-method" class="signature"><strong>#add</strong>(path : String, data : String | Bytes, method : CompressionMethod = <span class="t">CompressionMethod</span><span class="t">::</span><span class="t">DEFLATE</span>, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>) : UInt64</a>
<div class="summary"><p>Write <em>data</em> to <em>path</em> in archive and return number of bytes written.</p></div>
</li>
<li class="entry-summary">
- <a href="#add_dir%28path%3AString%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt32-instance-method" class="signature"><strong>#add_dir</strong>(path : String, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>) : UInt32</a>
+ <a href="#add_dir%28path%3AString%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt64-instance-method" class="signature"><strong>#add_dir</strong>(path : String, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>) : UInt64</a>
<div class="summary"><p>Add empty directory to archive as <em>path</em> and return number of bytes written.</p></div>
</li>
<li class="entry-summary">
- <a href="#add_file%28path%3AString%2Cfile_path%3AString%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt32-instance-method" class="signature"><strong>#add_file</strong>(path : String, file_path : String, method : CompressionMethod = <span class="t">CompressionMethod</span><span class="t">::</span><span class="t">DEFLATE</span>, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>) : UInt32</a>
+ <a href="#add_file%28path%3AString%2Cfile_path%3AString%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt64-instance-method" class="signature"><strong>#add_file</strong>(path : String, file_path : String, method : CompressionMethod = <span class="t">CompressionMethod</span><span class="t">::</span><span class="t">DEFLATE</span>, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>) : UInt64</a>
<div class="summary"><p>Add local file <em>file_path</em> to archive as <em>path</em> and return number of bytes written.</p></div>
</li>
<li class="entry-summary">
- <a href="#bytes_written%3AUInt32-instance-method" class="signature"><strong>#bytes_written</strong> : UInt32</a>
+ <a href="#bytes_written%3AUInt64-instance-method" class="signature"><strong>#bytes_written</strong> : UInt64</a>
<div class="summary"><p>Return the total number of bytes written so far.</p></div>
@@ -252,18 +267,18 @@
<h2>Class Method Detail</h2>
- <div class="entry-detail" id="new&#40;io:IO,pos:UInt32&#61;&lt;spanclass&#61;&quot;n&quot;&gt;0&lt;/span&gt;,comment:String&#61;&lt;spanclass&#61;&quot;s&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;,version:Version&#61;&lt;spanclass&#61;&quot;t&quot;&gt;Version&lt;/span&gt;&lt;spanclass&#61;&quot;t&quot;&gt;::&lt;/span&gt;&lt;spanclass&#61;&quot;t&quot;&gt;DEFAULT&lt;/span&gt;&#41;-class-method">
+ <div class="entry-detail" id="new&#40;io:IO,pos:UInt64&#61;&lt;spanclass&#61;&quot;n&quot;&gt;0_u64&lt;/span&gt;,comment:String&#61;&lt;spanclass&#61;&quot;s&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;,version:Version&#61;&lt;spanclass&#61;&quot;t&quot;&gt;Version&lt;/span&gt;&lt;spanclass&#61;&quot;t&quot;&gt;::&lt;/span&gt;&lt;spanclass&#61;&quot;t&quot;&gt;DEFAULT&lt;/span&gt;&#41;-class-method">
<div class="signature">
- def self.<strong>new</strong>(io : IO, pos : UInt32 = <span class="n">0</span>, comment : String = <span class="s">&quot;&quot;</span>, version : <a href="../Zip/Version.html">Version</a> = <span class="t">Version</span><span class="t">::</span><span class="t">DEFAULT</span>)
+ def self.<strong>new</strong>(io : IO, pos : UInt64 = <span class="n">0_u64</span>, comment : String = <span class="s">&quot;&quot;</span>, version : <a href="../Zip/Version.html">Version</a> = <span class="t">Version</span><span class="t">::</span><span class="t">DEFAULT</span>)
- <a class="method-permalink" href="#new%28io%3AIO%2Cpos%3AUInt32%3D%3Cspanclass%3D%22n%22%3E0%3C%2Fspan%3E%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Cversion%3AVersion%3D%3Cspanclass%3D%22t%22%3EVersion%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFAULT%3C%2Fspan%3E%29-class-method">#</a>
+ <a class="method-permalink" href="#new%28io%3AIO%2Cpos%3AUInt64%3D%3Cspanclass%3D%22n%22%3E0_u64%3C%2Fspan%3E%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Cversion%3AVersion%3D%3Cspanclass%3D%22t%22%3EVersion%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFAULT%3C%2Fspan%3E%29-class-method">#</a>
</div>
<div class="doc"><p>Create a new <code><a href="../Zip/Writer.html">Writer</a></code> object.</p>
<p>You shouldn't need to instantiate this class directly; use
-<code><a href="../Zip.html#write%28io%3AIO%2Cpos%3AUInt32%3D%3Cspanclass%3D%22n%22%3E0_u32%3C%2Fspan%3E%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Cversion%3AVersion%3D%3Cspanclass%3D%22t%22%3EVersion%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFAULT%3C%2Fspan%3E%2C%26cb%3AWriter-%3E%29%3AUInt32-class-method">Zip.write</a>()</code> instead.</p></div>
+<code><a href="../Zip.html#write%28io%3AIO%2Cpos%3AUInt64%3D%3Cspanclass%3D%22n%22%3E0_u64%3C%2Fspan%3E%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Cversion%3AVersion%3D%3Cspanclass%3D%22t%22%3EVersion%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFAULT%3C%2Fspan%3E%2C%26cb%3AWriter-%3E%29%3AUInt64-class-method">Zip.write</a>()</code> instead.</p></div>
<br/>
<div>
@@ -276,12 +291,12 @@
<h2>Instance Method Detail</h2>
- <div class="entry-detail" id="add&#40;path:String,io:IO,method:CompressionMethod&#61;&lt;spanclass&#61;&quot;t&quot;&gt;CompressionMethod&lt;/span&gt;&lt;spanclass&#61;&quot;t&quot;&gt;::&lt;/span&gt;&lt;spanclass&#61;&quot;t&quot;&gt;DEFLATE&lt;/span&gt;,time:Time&#61;&lt;spanclass&#61;&quot;t&quot;&gt;Time&lt;/span&gt;.now,comment:String&#61;&lt;spanclass&#61;&quot;s&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;&#41;:UInt32-instance-method">
+ <div class="entry-detail" id="add&#40;path:String,io:IO,method:CompressionMethod&#61;&lt;spanclass&#61;&quot;t&quot;&gt;CompressionMethod&lt;/span&gt;&lt;spanclass&#61;&quot;t&quot;&gt;::&lt;/span&gt;&lt;spanclass&#61;&quot;t&quot;&gt;DEFLATE&lt;/span&gt;,time:Time&#61;&lt;spanclass&#61;&quot;t&quot;&gt;Time&lt;/span&gt;.now,comment:String&#61;&lt;spanclass&#61;&quot;s&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;,zip64:Bool&#61;&lt;spanclass&#61;&quot;n&quot;&gt;false&lt;/span&gt;&#41;:UInt64-instance-method">
<div class="signature">
- def <strong>add</strong>(path : String, io : IO, method : <a href="../Zip/CompressionMethod.html">CompressionMethod</a> = <span class="t">CompressionMethod</span><span class="t">::</span><span class="t">DEFLATE</span>, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>) : UInt32
+ def <strong>add</strong>(path : String, io : IO, method : <a href="../Zip/CompressionMethod.html">CompressionMethod</a> = <span class="t">CompressionMethod</span><span class="t">::</span><span class="t">DEFLATE</span>, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>, zip64 : Bool = <span class="n">false</span>) : UInt64
- <a class="method-permalink" href="#add%28path%3AString%2Cio%3AIO%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt32-instance-method">#</a>
+ <a class="method-permalink" href="#add%28path%3AString%2Cio%3AIO%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Czip64%3ABool%3D%3Cspanclass%3D%22n%22%3Efalse%3C%2Fspan%3E%29%3AUInt64-instance-method">#</a>
</div>
<div class="doc"><p>Read data from <code>IO</code> <em>io</em>, write it to <em>path</em> in archive, then
@@ -304,12 +319,12 @@ end</code></pre></div>
</div>
</div>
- <div class="entry-detail" id="add&#40;path:String,data:String|Bytes,method:CompressionMethod&#61;&lt;spanclass&#61;&quot;t&quot;&gt;CompressionMethod&lt;/span&gt;&lt;spanclass&#61;&quot;t&quot;&gt;::&lt;/span&gt;&lt;spanclass&#61;&quot;t&quot;&gt;DEFLATE&lt;/span&gt;,time:Time&#61;&lt;spanclass&#61;&quot;t&quot;&gt;Time&lt;/span&gt;.now,comment:String&#61;&lt;spanclass&#61;&quot;s&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;&#41;:UInt32-instance-method">
+ <div class="entry-detail" id="add&#40;path:String,data:String|Bytes,method:CompressionMethod&#61;&lt;spanclass&#61;&quot;t&quot;&gt;CompressionMethod&lt;/span&gt;&lt;spanclass&#61;&quot;t&quot;&gt;::&lt;/span&gt;&lt;spanclass&#61;&quot;t&quot;&gt;DEFLATE&lt;/span&gt;,time:Time&#61;&lt;spanclass&#61;&quot;t&quot;&gt;Time&lt;/span&gt;.now,comment:String&#61;&lt;spanclass&#61;&quot;s&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;&#41;:UInt64-instance-method">
<div class="signature">
- def <strong>add</strong>(path : String, data : String | Bytes, method : <a href="../Zip/CompressionMethod.html">CompressionMethod</a> = <span class="t">CompressionMethod</span><span class="t">::</span><span class="t">DEFLATE</span>, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>) : UInt32
+ def <strong>add</strong>(path : String, data : String | Bytes, method : <a href="../Zip/CompressionMethod.html">CompressionMethod</a> = <span class="t">CompressionMethod</span><span class="t">::</span><span class="t">DEFLATE</span>, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>) : UInt64
- <a class="method-permalink" href="#add%28path%3AString%2Cdata%3AString%7CBytes%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt32-instance-method">#</a>
+ <a class="method-permalink" href="#add%28path%3AString%2Cdata%3AString%7CBytes%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt64-instance-method">#</a>
</div>
<div class="doc"><p>Write <em>data</em> to <em>path</em> in archive and return number of bytes
@@ -329,12 +344,12 @@ written.</p>
</div>
</div>
- <div class="entry-detail" id="add_dir&#40;path:String,time:Time&#61;&lt;spanclass&#61;&quot;t&quot;&gt;Time&lt;/span&gt;.now,comment:String&#61;&lt;spanclass&#61;&quot;s&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;&#41;:UInt32-instance-method">
+ <div class="entry-detail" id="add_dir&#40;path:String,time:Time&#61;&lt;spanclass&#61;&quot;t&quot;&gt;Time&lt;/span&gt;.now,comment:String&#61;&lt;spanclass&#61;&quot;s&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;&#41;:UInt64-instance-method">
<div class="signature">
- def <strong>add_dir</strong>(path : String, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>) : UInt32
+ def <strong>add_dir</strong>(path : String, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>) : UInt64
- <a class="method-permalink" href="#add_dir%28path%3AString%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt32-instance-method">#</a>
+ <a class="method-permalink" href="#add_dir%28path%3AString%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt64-instance-method">#</a>
</div>
<div class="doc"><p>Add empty directory to archive as <em>path</em> and return number of
@@ -354,12 +369,12 @@ bytes written.</p>
</div>
</div>
- <div class="entry-detail" id="add_file&#40;path:String,file_path:String,method:CompressionMethod&#61;&lt;spanclass&#61;&quot;t&quot;&gt;CompressionMethod&lt;/span&gt;&lt;spanclass&#61;&quot;t&quot;&gt;::&lt;/span&gt;&lt;spanclass&#61;&quot;t&quot;&gt;DEFLATE&lt;/span&gt;,time:Time&#61;&lt;spanclass&#61;&quot;t&quot;&gt;Time&lt;/span&gt;.now,comment:String&#61;&lt;spanclass&#61;&quot;s&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;&#41;:UInt32-instance-method">
+ <div class="entry-detail" id="add_file&#40;path:String,file_path:String,method:CompressionMethod&#61;&lt;spanclass&#61;&quot;t&quot;&gt;CompressionMethod&lt;/span&gt;&lt;spanclass&#61;&quot;t&quot;&gt;::&lt;/span&gt;&lt;spanclass&#61;&quot;t&quot;&gt;DEFLATE&lt;/span&gt;,time:Time&#61;&lt;spanclass&#61;&quot;t&quot;&gt;Time&lt;/span&gt;.now,comment:String&#61;&lt;spanclass&#61;&quot;s&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;&#41;:UInt64-instance-method">
<div class="signature">
- def <strong>add_file</strong>(path : String, file_path : String, method : <a href="../Zip/CompressionMethod.html">CompressionMethod</a> = <span class="t">CompressionMethod</span><span class="t">::</span><span class="t">DEFLATE</span>, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>) : UInt32
+ def <strong>add_file</strong>(path : String, file_path : String, method : <a href="../Zip/CompressionMethod.html">CompressionMethod</a> = <span class="t">CompressionMethod</span><span class="t">::</span><span class="t">DEFLATE</span>, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>) : UInt64
- <a class="method-permalink" href="#add_file%28path%3AString%2Cfile_path%3AString%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt32-instance-method">#</a>
+ <a class="method-permalink" href="#add_file%28path%3AString%2Cfile_path%3AString%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt64-instance-method">#</a>
</div>
<div class="doc"><p>Add local file <em>file_path</em> to archive as <em>path</em> and return number
@@ -379,12 +394,12 @@ of bytes written.</p>
</div>
</div>
- <div class="entry-detail" id="bytes_written:UInt32-instance-method">
+ <div class="entry-detail" id="bytes_written:UInt64-instance-method">
<div class="signature">
- def <strong>bytes_written</strong> : UInt32
+ def <strong>bytes_written</strong> : UInt64
- <a class="method-permalink" href="#bytes_written%3AUInt32-instance-method">#</a>
+ <a class="method-permalink" href="#bytes_written%3AUInt64-instance-method">#</a>
</div>
<div class="doc"><p>Return the total number of bytes written so far.</p>
diff --git a/Zip/Writers.html b/Zip/Writers.html
index ec73e32..c6d03b2 100644
--- a/Zip/Writers.html
+++ b/Zip/Writers.html
@@ -50,9 +50,24 @@
</li>
- <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
+ <li class="parent " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
<a href="../Zip/Extra.html">Extra</a>
+ <ul>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Base" data-name="zip::extra::base">
+ <a href="../Zip/Extra/Base.html">Base</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Zip64" data-name="zip::extra::zip64">
+ <a href="../Zip/Extra/Zip64.html">Zip64</a>
+
+ </li>
+
+</ul>
+
+
</li>
<li class=" " data-id="github.com/pablotron/zip-crystal/Zip/GeneralFlags" data-name="zip::generalflags">
@@ -130,6 +145,10 @@
+ <h2>Overview</h2>
+
+ <p>Classes for writing to output archives.</p>
+
diff --git a/Zip/Writers/DirEntry.html b/Zip/Writers/DirEntry.html
index a98b19c..e6d6416 100644
--- a/Zip/Writers/DirEntry.html
+++ b/Zip/Writers/DirEntry.html
@@ -50,9 +50,24 @@
</li>
- <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
+ <li class="parent " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
<a href="../../Zip/Extra.html">Extra</a>
+ <ul>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Base" data-name="zip::extra::base">
+ <a href="../../Zip/Extra/Base.html">Base</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Zip64" data-name="zip::extra::zip64">
+ <a href="../../Zip/Extra/Zip64.html">Zip64</a>
+
+ </li>
+
+</ul>
+
+
</li>
<li class=" " data-id="github.com/pablotron/zip-crystal/Zip/GeneralFlags" data-name="zip::generalflags">
@@ -137,7 +152,7 @@
<p>Internal class used to store files for <code><a href="../../Zip/Writer.html">Writer</a></code> instance.</p>
<p>You should not need to instantiate this class directly; use
-<code><a href="../../Zip/Writer.html#add_dir%28path%3AString%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt32-instance-method">Writer#add_dir</a></code> instead.</p>
+<code><a href="../../Zip/Writer.html#add_dir%28path%3AString%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt64-instance-method">Writer#add_dir</a></code> instead.</p>
@@ -179,7 +194,7 @@
<ul class="list-summary">
<li class="entry-summary">
- <a href="#new%28pos%3AUInt32%2Cpath%3AString%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29-class-method" class="signature"><strong>.new</strong>(pos : UInt32, path : String, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>)</a>
+ <a href="#new%28pos%3AUInt64%2Cpath%3AString%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29-class-method" class="signature"><strong>.new</strong>(pos : UInt64, path : String, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>)</a>
<div class="summary"><p>Create a new DirEntry instance.</p></div>
@@ -200,8 +215,8 @@
<h3>Instance methods inherited from class <code><a href="../../Zip/Writers/WriterEntry.html">Zip::Writers::WriterEntry</a></code></h3>
- <a href="../../Zip/Writers/WriterEntry.html#to_s%28dst_io%29%3AUInt32-instance-method" class="tooltip">
- <span>to_s(dst_io) : UInt32</span>
+ <a href="../../Zip/Writers/WriterEntry.html#to_s%28dst_io%29%3AUInt64-instance-method" class="tooltip">
+ <span>to_s(dst_io) : UInt64</span>
to_s</a>,
@@ -215,9 +230,14 @@
write_central</a>,
- <a href="../../Zip/Writers/WriterEntry.html#write_footer%28io%3AIO%2Ccrc%3AUInt32%2Csrc_len%3AUInt32%2Cdst_len%3AUInt32%29%3AUInt32-instance-method" class="tooltip">
- <span>write_footer(io : IO, crc : UInt32, src_len : UInt32, dst_len : UInt32) : UInt32</span>
- write_footer</a>
+ <a href="../../Zip/Writers/WriterEntry.html#write_footer%28io%3AIO%2Ccrc%3AUInt32%2Csrc_len%3AUInt64%2Cdst_len%3AUInt64%2Czip64%3ABool%29%3AUInt32-instance-method" class="tooltip">
+ <span>write_footer(io : IO, crc : UInt32, src_len : UInt64, dst_len : UInt64, zip64 : Bool) : UInt32</span>
+ write_footer</a>,
+
+
+ <a href="../../Zip/Writers/WriterEntry.html#zip64%3F%3ABool-instance-method" class="tooltip">
+ <span>zip64? : Bool</span>
+ zip64?</a>
@@ -227,8 +247,8 @@
<h3>Class methods inherited from class <code><a href="../../Zip/Writers/WriterEntry.html">Zip::Writers::WriterEntry</a></code></h3>
- <a href="../../Zip/Writers/WriterEntry.html#new%28pos%3AUInt32%2Cpath%3AString%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Cflags%3AGeneralFlags%3D%3Cspanclass%3D%22t%22%3EGeneralFlags%3C%2Fspan%3E.flags%2Cexternal%3AUInt32%3D%3Cspanclass%3D%22n%22%3E0_u32%3C%2Fspan%3E%29-class-method" class="tooltip">
- <span>new(pos : UInt32, path : String, method : CompressionMethod = <span class="t">CompressionMethod</span><span class="t">::</span><span class="t">DEFLATE</span>, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>, flags : GeneralFlags = <span class="t">GeneralFlags</span>.flags, external : UInt32 = <span class="n">0_u32</span>)</span>
+ <a href="../../Zip/Writers/WriterEntry.html#new%28pos%3AUInt64%2Cpath%3AString%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Cflags%3AGeneralFlags%3D%3Cspanclass%3D%22t%22%3EGeneralFlags%3C%2Fspan%3E.flags%2Cexternal%3AUInt32%3D%3Cspanclass%3D%22n%22%3E0_u32%3C%2Fspan%3E%2Czip64%3ABool%3D%3Cspanclass%3D%22n%22%3Efalse%3C%2Fspan%3E%29-class-method" class="tooltip">
+ <span>new(pos : UInt64, path : String, method : CompressionMethod = <span class="t">CompressionMethod</span><span class="t">::</span><span class="t">DEFLATE</span>, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>, flags : GeneralFlags = <span class="t">GeneralFlags</span>.flags, external : UInt32 = <span class="n">0_u32</span>, zip64 : Bool = <span class="n">false</span>)</span>
new</a>
@@ -261,18 +281,18 @@
<h2>Class Method Detail</h2>
- <div class="entry-detail" id="new&#40;pos:UInt32,path:String,time:Time&#61;&lt;spanclass&#61;&quot;t&quot;&gt;Time&lt;/span&gt;.now,comment:String&#61;&lt;spanclass&#61;&quot;s&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;&#41;-class-method">
+ <div class="entry-detail" id="new&#40;pos:UInt64,path:String,time:Time&#61;&lt;spanclass&#61;&quot;t&quot;&gt;Time&lt;/span&gt;.now,comment:String&#61;&lt;spanclass&#61;&quot;s&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;&#41;-class-method">
<div class="signature">
- def self.<strong>new</strong>(pos : UInt32, path : String, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>)
+ def self.<strong>new</strong>(pos : UInt64, path : String, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>)
- <a class="method-permalink" href="#new%28pos%3AUInt32%2Cpath%3AString%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29-class-method">#</a>
+ <a class="method-permalink" href="#new%28pos%3AUInt64%2Cpath%3AString%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29-class-method">#</a>
</div>
<div class="doc"><p>Create a new DirEntry instance.</p>
<p>You should not need to call this method directly; use
-<code><a href="../../Zip/Writer.html#add_dir%28path%3AString%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt32-instance-method">Writer#add_dir</a></code> instead.</p></div>
+<code><a href="../../Zip/Writer.html#add_dir%28path%3AString%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt64-instance-method">Writer#add_dir</a></code> instead.</p></div>
<br/>
<div>
diff --git a/Zip/Writers/FileEntry.html b/Zip/Writers/FileEntry.html
index b703720..8d732b9 100644
--- a/Zip/Writers/FileEntry.html
+++ b/Zip/Writers/FileEntry.html
@@ -50,9 +50,24 @@
</li>
- <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
+ <li class="parent " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
<a href="../../Zip/Extra.html">Extra</a>
+ <ul>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Base" data-name="zip::extra::base">
+ <a href="../../Zip/Extra/Base.html">Base</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Zip64" data-name="zip::extra::zip64">
+ <a href="../../Zip/Extra/Zip64.html">Zip64</a>
+
+ </li>
+
+</ul>
+
+
</li>
<li class=" " data-id="github.com/pablotron/zip-crystal/Zip/GeneralFlags" data-name="zip::generalflags">
@@ -136,8 +151,8 @@
<p>Internal class used to store files for <code><a href="../../Zip/Writer.html">Writer</a></code> instance.</p>
-<p>You should not need to call this method directly; it is called
-automatically by <code><a href="../../Zip/Writer.html#add%28path%3AString%2Cio%3AIO%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt32-instance-method">Writer#add</a></code> and <code><a href="../../Zip/Writer.html#add_file%28path%3AString%2Cfile_path%3AString%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt32-instance-method">Writer#add_file</a></code>.</p>
+<p>You should not need to instantiate this class directly; it is
+called automatically by <code><a href="../../Zip/Writer.html#add%28path%3AString%2Cio%3AIO%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Czip64%3ABool%3D%3Cspanclass%3D%22n%22%3Efalse%3C%2Fspan%3E%29%3AUInt64-instance-method">Writer#add</a></code> and <code><a href="../../Zip/Writer.html#add_file%28path%3AString%2Cfile_path%3AString%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt64-instance-method">Writer#add_file</a></code>.</p>
@@ -188,7 +203,7 @@ automatically by <code><a href="../../Zip/Writer.html#add%28path%3AString%2Cio%3
<ul class="list-summary">
<li class="entry-summary">
- <a href="#new%28pos%3AUInt32%2Cpath%3AString%2Cio%3AIO%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29-class-method" class="signature"><strong>.new</strong>(pos : UInt32, path : String, io : IO, method : CompressionMethod = <span class="t">CompressionMethod</span><span class="t">::</span><span class="t">DEFLATE</span>, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>)</a>
+ <a href="#new%28pos%3AUInt64%2Cpath%3AString%2Cio%3AIO%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Czip64%3ABool%3D%3Cspanclass%3D%22n%22%3Efalse%3C%2Fspan%3E%29-class-method" class="signature"><strong>.new</strong>(pos : UInt64, path : String, io : IO, method : CompressionMethod = <span class="t">CompressionMethod</span><span class="t">::</span><span class="t">DEFLATE</span>, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>, zip64 : Bool = <span class="n">false</span>)</a>
<div class="summary"><p>Create a new FileWriterEntry instance.</p></div>
@@ -223,8 +238,8 @@ automatically by <code><a href="../../Zip/Writer.html#add%28path%3AString%2Cio%3
<h3>Instance methods inherited from class <code><a href="../../Zip/Writers/WriterEntry.html">Zip::Writers::WriterEntry</a></code></h3>
- <a href="../../Zip/Writers/WriterEntry.html#to_s%28dst_io%29%3AUInt32-instance-method" class="tooltip">
- <span>to_s(dst_io) : UInt32</span>
+ <a href="../../Zip/Writers/WriterEntry.html#to_s%28dst_io%29%3AUInt64-instance-method" class="tooltip">
+ <span>to_s(dst_io) : UInt64</span>
to_s</a>,
@@ -238,9 +253,14 @@ automatically by <code><a href="../../Zip/Writer.html#add%28path%3AString%2Cio%3
write_central</a>,
- <a href="../../Zip/Writers/WriterEntry.html#write_footer%28io%3AIO%2Ccrc%3AUInt32%2Csrc_len%3AUInt32%2Cdst_len%3AUInt32%29%3AUInt32-instance-method" class="tooltip">
- <span>write_footer(io : IO, crc : UInt32, src_len : UInt32, dst_len : UInt32) : UInt32</span>
- write_footer</a>
+ <a href="../../Zip/Writers/WriterEntry.html#write_footer%28io%3AIO%2Ccrc%3AUInt32%2Csrc_len%3AUInt64%2Cdst_len%3AUInt64%2Czip64%3ABool%29%3AUInt32-instance-method" class="tooltip">
+ <span>write_footer(io : IO, crc : UInt32, src_len : UInt64, dst_len : UInt64, zip64 : Bool) : UInt32</span>
+ write_footer</a>,
+
+
+ <a href="../../Zip/Writers/WriterEntry.html#zip64%3F%3ABool-instance-method" class="tooltip">
+ <span>zip64? : Bool</span>
+ zip64?</a>
@@ -250,8 +270,8 @@ automatically by <code><a href="../../Zip/Writer.html#add%28path%3AString%2Cio%3
<h3>Class methods inherited from class <code><a href="../../Zip/Writers/WriterEntry.html">Zip::Writers::WriterEntry</a></code></h3>
- <a href="../../Zip/Writers/WriterEntry.html#new%28pos%3AUInt32%2Cpath%3AString%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Cflags%3AGeneralFlags%3D%3Cspanclass%3D%22t%22%3EGeneralFlags%3C%2Fspan%3E.flags%2Cexternal%3AUInt32%3D%3Cspanclass%3D%22n%22%3E0_u32%3C%2Fspan%3E%29-class-method" class="tooltip">
- <span>new(pos : UInt32, path : String, method : CompressionMethod = <span class="t">CompressionMethod</span><span class="t">::</span><span class="t">DEFLATE</span>, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>, flags : GeneralFlags = <span class="t">GeneralFlags</span>.flags, external : UInt32 = <span class="n">0_u32</span>)</span>
+ <a href="../../Zip/Writers/WriterEntry.html#new%28pos%3AUInt64%2Cpath%3AString%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Cflags%3AGeneralFlags%3D%3Cspanclass%3D%22t%22%3EGeneralFlags%3C%2Fspan%3E.flags%2Cexternal%3AUInt32%3D%3Cspanclass%3D%22n%22%3E0_u32%3C%2Fspan%3E%2Czip64%3ABool%3D%3Cspanclass%3D%22n%22%3Efalse%3C%2Fspan%3E%29-class-method" class="tooltip">
+ <span>new(pos : UInt64, path : String, method : CompressionMethod = <span class="t">CompressionMethod</span><span class="t">::</span><span class="t">DEFLATE</span>, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>, flags : GeneralFlags = <span class="t">GeneralFlags</span>.flags, external : UInt32 = <span class="n">0_u32</span>, zip64 : Bool = <span class="n">false</span>)</span>
new</a>
@@ -284,18 +304,18 @@ automatically by <code><a href="../../Zip/Writer.html#add%28path%3AString%2Cio%3
<h2>Class Method Detail</h2>
- <div class="entry-detail" id="new&#40;pos:UInt32,path:String,io:IO,method:CompressionMethod&#61;&lt;spanclass&#61;&quot;t&quot;&gt;CompressionMethod&lt;/span&gt;&lt;spanclass&#61;&quot;t&quot;&gt;::&lt;/span&gt;&lt;spanclass&#61;&quot;t&quot;&gt;DEFLATE&lt;/span&gt;,time:Time&#61;&lt;spanclass&#61;&quot;t&quot;&gt;Time&lt;/span&gt;.now,comment:String&#61;&lt;spanclass&#61;&quot;s&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;&#41;-class-method">
+ <div class="entry-detail" id="new&#40;pos:UInt64,path:String,io:IO,method:CompressionMethod&#61;&lt;spanclass&#61;&quot;t&quot;&gt;CompressionMethod&lt;/span&gt;&lt;spanclass&#61;&quot;t&quot;&gt;::&lt;/span&gt;&lt;spanclass&#61;&quot;t&quot;&gt;DEFLATE&lt;/span&gt;,time:Time&#61;&lt;spanclass&#61;&quot;t&quot;&gt;Time&lt;/span&gt;.now,comment:String&#61;&lt;spanclass&#61;&quot;s&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;,zip64:Bool&#61;&lt;spanclass&#61;&quot;n&quot;&gt;false&lt;/span&gt;&#41;-class-method">
<div class="signature">
- def self.<strong>new</strong>(pos : UInt32, path : String, io : IO, method : <a href="../../Zip/CompressionMethod.html">CompressionMethod</a> = <span class="t">CompressionMethod</span><span class="t">::</span><span class="t">DEFLATE</span>, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>)
+ def self.<strong>new</strong>(pos : UInt64, path : String, io : IO, method : <a href="../../Zip/CompressionMethod.html">CompressionMethod</a> = <span class="t">CompressionMethod</span><span class="t">::</span><span class="t">DEFLATE</span>, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>, zip64 : Bool = <span class="n">false</span>)
- <a class="method-permalink" href="#new%28pos%3AUInt32%2Cpath%3AString%2Cio%3AIO%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29-class-method">#</a>
+ <a class="method-permalink" href="#new%28pos%3AUInt64%2Cpath%3AString%2Cio%3AIO%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Czip64%3ABool%3D%3Cspanclass%3D%22n%22%3Efalse%3C%2Fspan%3E%29-class-method">#</a>
</div>
<div class="doc"><p>Create a new FileWriterEntry instance.</p>
<p>You should not need to call this method directly; it is called
-automatically by <code><a href="../../Zip/Writer.html#add%28path%3AString%2Cio%3AIO%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt32-instance-method">Writer#add</a></code> and <code><a href="../../Zip/Writer.html#add_file%28path%3AString%2Cfile_path%3AString%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt32-instance-method">Writer#add_file</a></code>.</p></div>
+automatically by <code><a href="../../Zip/Writer.html#add%28path%3AString%2Cio%3AIO%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Czip64%3ABool%3D%3Cspanclass%3D%22n%22%3Efalse%3C%2Fspan%3E%29%3AUInt64-instance-method">Writer#add</a></code> and <code><a href="../../Zip/Writer.html#add_file%28path%3AString%2Cfile_path%3AString%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt64-instance-method">Writer#add_file</a></code>.</p></div>
<br/>
<div>
diff --git a/Zip/Writers/WriterEntry.html b/Zip/Writers/WriterEntry.html
index 9442e7a..274414d 100644
--- a/Zip/Writers/WriterEntry.html
+++ b/Zip/Writers/WriterEntry.html
@@ -50,9 +50,24 @@
</li>
- <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
+ <li class="parent " data-id="github.com/pablotron/zip-crystal/Zip/Extra" data-name="zip::extra">
<a href="../../Zip/Extra.html">Extra</a>
+ <ul>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Base" data-name="zip::extra::base">
+ <a href="../../Zip/Extra/Base.html">Base</a>
+
+ </li>
+
+ <li class=" " data-id="github.com/pablotron/zip-crystal/Zip/Extra/Zip64" data-name="zip::extra::zip64">
+ <a href="../../Zip/Extra/Zip64.html">Zip64</a>
+
+ </li>
+
+</ul>
+
+
</li>
<li class=" " data-id="github.com/pablotron/zip-crystal/Zip/GeneralFlags" data-name="zip::generalflags">
@@ -177,7 +192,9 @@ for <code><a href="../../Zip/Writer.html">Writer</a></code> instance.</p>
<ul class="list-summary">
<li class="entry-summary">
- <a href="#new%28pos%3AUInt32%2Cpath%3AString%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Cflags%3AGeneralFlags%3D%3Cspanclass%3D%22t%22%3EGeneralFlags%3C%2Fspan%3E.flags%2Cexternal%3AUInt32%3D%3Cspanclass%3D%22n%22%3E0_u32%3C%2Fspan%3E%29-class-method" class="signature"><strong>.new</strong>(pos : UInt32, path : String, method : CompressionMethod = <span class="t">CompressionMethod</span><span class="t">::</span><span class="t">DEFLATE</span>, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>, flags : GeneralFlags = <span class="t">GeneralFlags</span>.flags, external : UInt32 = <span class="n">0_u32</span>)</a>
+ <a href="#new%28pos%3AUInt64%2Cpath%3AString%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Cflags%3AGeneralFlags%3D%3Cspanclass%3D%22t%22%3EGeneralFlags%3C%2Fspan%3E.flags%2Cexternal%3AUInt32%3D%3Cspanclass%3D%22n%22%3E0_u32%3C%2Fspan%3E%2Czip64%3ABool%3D%3Cspanclass%3D%22n%22%3Efalse%3C%2Fspan%3E%29-class-method" class="signature"><strong>.new</strong>(pos : UInt64, path : String, method : CompressionMethod = <span class="t">CompressionMethod</span><span class="t">::</span><span class="t">DEFLATE</span>, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>, flags : GeneralFlags = <span class="t">GeneralFlags</span>.flags, external : UInt32 = <span class="n">0_u32</span>, zip64 : Bool = <span class="n">false</span>)</a>
+
+ <div class="summary"><p>Constructor for abstract <code><a href="../../Zip/Writers/WriterEntry.html">WriterEntry</a></code> class.</p></div>
</li>
@@ -189,7 +206,7 @@ for <code><a href="../../Zip/Writer.html">Writer</a></code> instance.</p>
<ul class="list-summary">
<li class="entry-summary">
- <a href="#to_s%28dst_io%29%3AUInt32-instance-method" class="signature"><strong>#to_s</strong>(dst_io) : UInt32</a>
+ <a href="#to_s%28dst_io%29%3AUInt64-instance-method" class="signature"><strong>#to_s</strong>(dst_io) : UInt64</a>
<div class="summary"><p>Write local file entry to IO and return the number of bytes written.</p></div>
@@ -208,7 +225,14 @@ for <code><a href="../../Zip/Writer.html">Writer</a></code> instance.</p>
</li>
<li class="entry-summary">
- <a href="#write_footer%28io%3AIO%2Ccrc%3AUInt32%2Csrc_len%3AUInt32%2Cdst_len%3AUInt32%29%3AUInt32-instance-method" class="signature"><strong>#write_footer</strong>(io : IO, crc : UInt32, src_len : UInt32, dst_len : UInt32) : UInt32</a>
+ <a href="#write_footer%28io%3AIO%2Ccrc%3AUInt32%2Csrc_len%3AUInt64%2Cdst_len%3AUInt64%2Czip64%3ABool%29%3AUInt32-instance-method" class="signature"><strong>#write_footer</strong>(io : IO, crc : UInt32, src_len : UInt64, dst_len : UInt64, zip64 : Bool) : UInt32</a>
+
+ </li>
+
+ <li class="entry-summary">
+ <a href="#zip64%3F%3ABool-instance-method" class="signature"><strong>#zip64?</strong> : Bool</a>
+
+ <div class="summary"><p>Is this a Zip64 entry? </p></div>
</li>
@@ -246,14 +270,18 @@ for <code><a href="../../Zip/Writer.html">Writer</a></code> instance.</p>
<h2>Class Method Detail</h2>
- <div class="entry-detail" id="new&#40;pos:UInt32,path:String,method:CompressionMethod&#61;&lt;spanclass&#61;&quot;t&quot;&gt;CompressionMethod&lt;/span&gt;&lt;spanclass&#61;&quot;t&quot;&gt;::&lt;/span&gt;&lt;spanclass&#61;&quot;t&quot;&gt;DEFLATE&lt;/span&gt;,time:Time&#61;&lt;spanclass&#61;&quot;t&quot;&gt;Time&lt;/span&gt;.now,comment:String&#61;&lt;spanclass&#61;&quot;s&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;,flags:GeneralFlags&#61;&lt;spanclass&#61;&quot;t&quot;&gt;GeneralFlags&lt;/span&gt;.flags,external:UInt32&#61;&lt;spanclass&#61;&quot;n&quot;&gt;0_u32&lt;/span&gt;&#41;-class-method">
+ <div class="entry-detail" id="new&#40;pos:UInt64,path:String,method:CompressionMethod&#61;&lt;spanclass&#61;&quot;t&quot;&gt;CompressionMethod&lt;/span&gt;&lt;spanclass&#61;&quot;t&quot;&gt;::&lt;/span&gt;&lt;spanclass&#61;&quot;t&quot;&gt;DEFLATE&lt;/span&gt;,time:Time&#61;&lt;spanclass&#61;&quot;t&quot;&gt;Time&lt;/span&gt;.now,comment:String&#61;&lt;spanclass&#61;&quot;s&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;,flags:GeneralFlags&#61;&lt;spanclass&#61;&quot;t&quot;&gt;GeneralFlags&lt;/span&gt;.flags,external:UInt32&#61;&lt;spanclass&#61;&quot;n&quot;&gt;0_u32&lt;/span&gt;,zip64:Bool&#61;&lt;spanclass&#61;&quot;n&quot;&gt;false&lt;/span&gt;&#41;-class-method">
<div class="signature">
- def self.<strong>new</strong>(pos : UInt32, path : String, method : <a href="../../Zip/CompressionMethod.html">CompressionMethod</a> = <span class="t">CompressionMethod</span><span class="t">::</span><span class="t">DEFLATE</span>, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>, flags : <a href="../../Zip/GeneralFlags.html">GeneralFlags</a> = <span class="t">GeneralFlags</span>.flags, external : UInt32 = <span class="n">0_u32</span>)
+ def self.<strong>new</strong>(pos : UInt64, path : String, method : <a href="../../Zip/CompressionMethod.html">CompressionMethod</a> = <span class="t">CompressionMethod</span><span class="t">::</span><span class="t">DEFLATE</span>, time : Time = <span class="t">Time</span>.now, comment : String = <span class="s">&quot;&quot;</span>, flags : <a href="../../Zip/GeneralFlags.html">GeneralFlags</a> = <span class="t">GeneralFlags</span>.flags, external : UInt32 = <span class="n">0_u32</span>, zip64 : Bool = <span class="n">false</span>)
- <a class="method-permalink" href="#new%28pos%3AUInt32%2Cpath%3AString%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Cflags%3AGeneralFlags%3D%3Cspanclass%3D%22t%22%3EGeneralFlags%3C%2Fspan%3E.flags%2Cexternal%3AUInt32%3D%3Cspanclass%3D%22n%22%3E0_u32%3C%2Fspan%3E%29-class-method">#</a>
+ <a class="method-permalink" href="#new%28pos%3AUInt64%2Cpath%3AString%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Cflags%3AGeneralFlags%3D%3Cspanclass%3D%22t%22%3EGeneralFlags%3C%2Fspan%3E.flags%2Cexternal%3AUInt32%3D%3Cspanclass%3D%22n%22%3E0_u32%3C%2Fspan%3E%2Czip64%3ABool%3D%3Cspanclass%3D%22n%22%3Efalse%3C%2Fspan%3E%29-class-method">#</a>
</div>
+ <div class="doc"><p>Constructor for abstract <code><a href="../../Zip/Writers/WriterEntry.html">WriterEntry</a></code> class. You cannot
+instantiate this class directly; use <code><a href="../../Zip/Writer.html#add%28path%3AString%2Cio%3AIO%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Czip64%3ABool%3D%3Cspanclass%3D%22n%22%3Efalse%3C%2Fspan%3E%29%3AUInt64-instance-method">Writer#add</a>()</code>,
+<code><a href="../../Zip/Writer.html#add_file%28path%3AString%2Cfile_path%3AString%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt64-instance-method">Writer#add_file</a>()</code> or `Writer#add_dir() instead.</p></div>
+
<br/>
<div>
@@ -265,19 +293,19 @@ for <code><a href="../../Zip/Writer.html">Writer</a></code> instance.</p>
<h2>Instance Method Detail</h2>
- <div class="entry-detail" id="to_s&#40;dst_io&#41;:UInt32-instance-method">
+ <div class="entry-detail" id="to_s&#40;dst_io&#41;:UInt64-instance-method">
<div class="signature">
- def <strong>to_s</strong>(dst_io) : UInt32
+ def <strong>to_s</strong>(dst_io) : UInt64
- <a class="method-permalink" href="#to_s%28dst_io%29%3AUInt32-instance-method">#</a>
+ <a class="method-permalink" href="#to_s%28dst_io%29%3AUInt64-instance-method">#</a>
</div>
<div class="doc"><p>Write local file entry to IO and return the number of bytes
written.</p>
<p>You should not need to call this method directly; it is called
-automatically by <code><a href="../../Zip/Writer.html#add%28path%3AString%2Cio%3AIO%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt32-instance-method">Writer#add</a></code> and <code><a href="../../Zip/Writer.html#add_file%28path%3AString%2Cfile_path%3AString%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt32-instance-method">Writer#add_file</a></code>.</p></div>
+automatically by <code><a href="../../Zip/Writer.html#add%28path%3AString%2Cio%3AIO%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%2Czip64%3ABool%3D%3Cspanclass%3D%22n%22%3Efalse%3C%2Fspan%3E%29%3AUInt64-instance-method">Writer#add</a></code> and <code><a href="../../Zip/Writer.html#add_file%28path%3AString%2Cfile_path%3AString%2Cmethod%3ACompressionMethod%3D%3Cspanclass%3D%22t%22%3ECompressionMethod%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3E%3A%3A%3C%2Fspan%3E%3Cspanclass%3D%22t%22%3EDEFLATE%3C%2Fspan%3E%2Ctime%3ATime%3D%3Cspanclass%3D%22t%22%3ETime%3C%2Fspan%3E.now%2Ccomment%3AString%3D%3Cspanclass%3D%22s%22%3E%26quot%3B%26quot%3B%3C%2Fspan%3E%29%3AUInt64-instance-method">Writer#add_file</a></code>.</p></div>
<br/>
<div>
@@ -319,13 +347,29 @@ automatically by <code><a href="../../Zip/Writer.html#close-instance-method">Wri
</div>
</div>
- <div class="entry-detail" id="write_footer&#40;io:IO,crc:UInt32,src_len:UInt32,dst_len:UInt32&#41;:UInt32-instance-method">
+ <div class="entry-detail" id="write_footer&#40;io:IO,crc:UInt32,src_len:UInt64,dst_len:UInt64,zip64:Bool&#41;:UInt32-instance-method">
<div class="signature">
abstract
- def <strong>write_footer</strong>(io : IO, crc : UInt32, src_len : UInt32, dst_len : UInt32) : UInt32
+ def <strong>write_footer</strong>(io : IO, crc : UInt32, src_len : UInt64, dst_len : UInt64, zip64 : Bool) : UInt32
- <a class="method-permalink" href="#write_footer%28io%3AIO%2Ccrc%3AUInt32%2Csrc_len%3AUInt32%2Cdst_len%3AUInt32%29%3AUInt32-instance-method">#</a>
+ <a class="method-permalink" href="#write_footer%28io%3AIO%2Ccrc%3AUInt32%2Csrc_len%3AUInt64%2Cdst_len%3AUInt64%2Czip64%3ABool%29%3AUInt32-instance-method">#</a>
+ </div>
+
+ <br/>
+ <div>
+
</div>
+ </div>
+
+ <div class="entry-detail" id="zip64?:Bool-instance-method">
+ <div class="signature">
+
+ def <strong>zip64?</strong> : Bool
+
+ <a class="method-permalink" href="#zip64%3F%3ABool-instance-method">#</a>
+ </div>
+
+ <div class="doc"><p>Is this a Zip64 entry?</p></div>
<br/>
<div>