This is an automated email from the ASF dual-hosted git repository.
github-bot pushed a commit to branch gh-pages
in repository https://gitbox.apache.org/repos/asf/iceberg-rust.git
The following commit(s) were added to refs/heads/gh-pages by this push:
new 854ec758 deploy: c3549836796f93aa3ad22276af788aa3d92533a1
854ec758 is described below
commit 854ec7580cc3858e319a3f301be517d44c8579da
Author: Xuanwo <[email protected]>
AuthorDate: Mon Sep 23 06:52:28 2024 +0000
deploy: c3549836796f93aa3ad22276af788aa3d92533a1
---
api/iceberg/expr/enum.Predicate.html | 4 ++--
api/iceberg/expr/struct.BoundReference.html | 4 ++--
api/iceberg/io/struct.FileIO.html | 27 ++++++++++++++++--------
api/iceberg/io/struct.FileIOBuilder.html | 15 +++++++------
api/iceberg/io/struct.FileMetadata.html | 2 +-
api/iceberg/io/struct.InputFile.html | 14 ++++++------
api/iceberg/io/struct.OutputFile.html | 14 ++++++------
api/iceberg/io/trait.FileRead.html | 6 +++---
api/iceberg/io/trait.FileWrite.html | 10 ++++-----
api/iceberg/spec/enum.ManifestContentType.html | 2 +-
api/iceberg/spec/enum.NullOrder.html | 4 ++--
api/iceberg/spec/enum.PrimitiveType.html | 4 ++--
api/iceberg/spec/enum.SortOrderBuilderError.html | 2 +-
api/iceberg/spec/enum.Transform.html | 4 ++--
api/iceberg/spec/enum.Type.html | 4 ++--
api/iceberg/spec/enum.ViewFormatVersion.html | 4 ++--
api/iceberg/spec/struct.NestedField.html | 4 ++--
api/iceberg/spec/struct.Schema.html | 4 ++--
api/iceberg/spec/struct.StructType.html | 4 ++--
api/iceberg/struct.Error.html | 2 +-
api/search-index.js | 2 +-
api/search.desc/iceberg/iceberg-desc-0-.js | 2 +-
api/src/iceberg/io/file_io.rs.html | 26 ++++++++++++++++++++---
api/src/iceberg/io/storage.rs.html | 4 +++-
24 files changed, 100 insertions(+), 68 deletions(-)
diff --git a/api/iceberg/expr/enum.Predicate.html
b/api/iceberg/expr/enum.Predicate.html
index 7d69fd80..95ba266c 100644
--- a/api/iceberg/expr/enum.Predicate.html
+++ b/api/iceberg/expr/enum.Predicate.html
@@ -82,8 +82,8 @@ predicates.</p>
&self,
schema: <a class="type" href="../spec/type.SchemaRef.html" title="type
iceberg::spec::SchemaRef">SchemaRef</a>,
case_sensitive: <a class="primitive"
href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
-) -> <a class="type" href="../type.Result.html" title="type
iceberg::Result">Result</a><<a class="enum" href="enum.BoundPredicate.html"
title="enum
iceberg::expr::BoundPredicate">BoundPredicate</a>></h4></section></summary><div
class='docblock'>Bind an expression to a
schema.</div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Clone-for-Predicate"
class="impl"><a class="src rightside" href="../../src/iceberg/expr/predicate.r
[...]
- __D: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserializer.html"
title="trait
serde::de::Deserializer">Deserializer</a><'de>,</div></h4></section></summary><div
class='docblock'>Deserialize this value from the given Serde deserializer. <a
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserialize.html#tymethod.deserialize">Read
more</a></div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Displ [...]
+) -> <a class="type" href="../type.Result.html" title="type
iceberg::Result">Result</a><<a class="enum" href="enum.BoundPredicate.html"
title="enum
iceberg::expr::BoundPredicate">BoundPredicate</a>></h4></section></summary><div
class='docblock'>Bind an expression to a
schema.</div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Clone-for-Predicate"
class="impl"><a class="src rightside" href="../../src/iceberg/expr/predicate.r
[...]
+ __D: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserializer.html"
title="trait
serde::de::Deserializer">Deserializer</a><'de>,</div></h4></section></summary><div
class='docblock'>Deserialize this value from the given Serde deserializer. <a
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserialize.html#tymethod.deserialize">Read
more</a></div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Displ [...]
<p>This is different from <a href="enum.Predicate.html#method.negate"
title="method
iceberg::expr::Predicate::negate"><code>Predicate::negate()</code></a> since it
doesn’t rewrite expression, but
just adds a <code>NOT</code> operator.</p>
<h5 id="example-4"><a class="doc-anchor" href="#example-4">§</a>Example</h5>
diff --git a/api/iceberg/expr/struct.BoundReference.html
b/api/iceberg/expr/struct.BoundReference.html
index 97ee66f3..d739d829 100644
--- a/api/iceberg/expr/struct.BoundReference.html
+++ b/api/iceberg/expr/struct.BoundReference.html
@@ -6,8 +6,8 @@
) -> Self</h4></section></summary><div class="docblock"><p>Creates a new
bound reference.</p>
</div></details><details class="toggle method-toggle" open><summary><section
id="method.field" class="method"><a class="src rightside"
href="../../src/iceberg/expr/term.rs.html#366-368">source</a><h4
class="code-header">pub fn <a href="#method.field"
class="fn">field</a>(&self) -> &<a class="struct"
href="../spec/struct.NestedField.html" title="struct
iceberg::spec::NestedField">NestedField</a></h4></section></summary><div
class="docblock"><p>Return the field of this reference.</p>
</div></details><details class="toggle method-toggle" open><summary><section
id="method.accessor" class="method"><a class="src rightside"
href="../../src/iceberg/expr/term.rs.html#371-373">source</a><h4
class="code-header">pub fn <a href="#method.accessor"
class="fn">accessor</a>(&self) ->
&StructAccessor</h4></section></summary><div class="docblock"><p>Get this
BoundReference’s Accessor</p>
-</div></details></div></details></div><h2 id="trait-implementations"
class="section-header">Trait Implementations<a href="#trait-implementations"
class="anchor">§</a></h2><div id="trait-implementations-list"><details
class="toggle implementors-toggle" open><summary><section
id="impl-Clone-for-BoundReference" class="impl"><a class="src rightside"
href="../../src/iceberg/expr/term.rs.html#342">source</a><a
href="#impl-Clone-for-BoundReference" class="anchor">§</a><h3
class="code-header">im [...]
- __D: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserializer.html"
title="trait
serde::de::Deserializer">Deserializer</a><'de>,</div></h4></section></summary><div
class='docblock'>Deserialize this value from the given Serde deserializer. <a
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserialize.html#tymethod.deserialize">Read
more</a></div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Displ [...]
+</div></details></div></details></div><h2 id="trait-implementations"
class="section-header">Trait Implementations<a href="#trait-implementations"
class="anchor">§</a></h2><div id="trait-implementations-list"><details
class="toggle implementors-toggle" open><summary><section
id="impl-Clone-for-BoundReference" class="impl"><a class="src rightside"
href="../../src/iceberg/expr/term.rs.html#342">source</a><a
href="#impl-Clone-for-BoundReference" class="anchor">§</a><h3
class="code-header">im [...]
+ __D: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserializer.html"
title="trait
serde::de::Deserializer">Deserializer</a><'de>,</div></h4></section></summary><div
class='docblock'>Deserialize this value from the given Serde deserializer. <a
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserialize.html#tymethod.deserialize">Read
more</a></div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Displ [...]
by <code>==</code>.</div></details><details class="toggle method-toggle"
open><summary><section id="method.ne" class="method trait-impl"><span
class="rightside"><span class="since" title="Stable since Rust version
1.0.0">1.0.0</span> · <a class="src"
href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a
href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a
href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne"
class= [...]
sufficient, and should not be overridden without very good
reason.</div></details></div></details><details class="toggle
implementors-toggle" open><summary><section
id="impl-Serialize-for-BoundReference" class="impl"><a class="src rightside"
href="../../src/iceberg/expr/term.rs.html#342">source</a><a
href="#impl-Serialize-for-BoundReference" class="anchor">§</a><h3
class="code-header">impl <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/ser/trait.Serialize.html"
title="trait s [...]
__S: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/ser/trait.Serializer.html"
title="trait
serde::ser::Serializer">Serializer</a>,</div></h4></section></summary><div
class='docblock'>Serialize this value into the given Serde serializer. <a
href="https://docs.rs/serde/1.0.210/serde/ser/trait.Serialize.html#tymethod.serialize">Read
more</a></div></details></div></details><section
id="impl-Eq-for-BoundReference" class="impl"><a class="src rightside"
href="../../src/iceberg/ [...]
diff --git a/api/iceberg/io/struct.FileIO.html
b/api/iceberg/io/struct.FileIO.html
index 67a4eb10..591c1bda 100644
--- a/api/iceberg/io/struct.FileIO.html
+++ b/api/iceberg/io/struct.FileIO.html
@@ -1,16 +1,25 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta
name="viewport" content="width=device-width, initial-scale=1.0"><meta
name="generator" content="rustdoc"><meta name="description" content="FileIO
implementation, used to manipulate files in underlying storage."><title>FileIO
in iceberg::io -
Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd
[...]
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta
name="viewport" content="width=device-width, initial-scale=1.0"><meta
name="generator" content="rustdoc"><meta name="description" content="FileIO
implementation, used to manipulate files in underlying storage."><title>FileIO
in iceberg::io -
Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd
[...]
<h2 id="note"><a class="doc-anchor" href="#note">§</a>Note</h2>
<p>All path passed to <code>FileIO</code> must be absolute path starting with
scheme string used to construct <code>FileIO</code>.
For example, if you construct <code>FileIO</code> with <code>s3a</code>
scheme, then all path passed to <code>FileIO</code> must start with
<code>s3a://</code>.</p>
-</div></details><h2 id="implementations"
class="section-header">Implementations<a href="#implementations"
class="anchor">§</a></h2><div id="implementations-list"><details class="toggle
implementors-toggle" open><summary><section id="impl-FileIO" class="impl"><a
class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#40-99">source</a><a
href="#impl-FileIO" class="anchor">§</a><h3 class="code-header">impl <a
class="struct" href="struct.FileIO.html" title="struct iceberg::io::FileI [...]
-<p>If it’s a valid url, for example http://example.org, url scheme will be
used.
-If it’s not a valid url, will try to detect if it’s a file path.</p>
+<p>Supported storages:</p>
+<div><table><thead><tr><th>Storage</th><th>Feature
Flag</th><th>Schemes</th></tr></thead><tbody>
+<tr><td>Local file
system</td><td><code>storage-fs</code></td><td><code>file</code></td></tr>
+<tr><td>Memory</td><td><code>storage-memory</code></td><td><code>memory</code></td></tr>
+<tr><td>S3</td><td><code>storage-s3</code></td><td><code>s3</code>,
<code>s3a</code></td></tr>
+<tr><td>GCS</td><td><code>storage-gcs</code></td><td><code>gs</code></td></tr>
+</tbody></table>
+</div></div></details><h2 id="implementations"
class="section-header">Implementations<a href="#implementations"
class="anchor">§</a></h2><div id="implementations-list"><details class="toggle
implementors-toggle" open><summary><section id="impl-FileIO" class="impl"><a
class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#49-108">source</a><a
href="#impl-FileIO" class="anchor">§</a><h3 class="code-header">impl <a
class="struct" href="struct.FileIO.html" title="struct iceberg::io [...]
+<ul>
+<li>If it’s a valid url, for example <code>s3://bucket/a</code>, url scheme
will be used, and the rest of the url will be ignored.</li>
+<li>If it’s not a valid url, will try to detect if it’s a file path.</li>
+</ul>
<p>Otherwise will return parsing error.</p>
-</div></details><details class="toggle method-toggle" open><summary><section
id="method.delete" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#65-68">source</a><h4
class="code-header">pub async fn <a href="#method.delete"
class="fn">delete</a>(&self, path: impl <a class="trait"
href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html"
title="trait core::convert::AsRef">AsRef</a><<a class="primitive"
href="https://doc.rust-lang.org/n [...]
-</div></details><details class="toggle method-toggle" open><summary><section
id="method.is_exist" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#71-74">source</a><h4
class="code-header">pub async fn <a href="#method.is_exist"
class="fn">is_exist</a>(&self, path: impl <a class="trait"
href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html"
title="trait core::convert::AsRef">AsRef</a><<a class="primitive"
href="https://doc.rust-lang [...]
-</div></details><details class="toggle method-toggle" open><summary><section
id="method.new_input" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#77-86">source</a><h4
class="code-header">pub fn <a href="#method.new_input"
class="fn">new_input</a>(&self, path: impl <a class="trait"
href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html"
title="trait core::convert::AsRef">AsRef</a><<a class="primitive"
href="https://doc.rust-lang.or [...]
-</div></details><details class="toggle method-toggle" open><summary><section
id="method.new_output" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#89-98">source</a><h4
class="code-header">pub fn <a href="#method.new_output"
class="fn">new_output</a>(&self, path: impl <a class="trait"
href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html"
title="trait core::convert::AsRef">AsRef</a><<a class="primitive"
href="https://doc.rust-lang [...]
-</div></details></div></details></div><h2 id="trait-implementations"
class="section-header">Trait Implementations<a href="#trait-implementations"
class="anchor">§</a></h2><div id="trait-implementations-list"><details
class="toggle implementors-toggle" open><summary><section
id="impl-Clone-for-FileIO" class="impl"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#35">source</a><a
href="#impl-Clone-for-FileIO" class="anchor">§</a><h3 class="code-header">impl
<a class="tra [...]
+</div></details><details class="toggle method-toggle" open><summary><section
id="method.delete" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#74-77">source</a><h4
class="code-header">pub async fn <a href="#method.delete"
class="fn">delete</a>(&self, path: impl <a class="trait"
href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html"
title="trait core::convert::AsRef">AsRef</a><<a class="primitive"
href="https://doc.rust-lang.org/n [...]
+</div></details><details class="toggle method-toggle" open><summary><section
id="method.is_exist" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#80-83">source</a><h4
class="code-header">pub async fn <a href="#method.is_exist"
class="fn">is_exist</a>(&self, path: impl <a class="trait"
href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html"
title="trait core::convert::AsRef">AsRef</a><<a class="primitive"
href="https://doc.rust-lang [...]
+</div></details><details class="toggle method-toggle" open><summary><section
id="method.new_input" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#86-95">source</a><h4
class="code-header">pub fn <a href="#method.new_input"
class="fn">new_input</a>(&self, path: impl <a class="trait"
href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html"
title="trait core::convert::AsRef">AsRef</a><<a class="primitive"
href="https://doc.rust-lang.or [...]
+</div></details><details class="toggle method-toggle" open><summary><section
id="method.new_output" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#98-107">source</a><h4
class="code-header">pub fn <a href="#method.new_output"
class="fn">new_output</a>(&self, path: impl <a class="trait"
href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html"
title="trait core::convert::AsRef">AsRef</a><<a class="primitive"
href="https://doc.rust-lan [...]
+</div></details></div></details></div><h2 id="trait-implementations"
class="section-header">Trait Implementations<a href="#trait-implementations"
class="anchor">§</a></h2><div id="trait-implementations-list"><details
class="toggle implementors-toggle" open><summary><section
id="impl-Clone-for-FileIO" class="impl"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#44">source</a><a
href="#impl-Clone-for-FileIO" class="anchor">§</a><h3 class="code-header">impl
<a class="tra [...]
T: 'static + ?<a class="trait"
href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"
title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div
class="impl-items"><details class="toggle method-toggle" open><summary><section
id="method.type_id" class="method trait-impl"><a class="src rightside"
href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a
href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href
[...]
T: ?<a class="trait"
href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"
title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div
class="impl-items"><details class="toggle method-toggle" open><summary><section
id="method.borrow" class="method trait-impl"><a class="src rightside"
href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a
href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a
href="https:/ [...]
T: ?<a class="trait"
href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"
title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div
class="impl-items"><details class="toggle method-toggle" open><summary><section
id="method.borrow_mut" class="method trait-impl"><a class="src rightside"
href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a
href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a
href= [...]
diff --git a/api/iceberg/io/struct.FileIOBuilder.html
b/api/iceberg/io/struct.FileIOBuilder.html
index d540d3af..599ab640 100644
--- a/api/iceberg/io/struct.FileIOBuilder.html
+++ b/api/iceberg/io/struct.FileIOBuilder.html
@@ -1,13 +1,14 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta
name="viewport" content="width=device-width, initial-scale=1.0"><meta
name="generator" content="rustdoc"><meta name="description" content="Builder
for `FileIO`."><title>FileIOBuilder in iceberg::io -
Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.wo
[...]
-</div></details><h2 id="implementations"
class="section-header">Implementations<a href="#implementations"
class="anchor">§</a></h2><div id="implementations-list"><details class="toggle
implementors-toggle" open><summary><section id="impl-FileIOBuilder"
class="impl"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#112-159">source</a><a
href="#impl-FileIOBuilder" class="anchor">§</a><h3 class="code-header">impl <a
class="struct" href="struct.FileIOBuilder.html" title="st [...]
-</div></details><details class="toggle method-toggle" open><summary><section
id="method.new_fs_io" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#122-127">source</a><h4
class="code-header">pub fn <a href="#method.new_fs_io"
class="fn">new_fs_io</a>() -> Self</h4></section></summary><div
class="docblock"><p>Creates a new builder for local file io.</p>
-</div></details><details class="toggle method-toggle" open><summary><section
id="method.with_prop" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#137-140">source</a><h4
class="code-header">pub fn <a href="#method.with_prop"
class="fn">with_prop</a>(self, key: impl <a class="trait"
href="https://doc.rust-lang.org/nightly/alloc/string/trait.ToString.html"
title="trait alloc::string::ToString">ToString</a>, value: impl <a
class="trait" href="https://doc.r [...]
-</div></details><details class="toggle method-toggle" open><summary><section
id="method.with_props" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#143-150">source</a><h4
class="code-header">pub fn <a href="#method.with_props"
class="fn">with_props</a>(
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta
name="viewport" content="width=device-width, initial-scale=1.0"><meta
name="generator" content="rustdoc"><meta name="description" content="Builder
for `FileIO`."><title>FileIOBuilder in iceberg::io -
Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.wo
[...]
+</div></details><h2 id="implementations"
class="section-header">Implementations<a href="#implementations"
class="anchor">§</a></h2><div id="implementations-list"><details class="toggle
implementors-toggle" open><summary><section id="impl-FileIOBuilder"
class="impl"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#121-169">source</a><a
href="#impl-FileIOBuilder" class="anchor">§</a><h3 class="code-header">impl <a
class="struct" href="struct.FileIOBuilder.html" title="st [...]
+See <a href="struct.FileIO.html" title="struct
iceberg::io::FileIO"><code>FileIO</code></a> for supported schemes.</p>
+</div></details><details class="toggle method-toggle" open><summary><section
id="method.new_fs_io" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#132-137">source</a><h4
class="code-header">pub fn <a href="#method.new_fs_io"
class="fn">new_fs_io</a>() -> Self</h4></section></summary><div
class="docblock"><p>Creates a new builder for local file io.</p>
+</div></details><details class="toggle method-toggle" open><summary><section
id="method.with_prop" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#147-150">source</a><h4
class="code-header">pub fn <a href="#method.with_prop"
class="fn">with_prop</a>(self, key: impl <a class="trait"
href="https://doc.rust-lang.org/nightly/alloc/string/trait.ToString.html"
title="trait alloc::string::ToString">ToString</a>, value: impl <a
class="trait" href="https://doc.r [...]
+</div></details><details class="toggle method-toggle" open><summary><section
id="method.with_props" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#153-160">source</a><h4
class="code-header">pub fn <a href="#method.with_props"
class="fn">with_props</a>(
self,
args: impl <a class="trait"
href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html"
title="trait
core::iter::traits::collect::IntoIterator">IntoIterator</a><Item = (impl <a
class="trait"
href="https://doc.rust-lang.org/nightly/alloc/string/trait.ToString.html"
title="trait alloc::string::ToString">ToString</a>, impl <a class="trait"
href="https://doc.rust-lang.org/nightly/alloc/string/trait.ToString.html"
title="trait alloc::string::ToString">ToSt [...]
) -> Self</h4></section></summary><div class="docblock"><p>Add argument for
operator.</p>
-</div></details><details class="toggle method-toggle" open><summary><section
id="method.build" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#153-158">source</a><h4
class="code-header">pub fn <a href="#method.build" class="fn">build</a>(self)
-> <a class="type" href="../type.Result.html" title="type
iceberg::Result">Result</a><<a class="struct" href="struct.FileIO.html"
title="struct iceberg::io::FileIO">FileIO</a>></h4></section></summary><di
[...]
-</div></details></div></details></div><h2 id="trait-implementations"
class="section-header">Trait Implementations<a href="#trait-implementations"
class="anchor">§</a></h2><div id="trait-implementations-list"><details
class="toggle implementors-toggle" open><summary><section
id="impl-Debug-for-FileIOBuilder" class="impl"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#102">source</a><a
href="#impl-Debug-for-FileIOBuilder" class="anchor">§</a><h3
class="code-header">imp [...]
+</div></details><details class="toggle method-toggle" open><summary><section
id="method.build" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#163-168">source</a><h4
class="code-header">pub fn <a href="#method.build" class="fn">build</a>(self)
-> <a class="type" href="../type.Result.html" title="type
iceberg::Result">Result</a><<a class="struct" href="struct.FileIO.html"
title="struct iceberg::io::FileIO">FileIO</a>></h4></section></summary><di
[...]
+</div></details></div></details></div><h2 id="trait-implementations"
class="section-header">Trait Implementations<a href="#trait-implementations"
class="anchor">§</a></h2><div id="trait-implementations-list"><details
class="toggle implementors-toggle" open><summary><section
id="impl-Debug-for-FileIOBuilder" class="impl"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#111">source</a><a
href="#impl-Debug-for-FileIOBuilder" class="anchor">§</a><h3
class="code-header">imp [...]
T: 'static + ?<a class="trait"
href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"
title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div
class="impl-items"><details class="toggle method-toggle" open><summary><section
id="method.type_id" class="method trait-impl"><a class="src rightside"
href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a
href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href
[...]
T: ?<a class="trait"
href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"
title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div
class="impl-items"><details class="toggle method-toggle" open><summary><section
id="method.borrow" class="method trait-impl"><a class="src rightside"
href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a
href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a
href="https:/ [...]
T: ?<a class="trait"
href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"
title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div
class="impl-items"><details class="toggle method-toggle" open><summary><section
id="method.borrow_mut" class="method trait-impl"><a class="src rightside"
href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a
href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a
href= [...]
diff --git a/api/iceberg/io/struct.FileMetadata.html
b/api/iceberg/io/struct.FileMetadata.html
index 696a8995..0d594b4c 100644
--- a/api/iceberg/io/struct.FileMetadata.html
+++ b/api/iceberg/io/struct.FileMetadata.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta
name="viewport" content="width=device-width, initial-scale=1.0"><meta
name="generator" content="rustdoc"><meta name="description" content="The struct
the represents the metadata of a file."><title>FileMetadata in iceberg::io -
Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans
[...]
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta
name="viewport" content="width=device-width, initial-scale=1.0"><meta
name="generator" content="rustdoc"><meta name="description" content="The struct
the represents the metadata of a file."><title>FileMetadata in iceberg::io -
Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans
[...]
pub size: <a class="primitive"
href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>,
}</code></pre><details class="toggle top-doc" open><summary
class="hideme"><span>Expand description</span></summary><div
class="docblock"><p>The struct the represents the metadata of a file.</p>
<p>TODO: we can add last modified time, content type, etc. in the future.</p>
diff --git a/api/iceberg/io/struct.InputFile.html
b/api/iceberg/io/struct.InputFile.html
index ebdb4c3c..759c611a 100644
--- a/api/iceberg/io/struct.InputFile.html
+++ b/api/iceberg/io/struct.InputFile.html
@@ -1,12 +1,12 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta
name="viewport" content="width=device-width, initial-scale=1.0"><meta
name="generator" content="rustdoc"><meta name="description" content="Input file
is used for reading from files."><title>InputFile in iceberg::io -
Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f
[...]
-</div></details><h2 id="implementations"
class="section-header">Implementations<a href="#implementations"
class="anchor">§</a></h2><div id="implementations-list"><details class="toggle
implementors-toggle" open><summary><section id="impl-InputFile" class="impl"><a
class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#200-240">source</a><a
href="#impl-InputFile" class="anchor">§</a><h3 class="code-header">impl <a
class="struct" href="struct.InputFile.html" title="struct iceberg [...]
-</div></details><details class="toggle method-toggle" open><summary><section
id="method.exists" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#207-212">source</a><h4
class="code-header">pub async fn <a href="#method.exists"
class="fn">exists</a>(&self) -> <a class="type"
href="../type.Result.html" title="type iceberg::Result">Result</a><<a
class="primitive"
href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>></h4></se
[...]
-</div></details><details class="toggle method-toggle" open><summary><section
id="method.metadata" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#215-221">source</a><h4
class="code-header">pub async fn <a href="#method.metadata"
class="fn">metadata</a>(&self) -> <a class="type"
href="../type.Result.html" title="type iceberg::Result">Result</a><<a
class="struct" href="struct.FileMetadata.html" title="struct
iceberg::io::FileMetadata">FileMetada [...]
-</div></details><details class="toggle method-toggle" open><summary><section
id="method.read" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#226-232">source</a><h4
class="code-header">pub async fn <a href="#method.read"
class="fn">read</a>(&self) -> <a class="type" href="../type.Result.html"
title="type
iceberg::Result">Result</a><Bytes></h4></section></summary><div
class="docblock"><p>Read and returns whole content of file.</p>
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta
name="viewport" content="width=device-width, initial-scale=1.0"><meta
name="generator" content="rustdoc"><meta name="description" content="Input file
is used for reading from files."><title>InputFile in iceberg::io -
Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f
[...]
+</div></details><h2 id="implementations"
class="section-header">Implementations<a href="#implementations"
class="anchor">§</a></h2><div id="implementations-list"><details class="toggle
implementors-toggle" open><summary><section id="impl-InputFile" class="impl"><a
class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#210-250">source</a><a
href="#impl-InputFile" class="anchor">§</a><h3 class="code-header">impl <a
class="struct" href="struct.InputFile.html" title="struct iceberg [...]
+</div></details><details class="toggle method-toggle" open><summary><section
id="method.exists" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#217-222">source</a><h4
class="code-header">pub async fn <a href="#method.exists"
class="fn">exists</a>(&self) -> <a class="type"
href="../type.Result.html" title="type iceberg::Result">Result</a><<a
class="primitive"
href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>></h4></se
[...]
+</div></details><details class="toggle method-toggle" open><summary><section
id="method.metadata" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#225-231">source</a><h4
class="code-header">pub async fn <a href="#method.metadata"
class="fn">metadata</a>(&self) -> <a class="type"
href="../type.Result.html" title="type iceberg::Result">Result</a><<a
class="struct" href="struct.FileMetadata.html" title="struct
iceberg::io::FileMetadata">FileMetada [...]
+</div></details><details class="toggle method-toggle" open><summary><section
id="method.read" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#236-242">source</a><h4
class="code-header">pub async fn <a href="#method.read"
class="fn">read</a>(&self) -> <a class="type" href="../type.Result.html"
title="type
iceberg::Result">Result</a><Bytes></h4></section></summary><div
class="docblock"><p>Read and returns whole content of file.</p>
<p>For continues reading, use <a href="struct.InputFile.html#method.reader"
title="method iceberg::io::InputFile::reader"><code>Self::reader</code></a>
instead.</p>
-</div></details><details class="toggle method-toggle" open><summary><section
id="method.reader" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#237-239">source</a><h4
class="code-header">pub async fn <a href="#method.reader"
class="fn">reader</a>(&self) -> <a class="type"
href="../type.Result.html" title="type iceberg::Result">Result</a><impl <a
class="trait" href="trait.FileRead.html" title="trait
iceberg::io::FileRead">FileRead</a>></h4>< [...]
+</div></details><details class="toggle method-toggle" open><summary><section
id="method.reader" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#247-249">source</a><h4
class="code-header">pub async fn <a href="#method.reader"
class="fn">reader</a>(&self) -> <a class="type"
href="../type.Result.html" title="type iceberg::Result">Result</a><impl <a
class="trait" href="trait.FileRead.html" title="trait
iceberg::io::FileRead">FileRead</a>></h4>< [...]
<p>For one-time reading, use <a href="struct.InputFile.html#method.read"
title="method iceberg::io::InputFile::read"><code>Self::read</code></a>
instead.</p>
-</div></details></div></details></div><h2 id="trait-implementations"
class="section-header">Trait Implementations<a href="#trait-implementations"
class="anchor">§</a></h2><div id="trait-implementations-list"><details
class="toggle implementors-toggle" open><summary><section
id="impl-Debug-for-InputFile" class="impl"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#191">source</a><a
href="#impl-Debug-for-InputFile" class="anchor">§</a><h3
class="code-header">impl <a cla [...]
+</div></details></div></details></div><h2 id="trait-implementations"
class="section-header">Trait Implementations<a href="#trait-implementations"
class="anchor">§</a></h2><div id="trait-implementations-list"><details
class="toggle implementors-toggle" open><summary><section
id="impl-Debug-for-InputFile" class="impl"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#201">source</a><a
href="#impl-Debug-for-InputFile" class="anchor">§</a><h3
class="code-header">impl <a cla [...]
T: 'static + ?<a class="trait"
href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"
title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div
class="impl-items"><details class="toggle method-toggle" open><summary><section
id="method.type_id" class="method trait-impl"><a class="src rightside"
href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a
href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href
[...]
T: ?<a class="trait"
href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"
title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div
class="impl-items"><details class="toggle method-toggle" open><summary><section
id="method.borrow" class="method trait-impl"><a class="src rightside"
href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a
href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a
href="https:/ [...]
T: ?<a class="trait"
href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"
title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div
class="impl-items"><details class="toggle method-toggle" open><summary><section
id="method.borrow_mut" class="method trait-impl"><a class="src rightside"
href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a
href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a
href= [...]
diff --git a/api/iceberg/io/struct.OutputFile.html
b/api/iceberg/io/struct.OutputFile.html
index db097c57..b5444562 100644
--- a/api/iceberg/io/struct.OutputFile.html
+++ b/api/iceberg/io/struct.OutputFile.html
@@ -1,15 +1,15 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta
name="viewport" content="width=device-width, initial-scale=1.0"><meta
name="generator" content="rustdoc"><meta name="description" content="Output
file is used for writing to files.."><title>OutputFile in iceberg::io -
Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8
[...]
-</div></details><h2 id="implementations"
class="section-header">Implementations<a href="#implementations"
class="anchor">§</a></h2><div id="implementations-list"><details class="toggle
implementors-toggle" open><summary><section id="impl-OutputFile"
class="impl"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#282-327">source</a><a
href="#impl-OutputFile" class="anchor">§</a><h3 class="code-header">impl <a
class="struct" href="struct.OutputFile.html" title="struct iceb [...]
-</div></details><details class="toggle method-toggle" open><summary><section
id="method.exists" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#289-294">source</a><h4
class="code-header">pub async fn <a href="#method.exists"
class="fn">exists</a>(&self) -> <a class="type"
href="../type.Result.html" title="type iceberg::Result">Result</a><<a
class="primitive"
href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>></h4></se
[...]
-</div></details><details class="toggle method-toggle" open><summary><section
id="method.to_input_file" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#297-303">source</a><h4
class="code-header">pub fn <a href="#method.to_input_file"
class="fn">to_input_file</a>(self) -> <a class="struct"
href="struct.InputFile.html" title="struct
iceberg::io::InputFile">InputFile</a></h4></section></summary><div
class="docblock"><p>Converts into <a href="struct.Input [...]
-</div></details><details class="toggle method-toggle" open><summary><section
id="method.write" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#311-315">source</a><h4
class="code-header">pub async fn <a href="#method.write"
class="fn">write</a>(&self, bs: Bytes) -> <a class="type"
href="../type.Result.html" title="type iceberg::Result">Result</a><<a
class="primitive"
href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>></h
[...]
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta
name="viewport" content="width=device-width, initial-scale=1.0"><meta
name="generator" content="rustdoc"><meta name="description" content="Output
file is used for writing to files.."><title>OutputFile in iceberg::io -
Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8
[...]
+</div></details><h2 id="implementations"
class="section-header">Implementations<a href="#implementations"
class="anchor">§</a></h2><div id="implementations-list"><details class="toggle
implementors-toggle" open><summary><section id="impl-OutputFile"
class="impl"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#292-337">source</a><a
href="#impl-OutputFile" class="anchor">§</a><h3 class="code-header">impl <a
class="struct" href="struct.OutputFile.html" title="struct iceb [...]
+</div></details><details class="toggle method-toggle" open><summary><section
id="method.exists" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#299-304">source</a><h4
class="code-header">pub async fn <a href="#method.exists"
class="fn">exists</a>(&self) -> <a class="type"
href="../type.Result.html" title="type iceberg::Result">Result</a><<a
class="primitive"
href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>></h4></se
[...]
+</div></details><details class="toggle method-toggle" open><summary><section
id="method.to_input_file" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#307-313">source</a><h4
class="code-header">pub fn <a href="#method.to_input_file"
class="fn">to_input_file</a>(self) -> <a class="struct"
href="struct.InputFile.html" title="struct
iceberg::io::InputFile">InputFile</a></h4></section></summary><div
class="docblock"><p>Converts into <a href="struct.Input [...]
+</div></details><details class="toggle method-toggle" open><summary><section
id="method.write" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#321-325">source</a><h4
class="code-header">pub async fn <a href="#method.write"
class="fn">write</a>(&self, bs: Bytes) -> <a class="type"
href="../type.Result.html" title="type iceberg::Result">Result</a><<a
class="primitive"
href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>></h
[...]
<h5 id="notes"><a class="doc-anchor" href="#notes">§</a>Notes</h5>
<p>Calling <code>write</code> will overwrite the file if it exists.
For continues writing, use <a href="struct.OutputFile.html#method.writer"
title="method
iceberg::io::OutputFile::writer"><code>Self::writer</code></a>.</p>
-</div></details><details class="toggle method-toggle" open><summary><section
id="method.writer" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#322-326">source</a><h4
class="code-header">pub async fn <a href="#method.writer"
class="fn">writer</a>(&self) -> <a class="type"
href="../type.Result.html" title="type iceberg::Result">Result</a><<a
class="struct"
href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html"
title="struct alloc: [...]
+</div></details><details class="toggle method-toggle" open><summary><section
id="method.writer" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#332-336">source</a><h4
class="code-header">pub async fn <a href="#method.writer"
class="fn">writer</a>(&self) -> <a class="type"
href="../type.Result.html" title="type iceberg::Result">Result</a><<a
class="struct"
href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html"
title="struct alloc: [...]
<h5 id="notes-1"><a class="doc-anchor" href="#notes-1">§</a>Notes</h5>
<p>For one-time writing, use <a href="struct.OutputFile.html#method.write"
title="method iceberg::io::OutputFile::write"><code>Self::write</code></a>
instead.</p>
-</div></details></div></details></div><h2 id="trait-implementations"
class="section-header">Trait Implementations<a href="#trait-implementations"
class="anchor">§</a></h2><div id="trait-implementations-list"><details
class="toggle implementors-toggle" open><summary><section
id="impl-Debug-for-OutputFile" class="impl"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#273">source</a><a
href="#impl-Debug-for-OutputFile" class="anchor">§</a><h3
class="code-header">impl <a c [...]
+</div></details></div></details></div><h2 id="trait-implementations"
class="section-header">Trait Implementations<a href="#trait-implementations"
class="anchor">§</a></h2><div id="trait-implementations-list"><details
class="toggle implementors-toggle" open><summary><section
id="impl-Debug-for-OutputFile" class="impl"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#283">source</a><a
href="#impl-Debug-for-OutputFile" class="anchor">§</a><h3
class="code-header">impl <a c [...]
T: 'static + ?<a class="trait"
href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"
title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div
class="impl-items"><details class="toggle method-toggle" open><summary><section
id="method.type_id" class="method trait-impl"><a class="src rightside"
href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a
href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href
[...]
T: ?<a class="trait"
href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"
title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div
class="impl-items"><details class="toggle method-toggle" open><summary><section
id="method.borrow" class="method trait-impl"><a class="src rightside"
href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a
href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a
href="https:/ [...]
T: ?<a class="trait"
href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"
title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div
class="impl-items"><details class="toggle method-toggle" open><summary><section
id="method.borrow_mut" class="method trait-impl"><a class="src rightside"
href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a
href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a
href= [...]
diff --git a/api/iceberg/io/trait.FileRead.html
b/api/iceberg/io/trait.FileRead.html
index 23d8e164..960a3c8a 100644
--- a/api/iceberg/io/trait.FileRead.html
+++ b/api/iceberg/io/trait.FileRead.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta
name="viewport" content="width=device-width, initial-scale=1.0"><meta
name="generator" content="rustdoc"><meta name="description" content="Trait for
reading file."><title>FileRead in iceberg::io -
Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.woff2
[...]
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta
name="viewport" content="width=device-width, initial-scale=1.0"><meta
name="generator" content="rustdoc"><meta name="description" content="Trait for
reading file."><title>FileRead in iceberg::io -
Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.woff2
[...]
// Required method
fn <a href="#tymethod.read" class="fn">read</a><'life0,
'async_trait>(
&'life0 self,
@@ -10,14 +10,14 @@
<h2 id="todo"><a class="doc-anchor" href="#todo">§</a>TODO</h2>
<p>It’s possible for us to remove the async_trait, but we need to figure
out how to handle the object safety.</p>
-</div></details><h2 id="required-methods" class="section-header">Required
Methods<a href="#required-methods" class="anchor">§</a></h2><div
class="methods"><details class="toggle method-toggle" open><summary><section
id="tymethod.read" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#180">source</a><h4
class="code-header">fn <a href="#tymethod.read" class="fn">read</a><'life0,
'async_trait>(
+</div></details><h2 id="required-methods" class="section-header">Required
Methods<a href="#required-methods" class="anchor">§</a></h2><div
class="methods"><details class="toggle method-toggle" open><summary><section
id="tymethod.read" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#190">source</a><h4
class="code-header">fn <a href="#tymethod.read" class="fn">read</a><'life0,
'async_trait>(
&'life0 self,
range: <a class="struct"
href="https://doc.rust-lang.org/nightly/core/ops/range/struct.Range.html"
title="struct core::ops::range::Range">Range</a><<a class="primitive"
href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>>,
) -> <a class="struct"
href="https://doc.rust-lang.org/nightly/core/pin/struct.Pin.html" title="struct
core::pin::Pin">Pin</a><<a class="struct"
href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html"
title="struct alloc::boxed::Box">Box</a><dyn <a class="trait"
href="https://doc.rust-lang.org/nightly/core/future/future/trait.Future.html"
title="trait core::future::future::Future">Future</a><Output = <a
class="type" href="../type.Result.html" title="type iceberg: [...]
Self: 'async_trait,
'life0: 'async_trait,</div></h4></section></summary><div
class="docblock"><p>Read file content with given range.</p>
<p>TODO: we can support reading non-contiguous bytes in the future.</p>
-</div></details></div><h2 id="foreign-impls"
class="section-header">Implementations on Foreign Types<a href="#foreign-impls"
class="anchor">§</a></h2><details class="toggle
implementors-toggle"><summary><section id="impl-FileRead-for-Reader"
class="impl"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#184-188">source</a><a
href="#impl-FileRead-for-Reader" class="anchor">§</a><h3
class="code-header">impl <a class="trait" href="trait.FileRead.html"
title="trait iceberg: [...]
+</div></details></div><h2 id="foreign-impls"
class="section-header">Implementations on Foreign Types<a href="#foreign-impls"
class="anchor">§</a></h2><details class="toggle
implementors-toggle"><summary><section id="impl-FileRead-for-Reader"
class="impl"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#194-198">source</a><a
href="#impl-FileRead-for-Reader" class="anchor">§</a><h3
class="code-header">impl <a class="trait" href="trait.FileRead.html"
title="trait iceberg: [...]
&'life0 self,
range: <a class="struct"
href="https://doc.rust-lang.org/nightly/core/ops/range/struct.Range.html"
title="struct core::ops::range::Range">Range</a><<a class="primitive"
href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>>,
) -> <a class="struct"
href="https://doc.rust-lang.org/nightly/core/pin/struct.Pin.html" title="struct
core::pin::Pin">Pin</a><<a class="struct"
href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html"
title="struct alloc::boxed::Box">Box</a><dyn <a class="trait"
href="https://doc.rust-lang.org/nightly/core/future/future/trait.Future.html"
title="trait core::future::future::Future">Future</a><Output = <a
class="type" href="../type.Result.html" title="type iceberg: [...]
diff --git a/api/iceberg/io/trait.FileWrite.html
b/api/iceberg/io/trait.FileWrite.html
index 7e5b5507..55bc8afe 100644
--- a/api/iceberg/io/trait.FileWrite.html
+++ b/api/iceberg/io/trait.FileWrite.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta
name="viewport" content="width=device-width, initial-scale=1.0"><meta
name="generator" content="rustdoc"><meta name="description" content="Trait for
writing file."><title>FileWrite in iceberg::io -
Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.woff
[...]
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta
name="viewport" content="width=device-width, initial-scale=1.0"><meta
name="generator" content="rustdoc"><meta name="description" content="Trait for
writing file."><title>FileWrite in iceberg::io -
Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.woff
[...]
// Required methods
fn <a href="#tymethod.write" class="fn">write</a><'life0,
'async_trait>(
&'life0 mut self,
@@ -15,25 +15,25 @@
<h2 id="todo"><a class="doc-anchor" href="#todo">§</a>TODO</h2>
<p>It’s possible for us to remove the async_trait, but we need to figure
out how to handle the object safety.</p>
-</div></details><h2 id="required-methods" class="section-header">Required
Methods<a href="#required-methods" class="anchor">§</a></h2><div
class="methods"><details class="toggle method-toggle" open><summary><section
id="tymethod.write" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#253">source</a><h4
class="code-header">fn <a href="#tymethod.write"
class="fn">write</a><'life0, 'async_trait>(
+</div></details><h2 id="required-methods" class="section-header">Required
Methods<a href="#required-methods" class="anchor">§</a></h2><div
class="methods"><details class="toggle method-toggle" open><summary><section
id="tymethod.write" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#263">source</a><h4
class="code-header">fn <a href="#tymethod.write"
class="fn">write</a><'life0, 'async_trait>(
&'life0 mut self,
bs: Bytes,
) -> <a class="struct"
href="https://doc.rust-lang.org/nightly/core/pin/struct.Pin.html" title="struct
core::pin::Pin">Pin</a><<a class="struct"
href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html"
title="struct alloc::boxed::Box">Box</a><dyn <a class="trait"
href="https://doc.rust-lang.org/nightly/core/future/future/trait.Future.html"
title="trait core::future::future::Future">Future</a><Output = <a
class="type" href="../type.Result.html" title="type iceberg: [...]
Self: 'async_trait,
'life0: 'async_trait,</div></h4></section></summary><div
class="docblock"><p>Write bytes to file.</p>
<p>TODO: we can support writing non-contiguous bytes in the future.</p>
-</div></details><details class="toggle method-toggle" open><summary><section
id="tymethod.close" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#258">source</a><h4
class="code-header">fn <a href="#tymethod.close"
class="fn">close</a><'life0, 'async_trait>(
+</div></details><details class="toggle method-toggle" open><summary><section
id="tymethod.close" class="method"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#268">source</a><h4
class="code-header">fn <a href="#tymethod.close"
class="fn">close</a><'life0, 'async_trait>(
&'life0 mut self,
) -> <a class="struct"
href="https://doc.rust-lang.org/nightly/core/pin/struct.Pin.html" title="struct
core::pin::Pin">Pin</a><<a class="struct"
href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html"
title="struct alloc::boxed::Box">Box</a><dyn <a class="trait"
href="https://doc.rust-lang.org/nightly/core/future/future/trait.Future.html"
title="trait core::future::future::Future">Future</a><Output = <a
class="type" href="../type.Result.html" title="type iceberg: [...]
Self: 'async_trait,
'life0: 'async_trait,</div></h4></section></summary><div
class="docblock"><p>Close file.</p>
<p>Calling close on closed file will generate an error.</p>
-</div></details></div><h2 id="foreign-impls"
class="section-header">Implementations on Foreign Types<a href="#foreign-impls"
class="anchor">§</a></h2><details class="toggle
implementors-toggle"><summary><section id="impl-FileWrite-for-Writer"
class="impl"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#262-270">source</a><a
href="#impl-FileWrite-for-Writer" class="anchor">§</a><h3
class="code-header">impl <a class="trait" href="trait.FileWrite.html"
title="trait icebe [...]
+</div></details></div><h2 id="foreign-impls"
class="section-header">Implementations on Foreign Types<a href="#foreign-impls"
class="anchor">§</a></h2><details class="toggle
implementors-toggle"><summary><section id="impl-FileWrite-for-Writer"
class="impl"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#272-280">source</a><a
href="#impl-FileWrite-for-Writer" class="anchor">§</a><h3
class="code-header">impl <a class="trait" href="trait.FileWrite.html"
title="trait icebe [...]
&'life0 mut self,
bs: Bytes,
) -> <a class="struct"
href="https://doc.rust-lang.org/nightly/core/pin/struct.Pin.html" title="struct
core::pin::Pin">Pin</a><<a class="struct"
href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html"
title="struct alloc::boxed::Box">Box</a><dyn <a class="trait"
href="https://doc.rust-lang.org/nightly/core/future/future/trait.Future.html"
title="trait core::future::future::Future">Future</a><Output = <a
class="type" href="../type.Result.html" title="type iceberg: [...]
Self: 'async_trait,
- 'life0: 'async_trait,</div></h4></section><section id="method.close"
class="method trait-impl"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#267-269">source</a><a
href="#method.close" class="anchor">§</a><h4 class="code-header">fn <a
href="#tymethod.close" class="fn">close</a><'life0, 'async_trait>(
+ 'life0: 'async_trait,</div></h4></section><section id="method.close"
class="method trait-impl"><a class="src rightside"
href="../../src/iceberg/io/file_io.rs.html#277-279">source</a><a
href="#method.close" class="anchor">§</a><h4 class="code-header">fn <a
href="#tymethod.close" class="fn">close</a><'life0, 'async_trait>(
&'life0 mut self,
) -> <a class="struct"
href="https://doc.rust-lang.org/nightly/core/pin/struct.Pin.html" title="struct
core::pin::Pin">Pin</a><<a class="struct"
href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html"
title="struct alloc::boxed::Box">Box</a><dyn <a class="trait"
href="https://doc.rust-lang.org/nightly/core/future/future/trait.Future.html"
title="trait core::future::future::Future">Future</a><Output = <a
class="type" href="../type.Result.html" title="type iceberg: [...]
Self: 'async_trait,
diff --git a/api/iceberg/spec/enum.ManifestContentType.html
b/api/iceberg/spec/enum.ManifestContentType.html
index 78fde000..506d6a39 100644
--- a/api/iceberg/spec/enum.ManifestContentType.html
+++ b/api/iceberg/spec/enum.ManifestContentType.html
@@ -4,7 +4,7 @@
}</code></pre><details class="toggle top-doc" open><summary
class="hideme"><span>Expand description</span></summary><div
class="docblock"><p>The type of files tracked by the manifest, either data or
delete files; Data(0) for all v1 manifests</p>
</div></details><h2 id="variants" class="variants section-header">Variants<a
href="#variants" class="anchor">§</a></h2><div class="variants"><section
id="variant.Data" class="variant"><a href="#variant.Data"
class="anchor">§</a><h3 class="code-header">Data = 0</h3></section><div
class="docblock"><p>The manifest content is data.</p>
</div><section id="variant.Deletes" class="variant"><a href="#variant.Deletes"
class="anchor">§</a><h3 class="code-header">Deletes = 1</h3></section><div
class="docblock"><p>The manifest content is deletes.</p>
-</div></div><h2 id="trait-implementations" class="section-header">Trait
Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div
id="trait-implementations-list"><details class="toggle implementors-toggle"
open><summary><section id="impl-Clone-for-ManifestContentType" class="impl"><a
class="src rightside"
href="../../src/iceberg/spec/manifest_list.rs.html#584">source</a><a
href="#impl-Clone-for-ManifestContentType" class="anchor">§</a><h3
class="code-header">impl <a c [...]
+</div></div><h2 id="trait-implementations" class="section-header">Trait
Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div
id="trait-implementations-list"><details class="toggle implementors-toggle"
open><summary><section id="impl-Clone-for-ManifestContentType" class="impl"><a
class="src rightside"
href="../../src/iceberg/spec/manifest_list.rs.html#584">source</a><a
href="#impl-Clone-for-ManifestContentType" class="anchor">§</a><h3
class="code-header">impl <a c [...]
by <code>==</code>.</div></details><details class="toggle method-toggle"
open><summary><section id="method.ne" class="method trait-impl"><span
class="rightside"><span class="since" title="Stable since Rust version
1.0.0">1.0.0</span> · <a class="src"
href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a
href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a
href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne"
class= [...]
sufficient, and should not be overridden without very good
reason.</div></details></div></details><details class="toggle
implementors-toggle" open><summary><section
id="impl-TryFrom%3Ci32%3E-for-ManifestContentType" class="impl"><a class="src
rightside"
href="../../src/iceberg/spec/manifest_list.rs.html#616-632">source</a><a
href="#impl-TryFrom%3Ci32%3E-for-ManifestContentType" class="anchor">§</a><h3
class="code-header">impl <a class="trait"
href="https://doc.rust-lang.org/nightly/core/ [...]
T: 'static + ?<a class="trait"
href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"
title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div
class="impl-items"><details class="toggle method-toggle" open><summary><section
id="method.type_id" class="method trait-impl"><a class="src rightside"
href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a
href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href
[...]
diff --git a/api/iceberg/spec/enum.NullOrder.html
b/api/iceberg/spec/enum.NullOrder.html
index e43f63f1..302cda17 100644
--- a/api/iceberg/spec/enum.NullOrder.html
+++ b/api/iceberg/spec/enum.NullOrder.html
@@ -4,8 +4,8 @@
}</code></pre><details class="toggle top-doc" open><summary
class="hideme"><span>Expand description</span></summary><div
class="docblock"><p>Describes the order of null values when sorted.</p>
</div></details><h2 id="variants" class="variants section-header">Variants<a
href="#variants" class="anchor">§</a></h2><div class="variants"><section
id="variant.First" class="variant"><a href="#variant.First"
class="anchor">§</a><h3 class="code-header">First</h3></section><div
class="docblock"><p>Nulls are stored first</p>
</div><section id="variant.Last" class="variant"><a href="#variant.Last"
class="anchor">§</a><h3 class="code-header">Last</h3></section><div
class="docblock"><p>Nulls are stored last</p>
-</div></div><h2 id="trait-implementations" class="section-header">Trait
Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div
id="trait-implementations-list"><details class="toggle implementors-toggle"
open><summary><section id="impl-Clone-for-NullOrder" class="impl"><a class="src
rightside" href="../../src/iceberg/spec/sort.rs.html#55">source</a><a
href="#impl-Clone-for-NullOrder" class="anchor">§</a><h3
class="code-header">impl <a class="trait" href="https://doc [...]
- __D: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserializer.html"
title="trait
serde::de::Deserializer">Deserializer</a><'de>,</div></h4></section></summary><div
class='docblock'>Deserialize this value from the given Serde deserializer. <a
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserialize.html#tymethod.deserialize">Read
more</a></div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Displ [...]
+</div></div><h2 id="trait-implementations" class="section-header">Trait
Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div
id="trait-implementations-list"><details class="toggle implementors-toggle"
open><summary><section id="impl-Clone-for-NullOrder" class="impl"><a class="src
rightside" href="../../src/iceberg/spec/sort.rs.html#55">source</a><a
href="#impl-Clone-for-NullOrder" class="anchor">§</a><h3
class="code-header">impl <a class="trait" href="https://doc [...]
+ __D: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserializer.html"
title="trait
serde::de::Deserializer">Deserializer</a><'de>,</div></h4></section></summary><div
class='docblock'>Deserialize this value from the given Serde deserializer. <a
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserialize.html#tymethod.deserialize">Read
more</a></div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Displ [...]
by <code>==</code>.</div></details><details class="toggle method-toggle"
open><summary><section id="method.ne" class="method trait-impl"><span
class="rightside"><span class="since" title="Stable since Rust version
1.0.0">1.0.0</span> · <a class="src"
href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a
href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a
href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne"
class= [...]
sufficient, and should not be overridden without very good
reason.</div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Serialize-for-NullOrder"
class="impl"><a class="src rightside"
href="../../src/iceberg/spec/sort.rs.html#55">source</a><a
href="#impl-Serialize-for-NullOrder" class="anchor">§</a><h3
class="code-header">impl <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/ser/trait.Serialize.html"
title="trait serde::ser:: [...]
__S: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/ser/trait.Serializer.html"
title="trait
serde::ser::Serializer">Serializer</a>,</div></h4></section></summary><div
class='docblock'>Serialize this value into the given Serde serializer. <a
href="https://docs.rs/serde/1.0.210/serde/ser/trait.Serialize.html#tymethod.serialize">Read
more</a></div></details></div></details><section id="impl-Copy-for-NullOrder"
class="impl"><a class="src rightside" href="../../src/iceberg/spe [...]
diff --git a/api/iceberg/spec/enum.PrimitiveType.html
b/api/iceberg/spec/enum.PrimitiveType.html
index bb03ba07..10e1d525 100644
--- a/api/iceberg/spec/enum.PrimitiveType.html
+++ b/api/iceberg/spec/enum.PrimitiveType.html
@@ -45,8 +45,8 @@
__deserializer: __D,
) -> <a class="enum"
href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html"
title="enum core::result::Result">Result</a><<a class="enum"
href="enum.PrimitiveType.html" title="enum
iceberg::spec::PrimitiveType">PrimitiveType</a>, __D::<a class="associatedtype"
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserializer.html#associatedtype.Error"
title="type serde::de::Deserializer::Error">Error</a>><div
class="where">where
__D: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserializer.html"
title="trait
serde::de::Deserializer">Deserializer</a><'de>,</div></h4></section></div></details><details
class="toggle implementors-toggle" open><summary><section
id="impl-PrimitiveType-2" class="impl"><a class="src rightside"
href="../../src/iceberg/spec/datatypes.rs.html#242-265">source</a><a
href="#impl-PrimitiveType-2" class="anchor">§</a><h3 class="code-header">impl
<a class="enum" [...]
-</div></details></div></details></div><h2 id="trait-implementations"
class="section-header">Trait Implementations<a href="#trait-implementations"
class="anchor">§</a></h2><div id="trait-implementations-list"><details
class="toggle implementors-toggle" open><summary><section
id="impl-Clone-for-PrimitiveType" class="impl"><a class="src rightside"
href="../../src/iceberg/spec/datatypes.rs.html#200">source</a><a
href="#impl-Clone-for-PrimitiveType" class="anchor">§</a><h3
class="code-header" [...]
- D: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserializer.html"
title="trait
serde::de::Deserializer">Deserializer</a><'de>,</div></h4></section></summary><div
class='docblock'>Deserialize this value from the given Serde deserializer. <a
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserialize.html#tymethod.deserialize">Read
more</a></div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Display [...]
+</div></details></div></details></div><h2 id="trait-implementations"
class="section-header">Trait Implementations<a href="#trait-implementations"
class="anchor">§</a></h2><div id="trait-implementations-list"><details
class="toggle implementors-toggle" open><summary><section
id="impl-Clone-for-PrimitiveType" class="impl"><a class="src rightside"
href="../../src/iceberg/spec/datatypes.rs.html#200">source</a><a
href="#impl-Clone-for-PrimitiveType" class="anchor">§</a><h3
class="code-header" [...]
+ D: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserializer.html"
title="trait
serde::de::Deserializer">Deserializer</a><'de>,</div></h4></section></summary><div
class='docblock'>Deserialize this value from the given Serde deserializer. <a
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserialize.html#tymethod.deserialize">Read
more</a></div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Display [...]
H: <a class="trait"
href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html"
title="trait core::hash::Hasher">Hasher</a>,
Self: <a class="trait"
href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"
title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div
class='docblock'>Feeds a slice of this type into the given <a
href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html"
title="trait core::hash::Hasher"><code>Hasher</code></a>. <a
href="https://doc.rust-lang.org/nightly/core/hash/trait.Hash.html#method.hash_slice">Read
more</a></div></details></div></d [...]
by <code>==</code>.</div></details><details class="toggle method-toggle"
open><summary><section id="method.ne" class="method trait-impl"><span
class="rightside"><span class="since" title="Stable since Rust version
1.0.0">1.0.0</span> · <a class="src"
href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a
href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a
href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne"
class= [...]
diff --git a/api/iceberg/spec/enum.SortOrderBuilderError.html
b/api/iceberg/spec/enum.SortOrderBuilderError.html
index 65d194bb..0ca83947 100644
--- a/api/iceberg/spec/enum.SortOrderBuilderError.html
+++ b/api/iceberg/spec/enum.SortOrderBuilderError.html
@@ -4,7 +4,7 @@
}</code></pre><details class="toggle top-doc" open><summary
class="hideme"><span>Expand description</span></summary><div
class="docblock"><p>Error type for SortOrderBuilder</p>
</div></details><h2 id="variants" class="variants section-header">Variants
(Non-exhaustive)<a href="#variants" class="anchor">§</a></h2><details
class="toggle non-exhaustive"><summary class="hideme"><span>This enum is marked
as non-exhaustive</span></summary><div class="docblock">Non-exhaustive enums
could have additional variants added in future. Therefore, when matching
against variants of non-exhaustive enums, an extra wildcard arm must be added
to account for any future variants.</di [...]
</div><section id="variant.ValidationError" class="variant"><a
href="#variant.ValidationError" class="anchor">§</a><h3
class="code-header">ValidationError(<a class="struct"
href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html"
title="struct alloc::string::String">String</a>)</h3></section><div
class="docblock"><p>Custom validation error</p>
-</div></div><h2 id="trait-implementations" class="section-header">Trait
Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div
id="trait-implementations-list"><details class="toggle implementors-toggle"
open><summary><section id="impl-Debug-for-SortOrderBuilderError"
class="impl"><a class="src rightside"
href="../../src/iceberg/spec/sort.rs.html#99">source</a><a
href="#impl-Debug-for-SortOrderBuilderError" class="anchor">§</a><h3
class="code-header">impl <a class=" [...]
+</div></div><h2 id="trait-implementations" class="section-header">Trait
Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div
id="trait-implementations-list"><details class="toggle implementors-toggle"
open><summary><section id="impl-Debug-for-SortOrderBuilderError"
class="impl"><a class="src rightside"
href="../../src/iceberg/spec/sort.rs.html#99">source</a><a
href="#impl-Debug-for-SortOrderBuilderError" class="anchor">§</a><h3
class="code-header">impl <a class=" [...]
T: 'static + ?<a class="trait"
href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"
title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div
class="impl-items"><details class="toggle method-toggle" open><summary><section
id="method.type_id" class="method trait-impl"><a class="src rightside"
href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a
href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href
[...]
T: <a class="trait"
href="https://doc.rust-lang.org/nightly/core/error/trait.Error.html"
title="trait core::error::Error">Error</a> +
'static,</div></h3></section></summary><div class="impl-items"><details
class="toggle method-toggle" open><summary><section id="method.as_error_source"
class="method trait-impl"><a href="#method.as_error_source"
class="anchor">§</a><h4 class="code-header">fn <a
class="fn">as_error_source</a>(&self) -> &(dyn <a class="trait"
href="https://doc [...]
to benefit from Rust’s automatic dereferencing of method
diff --git a/api/iceberg/spec/enum.Transform.html
b/api/iceberg/spec/enum.Transform.html
index 7a2cd218..eaba5058 100644
--- a/api/iceberg/spec/enum.Transform.html
+++ b/api/iceberg/spec/enum.Transform.html
@@ -125,8 +125,8 @@ and filtering based on the original, untransformed data.</p>
<code>bucket(a, 37) as bs</code>, if one row matches <code>a = 10</code>, then
its partition
value should match <code>bucket(10, 37) as bs</code>, and we project <code>a =
10</code> to
<code>bs = bucket(10, 37)</code></p>
-</div></details></div></details></div><h2 id="trait-implementations"
class="section-header">Trait Implementations<a href="#trait-implementations"
class="anchor">§</a></h2><div id="trait-implementations-list"><details
class="toggle implementors-toggle" open><summary><section
id="impl-Clone-for-Transform" class="impl"><a class="src rightside"
href="../../src/iceberg/spec/transform.rs.html#48">source</a><a
href="#impl-Clone-for-Transform" class="anchor">§</a><h3
class="code-header">impl <a [...]
- D: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserializer.html"
title="trait
serde::de::Deserializer">Deserializer</a><'de>,</div></h4></section></summary><div
class='docblock'>Deserialize this value from the given Serde deserializer. <a
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserialize.html#tymethod.deserialize">Read
more</a></div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Display [...]
+</div></details></div></details></div><h2 id="trait-implementations"
class="section-header">Trait Implementations<a href="#trait-implementations"
class="anchor">§</a></h2><div id="trait-implementations-list"><details
class="toggle implementors-toggle" open><summary><section
id="impl-Clone-for-Transform" class="impl"><a class="src rightside"
href="../../src/iceberg/spec/transform.rs.html#48">source</a><a
href="#impl-Clone-for-Transform" class="anchor">§</a><h3
class="code-header">impl <a [...]
+ D: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserializer.html"
title="trait
serde::de::Deserializer">Deserializer</a><'de>,</div></h4></section></summary><div
class='docblock'>Deserialize this value from the given Serde deserializer. <a
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserialize.html#tymethod.deserialize">Read
more</a></div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Display [...]
by <code>==</code>.</div></details><details class="toggle method-toggle"
open><summary><section id="method.ne" class="method trait-impl"><span
class="rightside"><span class="since" title="Stable since Rust version
1.0.0">1.0.0</span> · <a class="src"
href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a
href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a
href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne"
class= [...]
sufficient, and should not be overridden without very good
reason.</div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Serialize-for-Transform"
class="impl"><a class="src rightside"
href="../../src/iceberg/spec/transform.rs.html#677-682">source</a><a
href="#impl-Serialize-for-Transform" class="anchor">§</a><h3
class="code-header">impl <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/ser/trait.Serialize.html"
title="trait se [...]
S: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/ser/trait.Serializer.html"
title="trait
serde::ser::Serializer">Serializer</a>,</div></h4></section></summary><div
class='docblock'>Serialize this value into the given Serde serializer. <a
href="https://docs.rs/serde/1.0.210/serde/ser/trait.Serialize.html#tymethod.serialize">Read
more</a></div></details></div></details><section id="impl-Copy-for-Transform"
class="impl"><a class="src rightside" href="../../src/iceberg/spec/ [...]
diff --git a/api/iceberg/spec/enum.Type.html b/api/iceberg/spec/enum.Type.html
index e71231f5..10435d45 100644
--- a/api/iceberg/spec/enum.Type.html
+++ b/api/iceberg/spec/enum.Type.html
@@ -17,8 +17,8 @@
</div></details><details class="toggle method-toggle" open><summary><section
id="method.decimal_required_bytes" class="method"><a class="src rightside"
href="../../src/iceberg/spec/datatypes.rs.html#153-156">source</a><h4
class="code-header">pub fn <a href="#method.decimal_required_bytes"
class="fn">decimal_required_bytes</a>(precision: <a class="primitive"
href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>) ->
<a class="type" href="../type.Result.html" title="typ [...]
</div></details><details class="toggle method-toggle" open><summary><section
id="method.decimal" class="method"><a class="src rightside"
href="../../src/iceberg/spec/datatypes.rs.html#160-163">source</a><h4
class="code-header">pub fn <a href="#method.decimal"
class="fn">decimal</a>(precision: <a class="primitive"
href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>, scale:
<a class="primitive"
href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>) -&g
[...]
</div></details><details class="toggle method-toggle" open><summary><section
id="method.is_floating_type" class="method"><a class="src rightside"
href="../../src/iceberg/spec/datatypes.rs.html#167-172">source</a><h4
class="code-header">pub fn <a href="#method.is_floating_type"
class="fn">is_floating_type</a>(&self) -> <a class="primitive"
href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div
class="docblock"><p>Check if it’s float o [...]
-</div></details></div></details></div><h2 id="trait-implementations"
class="section-header">Trait Implementations<a href="#trait-implementations"
class="anchor">§</a></h2><div id="trait-implementations-list"><details
class="toggle implementors-toggle" open><summary><section
id="impl-Clone-for-Type" class="impl"><a class="src rightside"
href="../../src/iceberg/spec/datatypes.rs.html#80">source</a><a
href="#impl-Clone-for-Type" class="anchor">§</a><h3 class="code-header">impl <a
class="tra [...]
- D: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserializer.html"
title="trait
serde::de::Deserializer">Deserializer</a><'de>,</div></h4></section></summary><div
class='docblock'>Deserialize this value from the given Serde deserializer. <a
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserialize.html#tymethod.deserialize">Read
more</a></div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Display [...]
+</div></details></div></details></div><h2 id="trait-implementations"
class="section-header">Trait Implementations<a href="#trait-implementations"
class="anchor">§</a></h2><div id="trait-implementations-list"><details
class="toggle implementors-toggle" open><summary><section
id="impl-Clone-for-Type" class="impl"><a class="src rightside"
href="../../src/iceberg/spec/datatypes.rs.html#80">source</a><a
href="#impl-Clone-for-Type" class="anchor">§</a><h3 class="code-header">impl <a
class="tra [...]
+ D: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserializer.html"
title="trait
serde::de::Deserializer">Deserializer</a><'de>,</div></h4></section></summary><div
class='docblock'>Deserialize this value from the given Serde deserializer. <a
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserialize.html#tymethod.deserialize">Read
more</a></div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Display [...]
by <code>==</code>.</div></details><details class="toggle method-toggle"
open><summary><section id="method.ne" class="method trait-impl"><span
class="rightside"><span class="since" title="Stable since Rust version
1.0.0">1.0.0</span> · <a class="src"
href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a
href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a
href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne"
class= [...]
sufficient, and should not be overridden without very good
reason.</div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Serialize-for-Type"
class="impl"><a class="src rightside"
href="../../src/iceberg/spec/datatypes.rs.html#267-273">source</a><a
href="#impl-Serialize-for-Type" class="anchor">§</a><h3
class="code-header">impl <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/ser/trait.Serialize.html"
title="trait serde::ser:: [...]
S: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/ser/trait.Serializer.html"
title="trait
serde::ser::Serializer">Serializer</a>,</div></h4></section></summary><div
class='docblock'>Serialize this value into the given Serde serializer. <a
href="https://docs.rs/serde/1.0.210/serde/ser/trait.Serialize.html#tymethod.serialize">Read
more</a></div></details></div></details><section id="impl-Eq-for-Type"
class="impl"><a class="src rightside" href="../../src/iceberg/spec/datatyp [...]
diff --git a/api/iceberg/spec/enum.ViewFormatVersion.html
b/api/iceberg/spec/enum.ViewFormatVersion.html
index 4d8658bb..1b301707 100644
--- a/api/iceberg/spec/enum.ViewFormatVersion.html
+++ b/api/iceberg/spec/enum.ViewFormatVersion.html
@@ -2,8 +2,8 @@
V1 = 1,
}</code></pre><details class="toggle top-doc" open><summary
class="hideme"><span>Expand description</span></summary><div
class="docblock"><p>Iceberg format version</p>
</div></details><h2 id="variants" class="variants section-header">Variants<a
href="#variants" class="anchor">§</a></h2><div class="variants"><section
id="variant.V1" class="variant"><a href="#variant.V1" class="anchor">§</a><h3
class="code-header">V1 = 1</h3></section><div class="docblock"><p>Iceberg view
spec version 1</p>
-</div></div><h2 id="trait-implementations" class="section-header">Trait
Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div
id="trait-implementations-list"><details class="toggle implementors-toggle"
open><summary><section id="impl-Clone-for-ViewFormatVersion" class="impl"><a
class="src rightside"
href="../../src/iceberg/spec/view_metadata.rs.html#397">source</a><a
href="#impl-Clone-for-ViewFormatVersion" class="anchor">§</a><h3
class="code-header">impl <a class [...]
- D: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserializer.html"
title="trait
serde::de::Deserializer">Deserializer</a><'de>,</div></h4></section></summary><div
class='docblock'>Deserialize this value from the given Serde deserializer. <a
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserialize.html#tymethod.deserialize">Read
more</a></div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Display [...]
+</div></div><h2 id="trait-implementations" class="section-header">Trait
Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div
id="trait-implementations-list"><details class="toggle implementors-toggle"
open><summary><section id="impl-Clone-for-ViewFormatVersion" class="impl"><a
class="src rightside"
href="../../src/iceberg/spec/view_metadata.rs.html#397">source</a><a
href="#impl-Clone-for-ViewFormatVersion" class="anchor">§</a><h3
class="code-header">impl <a class [...]
+ D: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserializer.html"
title="trait
serde::de::Deserializer">Deserializer</a><'de>,</div></h4></section></summary><div
class='docblock'>Deserialize this value from the given Serde deserializer. <a
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserialize.html#tymethod.deserialize">Read
more</a></div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Display [...]
Self: <a class="trait"
href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"
title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div
class='docblock'>Compares and returns the maximum of two values. <a
href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.max">Read
more</a></div></details><details class="toggle method-toggle"
open><summary><section id="method.min" class="method trait-impl"><span
class="rightside"><span class="si [...]
Self: <a class="trait"
href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"
title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div
class='docblock'>Compares and returns the minimum of two values. <a
href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.min">Read
more</a></div></details><details class="toggle method-toggle"
open><summary><section id="method.clamp" class="method trait-impl"><span
class="rightside"><span class=" [...]
Self: <a class="trait"
href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"
title="trait core::marker::Sized">Sized</a> + <a class="trait"
href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html"
title="trait
core::cmp::PartialOrd">PartialOrd</a>,</div></h4></section></summary><div
class='docblock'>Restrict a value to a certain interval. <a
href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.clamp">Read
more</a></div></details></div> [...]
diff --git a/api/iceberg/spec/struct.NestedField.html
b/api/iceberg/spec/struct.NestedField.html
index f91ae52a..adf19fb1 100644
--- a/api/iceberg/spec/struct.NestedField.html
+++ b/api/iceberg/spec/struct.NestedField.html
@@ -30,8 +30,8 @@ Fields may have an optional comment or doc string. Fields can
have default value
</div></details><details class="toggle method-toggle" open><summary><section
id="method.with_doc" class="method"><a class="src rightside"
href="../../src/iceberg/spec/datatypes.rs.html#655-658">source</a><h4
class="code-header">pub fn <a href="#method.with_doc"
class="fn">with_doc</a>(self, doc: impl <a class="trait"
href="https://doc.rust-lang.org/nightly/alloc/string/trait.ToString.html"
title="trait alloc::string::ToString">ToString</a>) ->
Self</h4></section></summary><div class=" [...]
</div></details><details class="toggle method-toggle" open><summary><section
id="method.with_initial_default" class="method"><a class="src rightside"
href="../../src/iceberg/spec/datatypes.rs.html#661-664">source</a><h4
class="code-header">pub fn <a href="#method.with_initial_default"
class="fn">with_initial_default</a>(self, value: <a class="enum"
href="enum.Literal.html" title="enum iceberg::spec::Literal">Literal</a>) ->
Self</h4></section></summary><div class="docblock"><p>Set the [...]
</div></details><details class="toggle method-toggle" open><summary><section
id="method.with_write_default" class="method"><a class="src rightside"
href="../../src/iceberg/spec/datatypes.rs.html#667-670">source</a><h4
class="code-header">pub fn <a href="#method.with_write_default"
class="fn">with_write_default</a>(self, value: <a class="enum"
href="enum.Literal.html" title="enum iceberg::spec::Literal">Literal</a>) ->
Self</h4></section></summary><div class="docblock"><p>Set the field [...]
-</div></details></div></details></div><h2 id="trait-implementations"
class="section-header">Trait Implementations<a href="#trait-implementations"
class="anchor">§</a></h2><div id="trait-implementations-list"><details
class="toggle implementors-toggle" open><summary><section
id="impl-Clone-for-NestedField" class="impl"><a class="src rightside"
href="../../src/iceberg/spec/datatypes.rs.html#512">source</a><a
href="#impl-Clone-for-NestedField" class="anchor">§</a><h3
class="code-header">imp [...]
- __D: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserializer.html"
title="trait
serde::de::Deserializer">Deserializer</a><'de>,</div></h4></section></summary><div
class='docblock'>Deserialize this value from the given Serde deserializer. <a
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserialize.html#tymethod.deserialize">Read
more</a></div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Displ [...]
+</div></details></div></details></div><h2 id="trait-implementations"
class="section-header">Trait Implementations<a href="#trait-implementations"
class="anchor">§</a></h2><div id="trait-implementations-list"><details
class="toggle implementors-toggle" open><summary><section
id="impl-Clone-for-NestedField" class="impl"><a class="src rightside"
href="../../src/iceberg/spec/datatypes.rs.html#512">source</a><a
href="#impl-Clone-for-NestedField" class="anchor">§</a><h3
class="code-header">imp [...]
+ __D: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserializer.html"
title="trait
serde::de::Deserializer">Deserializer</a><'de>,</div></h4></section></summary><div
class='docblock'>Deserialize this value from the given Serde deserializer. <a
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserialize.html#tymethod.deserialize">Read
more</a></div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Displ [...]
by <code>==</code>.</div></details><details class="toggle method-toggle"
open><summary><section id="method.ne" class="method trait-impl"><span
class="rightside"><span class="since" title="Stable since Rust version
1.0.0">1.0.0</span> · <a class="src"
href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a
href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a
href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne"
class= [...]
sufficient, and should not be overridden without very good
reason.</div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Serialize-for-NestedField"
class="impl"><a class="src rightside"
href="../../src/iceberg/spec/datatypes.rs.html#512">source</a><a
href="#impl-Serialize-for-NestedField" class="anchor">§</a><h3
class="code-header">impl <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/ser/trait.Serialize.html"
title="trait se [...]
__S: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/ser/trait.Serializer.html"
title="trait
serde::ser::Serializer">Serializer</a>,</div></h4></section></summary><div
class='docblock'>Serialize this value into the given Serde serializer. <a
href="https://docs.rs/serde/1.0.210/serde/ser/trait.Serialize.html#tymethod.serialize">Read
more</a></div></details></div></details><section id="impl-Eq-for-NestedField"
class="impl"><a class="src rightside" href="../../src/iceberg/spe [...]
diff --git a/api/iceberg/spec/struct.Schema.html
b/api/iceberg/spec/struct.Schema.html
index 6db2e5eb..988e9b78 100644
--- a/api/iceberg/spec/struct.Schema.html
+++ b/api/iceberg/spec/struct.Schema.html
@@ -17,8 +17,8 @@
</div></details><details class="toggle method-toggle" open><summary><section
id="method.field_id_by_name" class="method"><a class="src rightside"
href="../../src/iceberg/spec/schema.rs.html#336-338">source</a><h4
class="code-header">pub fn <a href="#method.field_id_by_name"
class="fn">field_id_by_name</a>(&self, name: &<a class="primitive"
href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>) ->
<a class="enum" href="https://doc.rust-lang.org/nightly/core/op [...]
</div></details><details class="toggle method-toggle" open><summary><section
id="method.name_by_field_id" class="method"><a class="src rightside"
href="../../src/iceberg/spec/schema.rs.html#341-343">source</a><h4
class="code-header">pub fn <a href="#method.name_by_field_id"
class="fn">name_by_field_id</a>(&self, field_id: <a class="primitive"
href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>) ->
<a class="enum" href="https://doc.rust-lang.org/nightly/core/opt [...]
</div></details><details class="toggle method-toggle" open><summary><section
id="method.accessor_by_field_id" class="method"><a class="src rightside"
href="../../src/iceberg/spec/schema.rs.html#346-348">source</a><h4
class="code-header">pub fn <a href="#method.accessor_by_field_id"
class="fn">accessor_by_field_id</a>(&self, field_id: <a class="primitive"
href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>) ->
<a class="enum" href="https://doc.rust-lang.org/nigh [...]
-</div></details></div></details></div><h2 id="trait-implementations"
class="section-header">Trait Implementations<a href="#trait-implementations"
class="anchor">§</a></h2><div id="trait-implementations-list"><details
class="toggle implementors-toggle" open><summary><section
id="impl-Clone-for-Schema" class="impl"><a class="src rightside"
href="../../src/iceberg/spec/schema.rs.html#45">source</a><a
href="#impl-Clone-for-Schema" class="anchor">§</a><h3 class="code-header">impl
<a class="tr [...]
- __D: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserializer.html"
title="trait
serde::de::Deserializer">Deserializer</a><'de>,</div></h4></section></summary><div
class='docblock'>Deserialize this value from the given Serde deserializer. <a
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserialize.html#tymethod.deserialize">Read
more</a></div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Displ [...]
+</div></details></div></details></div><h2 id="trait-implementations"
class="section-header">Trait Implementations<a href="#trait-implementations"
class="anchor">§</a></h2><div id="trait-implementations-list"><details
class="toggle implementors-toggle" open><summary><section
id="impl-Clone-for-Schema" class="impl"><a class="src rightside"
href="../../src/iceberg/spec/schema.rs.html#45">source</a><a
href="#impl-Clone-for-Schema" class="anchor">§</a><h3 class="code-header">impl
<a class="tr [...]
+ __D: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserializer.html"
title="trait
serde::de::Deserializer">Deserializer</a><'de>,</div></h4></section></summary><div
class='docblock'>Deserialize this value from the given Serde deserializer. <a
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserialize.html#tymethod.deserialize">Read
more</a></div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Displ [...]
by <code>==</code>.</div></details><details class="toggle method-toggle"
open><summary><section id="method.ne" class="method trait-impl"><span
class="rightside"><span class="since" title="Stable since Rust version
1.0.0">1.0.0</span> · <a class="src"
href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a
href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a
href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne"
class= [...]
sufficient, and should not be overridden without very good
reason.</div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Serialize-for-Schema"
class="impl"><a class="src rightside"
href="../../src/iceberg/spec/schema.rs.html#45">source</a><a
href="#impl-Serialize-for-Schema" class="anchor">§</a><h3
class="code-header">impl <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/ser/trait.Serialize.html"
title="trait serde::ser::Seri [...]
__S: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/ser/trait.Serializer.html"
title="trait
serde::ser::Serializer">Serializer</a>,</div></h4></section></summary><div
class='docblock'>Serialize this value into the given Serde serializer. <a
href="https://docs.rs/serde/1.0.210/serde/ser/trait.Serialize.html#tymethod.serialize">Read
more</a></div></details></div></details><details class="toggle
implementors-toggle" open><summary><section
id="impl-TryFrom%3C%26Schema%3E-for- [...]
diff --git a/api/iceberg/spec/struct.StructType.html
b/api/iceberg/spec/struct.StructType.html
index 2103ad1a..0a8830f8 100644
--- a/api/iceberg/spec/struct.StructType.html
+++ b/api/iceberg/spec/struct.StructType.html
@@ -3,8 +3,8 @@
</div></details><details class="toggle method-toggle" open><summary><section
id="method.field_by_id" class="method"><a class="src rightside"
href="../../src/iceberg/spec/datatypes.rs.html#448-450">source</a><h4
class="code-header">pub fn <a href="#method.field_by_id"
class="fn">field_by_id</a>(&self, id: <a class="primitive"
href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>) ->
<a class="enum"
href="https://doc.rust-lang.org/nightly/core/option/enum.Option.ht [...]
</div></details><details class="toggle method-toggle" open><summary><section
id="method.field_by_name" class="method"><a class="src rightside"
href="../../src/iceberg/spec/datatypes.rs.html#462-464">source</a><h4
class="code-header">pub fn <a href="#method.field_by_name"
class="fn">field_by_name</a>(&self, name: &<a class="primitive"
href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>) ->
<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/e [...]
</div></details><details class="toggle method-toggle" open><summary><section
id="method.fields" class="method"><a class="src rightside"
href="../../src/iceberg/spec/datatypes.rs.html#481-483">source</a><h4
class="code-header">pub fn <a href="#method.fields"
class="fn">fields</a>(&self) -> &[<a class="type"
href="type.NestedFieldRef.html" title="type
iceberg::spec::NestedFieldRef">NestedFieldRef</a>]</h4></section></summary><div
class="docblock"><p>Get fields.</p>
-</div></details></div></details></div><h2 id="trait-implementations"
class="section-header">Trait Implementations<a href="#trait-implementations"
class="anchor">§</a></h2><div id="trait-implementations-list"><details
class="toggle implementors-toggle" open><summary><section
id="impl-Clone-for-StructType" class="impl"><a class="src rightside"
href="../../src/iceberg/spec/datatypes.rs.html#380">source</a><a
href="#impl-Clone-for-StructType" class="anchor">§</a><h3
class="code-header">impl [...]
- D: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserializer.html"
title="trait
serde::de::Deserializer">Deserializer</a><'de>,</div></h4></section></summary><div
class='docblock'>Deserialize this value from the given Serde deserializer. <a
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserialize.html#tymethod.deserialize">Read
more</a></div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Display [...]
+</div></details></div></details></div><h2 id="trait-implementations"
class="section-header">Trait Implementations<a href="#trait-implementations"
class="anchor">§</a></h2><div id="trait-implementations-list"><details
class="toggle implementors-toggle" open><summary><section
id="impl-Clone-for-StructType" class="impl"><a class="src rightside"
href="../../src/iceberg/spec/datatypes.rs.html#380">source</a><a
href="#impl-Clone-for-StructType" class="anchor">§</a><h3
class="code-header">impl [...]
+ D: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserializer.html"
title="trait
serde::de::Deserializer">Deserializer</a><'de>,</div></h4></section></summary><div
class='docblock'>Deserialize this value from the given Serde deserializer. <a
href="https://docs.rs/serde/1.0.210/serde/de/trait.Deserialize.html#tymethod.deserialize">Read
more</a></div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Display [...]
by <code>==</code>.</div></details><details class="toggle method-toggle"
open><summary><section id="method.ne" class="method trait-impl"><span
class="rightside"><span class="since" title="Stable since Rust version
1.0.0">1.0.0</span> · <a class="src"
href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a
href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a
href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne"
class= [...]
sufficient, and should not be overridden without very good
reason.</div></details></div></details><details class="toggle
implementors-toggle" open><summary><section id="impl-Serialize-for-StructType"
class="impl"><a class="src rightside"
href="../../src/iceberg/spec/datatypes.rs.html#380">source</a><a
href="#impl-Serialize-for-StructType" class="anchor">§</a><h3
class="code-header">impl <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/ser/trait.Serialize.html"
title="trait serd [...]
__S: <a class="trait"
href="https://docs.rs/serde/1.0.210/serde/ser/trait.Serializer.html"
title="trait
serde::ser::Serializer">Serializer</a>,</div></h4></section></summary><div
class='docblock'>Serialize this value into the given Serde serializer. <a
href="https://docs.rs/serde/1.0.210/serde/ser/trait.Serialize.html#tymethod.serialize">Read
more</a></div></details></div></details><section id="impl-Eq-for-StructType"
class="impl"><a class="src rightside" href="../../src/iceberg/spec [...]
diff --git a/api/iceberg/struct.Error.html b/api/iceberg/struct.Error.html
index 6db1a5f9..92e56d20 100644
--- a/api/iceberg/struct.Error.html
+++ b/api/iceberg/struct.Error.html
@@ -35,7 +35,7 @@ Backtrace:
</div></details><details class="toggle method-toggle" open><summary><section
id="method.kind" class="method"><a class="src rightside"
href="../src/iceberg/error.rs.html#241-243">source</a><h4
class="code-header">pub fn <a href="#method.kind"
class="fn">kind</a>(&self) -> <a class="enum" href="enum.ErrorKind.html"
title="enum iceberg::ErrorKind">ErrorKind</a></h4></section></summary><div
class="docblock"><p>Return error’s kind.</p>
<p>Users can use this method to check error’s kind and take actions.</p>
</div></details><details class="toggle method-toggle" open><summary><section
id="method.message" class="method"><a class="src rightside"
href="../src/iceberg/error.rs.html#247-249">source</a><h4
class="code-header">pub fn <a href="#method.message"
class="fn">message</a>(&self) -> &<a class="primitive"
href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a></h4></section></summary><div
class="docblock"><p>Return error’s message.</p>
-</div></details></div></details></div><h2 id="trait-implementations"
class="section-header">Trait Implementations<a href="#trait-implementations"
class="anchor">§</a></h2><div id="trait-implementations-list"><details
class="toggle implementors-toggle" open><summary><section
id="impl-Debug-for-Error" class="impl"><a class="src rightside"
href="../src/iceberg/error.rs.html#148-187">source</a><a
href="#impl-Debug-for-Error" class="anchor">§</a><h3 class="code-header">impl
<a class="trait" h [...]
+</div></details></div></details></div><h2 id="trait-implementations"
class="section-header">Trait Implementations<a href="#trait-implementations"
class="anchor">§</a></h2><div id="trait-implementations-list"><details
class="toggle implementors-toggle" open><summary><section
id="impl-Debug-for-Error" class="impl"><a class="src rightside"
href="../src/iceberg/error.rs.html#148-187">source</a><a
href="#impl-Debug-for-Error" class="anchor">§</a><h3 class="code-header">impl
<a class="trait" h [...]
T: 'static + ?<a class="trait"
href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"
title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div
class="impl-items"><details class="toggle method-toggle" open><summary><section
id="method.type_id" class="method trait-impl"><a class="src rightside"
href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a
href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href
[...]
T: <a class="trait"
href="https://doc.rust-lang.org/nightly/core/error/trait.Error.html"
title="trait core::error::Error">Error</a> +
'static,</div></h3></section></summary><div class="impl-items"><details
class="toggle method-toggle" open><summary><section id="method.as_error_source"
class="method trait-impl"><a href="#method.as_error_source"
class="anchor">§</a><h4 class="code-header">fn <a
class="fn">as_error_source</a>(&self) -> &(dyn <a class="trait"
href="https://doc [...]
to benefit from Rust’s automatic dereferencing of method
diff --git a/api/search-index.js b/api/search-index.js
index 79d4a857..90baf63c 100644
--- a/api/search-index.js
+++ b/api/search-index.js
@@ -1,5 +1,5 @@
var searchIndex = new Map(JSON.parse('[\
-["iceberg",{"t":"PPPPPKPPPPPFGPPPFFPPPPPPIPPPPPPFFFGGPPPFNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMQNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNCNMMMOONNNOOONOMNNNNNONOOMOCOONNNNONCOCMNNNNNNNNNNCCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMNNNNNNNNNNNNNCOOOOOOOOOOOOOOOOOOOOOOOOOFFKRRNNNNNNNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNMMMNMHMNNNNNNNHNNNNNPPPPPPPPFKRGFIPPPPPPPPFPPPPPPPPPGGFPPFPIPPFNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
[...]
+["iceberg",{"t":"PPPPPKPPPPPFGPPPFFPPPPPPIPPPPPPFFFGGPPPFNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMOONNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMQNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNCNMMMOONNNOOONOMNNNNNONOOMOCOONNNNONCOCMNNNNNNNNNNCCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMNNNNNNNNNNNNNCOOOOOOOOOOOOOOOOOOOOOOOOOFFKRRNNNNNNNNHHNNNNNNNNNNNNNNNNNNNNNNNNNNNMMMNMHMNNNNNNNHNNNNNPPPPPPPPFKRGFIPPPPPPPPFPPPPPPPPPGGFPPFPIPPFNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
[...]
["iceberg_catalog_glue",{"t":"SSSSSFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNQ","n":["AWS_ACCESS_KEY_ID","AWS_PROFILE_NAME","AWS_REGION_NAME","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN","GlueCatalog","GlueCatalogConfig","borrow","borrow","borrow_mut","borrow_mut","builder","create_namespace","create_table","deref","deref","deref_mut","deref_mut","drop","drop","drop_namespace","drop_table","file_io","fmt","fmt","from","from","get_namespace","init","init","into","into","into_shared","i
[...]
["iceberg_catalog_hms",{"t":"PPFFGNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["Buffered","Framed","HmsCatalog","HmsCatalogConfig","HmsThriftTransport","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","builder","create_namespace","create_table","default","deref","deref","deref","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop_namespace","drop_table","file_io","fmt","fmt","fmt","from","from","from","get_namespace","init","init","init","into
[...]
["iceberg_catalog_memory",{"t":"FNNNNNNNNNNNNNNNNNNNNNNNNNNN","n":["MemoryCatalog","borrow","borrow_mut","create_namespace","create_table","deref","deref_mut","drop","drop_namespace","drop_table","fmt","from","get_namespace","init","into","list_namespaces","list_tables","load_table","namespace_exists","new","rename_table","table_exists","try_from","try_into","type_id","update_namespace","update_table","vzip"],"q":[[0,"iceberg_catalog_memory"],[28,"iceberg_catalog_memory::catalog"],[29,"i
[...]
diff --git a/api/search.desc/iceberg/iceberg-desc-0-.js
b/api/search.desc/iceberg/iceberg-desc-0-.js
index 339e00f1..4bf358fa 100644
--- a/api/search.desc/iceberg/iceberg-desc-0-.js
+++ b/api/search.desc/iceberg/iceberg-desc-0-.js
@@ -1 +1 @@
-searchState.loadedDescShard("iceberg", 0, "Apache Iceberg Official Native Rust
Implementation\nAdd a new schema to the table\nAdd snapshot to table.\nAdd sort
order to table.\nAdd a new partition spec to the table\nAssign a new UUID to
the table\nThe catalog API for Iceberg Rust.\nThe table’s current schema id
must match the requirement.\nIceberg data is invalid.\nThe table’s default sort
order id must match the …\nThe table’s default spec id must match the
requirement.\nContains the err [...]
\ No newline at end of file
+searchState.loadedDescShard("iceberg", 0, "Apache Iceberg Official Native Rust
Implementation\nAdd a new schema to the table\nAdd snapshot to table.\nAdd sort
order to table.\nAdd a new partition spec to the table\nAssign a new UUID to
the table\nThe catalog API for Iceberg Rust.\nThe table’s current schema id
must match the requirement.\nIceberg data is invalid.\nThe table’s default sort
order id must match the …\nThe table’s default spec id must match the
requirement.\nContains the err [...]
\ No newline at end of file
diff --git a/api/src/iceberg/io/file_io.rs.html
b/api/src/iceberg/io/file_io.rs.html
index 4a8f5fb3..6c2bdca1 100644
--- a/api/src/iceberg/io/file_io.rs.html
+++ b/api/src/iceberg/io/file_io.rs.html
@@ -445,6 +445,16 @@
<a href="#445" id="445">445</a>
<a href="#446" id="446">446</a>
<a href="#447" id="447">447</a>
+<a href="#448" id="448">448</a>
+<a href="#449" id="449">449</a>
+<a href="#450" id="450">450</a>
+<a href="#451" id="451">451</a>
+<a href="#452" id="452">452</a>
+<a href="#453" id="453">453</a>
+<a href="#454" id="454">454</a>
+<a href="#455" id="455">455</a>
+<a href="#456" id="456">456</a>
+<a href="#457" id="457">457</a>
</pre></div><pre class="rust"><code><span class="comment">// Licensed to the
Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -479,16 +489,25 @@
///
/// All path passed to `FileIO` must be absolute path starting with scheme
string used to construct `FileIO`.
/// For example, if you construct `FileIO` with `s3a` scheme, then all path
passed to `FileIO` must start with `s3a://`.
+///
+/// Supported storages:
+///
+/// | Storage | Feature Flag | Schemes |
+/// |--------------------|-------------------|------------|
+/// | Local file system | `storage-fs` | `file` |
+/// | Memory | `storage-memory` | `memory` |
+/// | S3 | `storage-s3` | `s3`, `s3a`|
+/// | GCS | `storage-gcs` | `gs` |
</span><span class="attr">#[derive(Clone, Debug)]
</span><span class="kw">pub struct </span>FileIO {
inner: Arc<Storage>,
}
<span class="kw">impl </span>FileIO {
- <span class="doccomment">/// Try to infer file io scheme from path.
+ <span class="doccomment">/// Try to infer file io scheme from path. See
[`FileIO`] for supported schemes.
///
- /// If it's a valid url, for example http://example.org, url scheme will
be used.
- /// If it's not a valid url, will try to detect if it's a file path.
+ /// - If it's a valid url, for example `s3://bucket/a`, url scheme will be
used, and the rest of the url will be ignored.
+ /// - If it's not a valid url, will try to detect if it's a file path.
///
/// Otherwise will return parsing error.
</span><span class="kw">pub fn </span>from_path(path: <span
class="kw">impl </span>AsRef<str>) -> <span
class="kw">crate</span>::Result<FileIOBuilder> {
@@ -558,6 +577,7 @@
<span class="kw">impl </span>FileIOBuilder {
<span class="doccomment">/// Creates a new builder with scheme.
+ /// See [`FileIO`] for supported schemes.
</span><span class="kw">pub fn </span>new(scheme_str: <span
class="kw">impl </span>ToString) -> <span class="self">Self </span>{
<span class="self">Self </span>{
scheme_str: <span
class="prelude-val">Some</span>(scheme_str.to_string()),
diff --git a/api/src/iceberg/io/storage.rs.html
b/api/src/iceberg/io/storage.rs.html
index 2dcb6f95..905f756d 100644
--- a/api/src/iceberg/io/storage.rs.html
+++ b/api/src/iceberg/io/storage.rs.html
@@ -170,6 +170,7 @@
<a href="#170" id="170">170</a>
<a href="#171" id="171">171</a>
<a href="#172" id="172">172</a>
+<a href="#173" id="173">173</a>
</pre></div><pre class="rust"><code><span class="comment">// Licensed to the
Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -241,7 +242,8 @@
</span>Scheme::Gcs => <span class="prelude-val">Ok</span>(<span
class="self">Self</span>::Gcs {
config: <span
class="kw">super</span>::gcs_config_parse(props)<span
class="question-mark">?</span>.into(),
}),
- <span class="kw">_ </span>=> <span
class="prelude-val">Err</span>(Error::new(
+ <span class="comment">// Update doc on [`FileIO`] when adding new
schemes.
+ </span><span class="kw">_ </span>=> <span
class="prelude-val">Err</span>(Error::new(
ErrorKind::FeatureUnsupported,
<span class="macro">format!</span>(<span
class="string">"Constructing file io from scheme: {scheme} not supported
now"</span>,),
)),