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/arrow-nanoarrow.git
The following commit(s) were added to refs/heads/gh-pages by this push:
new 92d0546 update documentation for tag dev
92d0546 is described below
commit 92d0546d1673438af29b4967962ae69bf3c78e7b
Author: GitHub Actions <[email protected]>
AuthorDate: Fri Sep 16 01:43:22 2022 +0000
update documentation for tag dev
---
dev/r/index.html | 154 +++++++++++++++++++++++-
dev/r/pkgdown.yml | 2 +-
dev/r/reference/as_nanoarrow_array.html | 43 +++++++
dev/r/reference/as_nanoarrow_array_stream.html | 51 ++++++++
dev/r/reference/as_nanoarrow_schema.html | 28 +++++
dev/r/reference/index.html | 2 +-
dev/r/reference/nanoarrow_build_id.html | 2 +-
dev/r/reference/nanoarrow_pointer_is_valid.html | 2 +
dev/r/search.json | 2 +-
9 files changed, 281 insertions(+), 5 deletions(-)
diff --git a/dev/r/index.html b/dev/r/index.html
index 347b493..554795e 100644
--- a/dev/r/index.html
+++ b/dev/r/index.html
@@ -77,7 +77,159 @@
<p>You can install the development version of nanoarrow from <a
href="https://github.com/" class="external-link">GitHub</a> with:</p>
<div class="sourceCode" id="cb1"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="co">#
install.packages("remotes")</span></span>
-<span><span class="fu">remotes</span><span class="fu">::</span><span
class="fu">install_github</span><span class="op">(</span><span
class="st">"apache/arrow-nanoarrow/r"</span><span
class="op">)</span></span></code></pre></div>
+<span><span class="fu">remotes</span><span class="fu">::</span><span
class="fu">install_github</span><span class="op">(</span><span
class="st">"apache/arrow-nanoarrow/r"</span>, build <span class="op">=</span>
<span class="cn">FALSE</span><span class="op">)</span></span></code></pre></div>
+<p>If you can load the package, you’re good to go!</p>
+<div class="sourceCode" id="cb2"><pre class="downlit sourceCode r">
+<code class="sourceCode R"><span><span class="kw"><a
href="https://rdrr.io/r/base/library.html"
class="external-link">library</a></span><span class="op">(</span><span
class="va"><a href="https://github.com/apache/arrow-nanoarrow"
class="external-link">nanoarrow</a></span><span
class="op">)</span></span></code></pre></div>
+</div>
+<div class="section level2">
+<h2 id="example">Example<a class="anchor" aria-label="anchor"
href="#example"></a>
+</h2>
+<p>The Arrow C Data and Arrow C Stream interfaces are comprised of three
structures: the <code>ArrowSchema</code> which represents a data type of an
array, the <code>ArrowArray</code> which represents the values of an array, and
an <code>ArrowArrayStream</code>, which represents zero or more
<code>ArrowArray</code>s with a common <code>ArrowSchema</code>. All three can
be wrapped by R objects using the nanoarrow R package.</p>
+<div class="section level3">
+<h3 id="schemas">Schemas<a class="anchor" aria-label="anchor"
href="#schemas"></a>
+</h3>
+<p>Use <code><a
href="reference/as_nanoarrow_schema.html">infer_nanoarrow_schema()</a></code>
to get the ArrowSchema object that corresponds to a given R vector type; use
<code><a
href="reference/as_nanoarrow_schema.html">as_nanoarrow_schema()</a></code> to
convert an object from some other data type representation (e.g., an arrow R
package <code>DataType</code> like <code><a
href="https://arrow.apache.org/docs/r/reference/data-type.html"
class="external-link">arrow::int32()</a></code>).</p>
+<div class="sourceCode" id="cb3"><pre class="downlit sourceCode r">
+<code class="sourceCode R"><span><span class="fu"><a
href="reference/as_nanoarrow_schema.html">infer_nanoarrow_schema</a></span><span
class="op">(</span><span class="fl">1</span><span class="op">:</span><span
class="fl">5</span><span class="op">)</span></span>
+<span><span class="co">#> <nanoarrow_schema[i]></span></span>
+<span><span class="co">#> $ format : chr "i"</span></span>
+<span><span class="co">#> $ name : chr ""</span></span>
+<span><span class="co">#> $ metadata : list()</span></span>
+<span><span class="co">#> $ flags : int 2</span></span>
+<span><span class="co">#> $ children : NULL</span></span>
+<span><span class="co">#> $ dictionary: NULL</span></span>
+<span><span class="fu"><a
href="reference/as_nanoarrow_schema.html">as_nanoarrow_schema</a></span><span
class="op">(</span><span class="fu">arrow</span><span class="fu">::</span><span
class="fu"><a href="https://arrow.apache.org/docs/r/reference/Schema.html"
class="external-link">schema</a></span><span class="op">(</span>col1 <span
class="op">=</span> <span class="fu">arrow</span><span
class="fu">::</span><span class="fu"><a
href="https://arrow.apache.org/docs/r/reference/data-type.html" [...]
+<span><span class="co">#> <nanoarrow_schema[+s]></span></span>
+<span><span class="co">#> $ format : chr "+s"</span></span>
+<span><span class="co">#> $ name : chr ""</span></span>
+<span><span class="co">#> $ metadata : list()</span></span>
+<span><span class="co">#> $ flags : int 0</span></span>
+<span><span class="co">#> $ children :List of 1</span></span>
+<span><span class="co">#> ..$
col1:<nanoarrow_schema[g]></span></span>
+<span><span class="co">#> .. ..$ format : chr "g"</span></span>
+<span><span class="co">#> .. ..$ name : chr "col1"</span></span>
+<span><span class="co">#> .. ..$ metadata : list()</span></span>
+<span><span class="co">#> .. ..$ flags : int 2</span></span>
+<span><span class="co">#> .. ..$ children : NULL</span></span>
+<span><span class="co">#> .. ..$ dictionary: NULL</span></span>
+<span><span class="co">#> $ dictionary:
NULL</span></span></code></pre></div>
+</div>
+<div class="section level3">
+<h3 id="arrays">Arrays<a class="anchor" aria-label="anchor" href="#arrays"></a>
+</h3>
+<p>Use <code><a
href="reference/as_nanoarrow_array.html">as_nanoarrow_array()</a></code> to
convert an object to an ArrowArray object:</p>
+<div class="sourceCode" id="cb4"><pre class="downlit sourceCode r">
+<code class="sourceCode R"><span><span class="fu"><a
href="reference/as_nanoarrow_array.html">as_nanoarrow_array</a></span><span
class="op">(</span><span class="fl">1</span><span class="op">:</span><span
class="fl">5</span><span class="op">)</span></span>
+<span><span class="co">#> <nanoarrow_array i[5]></span></span>
+<span><span class="co">#> $ length : int 5</span></span>
+<span><span class="co">#> $ null_count: int 0</span></span>
+<span><span class="co">#> $ offset : int 0</span></span>
+<span><span class="co">#> $ buffers :List of 2</span></span>
+<span><span class="co">#> ..$ :<nanoarrow_buffer_validity[0 b] at
0x0></span></span>
+<span><span class="co">#> ..$ :<nanoarrow_buffer_data_int32[20 b] at
0x1397d7758></span></span>
+<span><span class="co">#> $ dictionary: NULL</span></span>
+<span><span class="co">#> $ children : list()</span></span>
+<span><span class="fu"><a
href="reference/as_nanoarrow_array.html">as_nanoarrow_array</a></span><span
class="op">(</span><span class="fu">arrow</span><span class="fu">::</span><span
class="fu"><a href="https://arrow.apache.org/docs/r/reference/RecordBatch.html"
class="external-link">record_batch</a></span><span class="op">(</span>col1
<span class="op">=</span> <span class="fu"><a
href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span
class="op">(</span><span class=" [...]
+<span><span class="co">#> <nanoarrow_array +s[2]></span></span>
+<span><span class="co">#> $ length : int 2</span></span>
+<span><span class="co">#> $ null_count: int 0</span></span>
+<span><span class="co">#> $ offset : int 0</span></span>
+<span><span class="co">#> $ buffers :List of 1</span></span>
+<span><span class="co">#> ..$ :<nanoarrow_buffer_validity[0 b] at
0x0></span></span>
+<span><span class="co">#> $ children :List of 1</span></span>
+<span><span class="co">#> ..$ col1:<nanoarrow_array
g[2]></span></span>
+<span><span class="co">#> .. ..$ length : int 2</span></span>
+<span><span class="co">#> .. ..$ null_count: int 0</span></span>
+<span><span class="co">#> .. ..$ offset : int 0</span></span>
+<span><span class="co">#> .. ..$ buffers :List of 2</span></span>
+<span><span class="co">#> .. .. ..$ :<nanoarrow_buffer_validity[0 b]
at 0x0></span></span>
+<span><span class="co">#> .. .. ..$ :<nanoarrow_buffer_data_double[16
b] at 0x118a4b2b8></span></span>
+<span><span class="co">#> .. ..$ dictionary: NULL</span></span>
+<span><span class="co">#> .. ..$ children : list()</span></span>
+<span><span class="co">#> $ dictionary:
NULL</span></span></code></pre></div>
+<p>You can use <code><a href="https://rdrr.io/r/base/vector.html"
class="external-link">as.vector()</a></code> or <code><a
href="https://rdrr.io/r/base/as.data.frame.html"
class="external-link">as.data.frame()</a></code> to get the R representation of
the object back:</p>
+<div class="sourceCode" id="cb5"><pre class="downlit sourceCode r">
+<code class="sourceCode R"><span><span class="va">array</span> <span
class="op"><-</span> <span class="fu"><a
href="reference/as_nanoarrow_array.html">as_nanoarrow_array</a></span><span
class="op">(</span><span class="fu">arrow</span><span class="fu">::</span><span
class="fu"><a href="https://arrow.apache.org/docs/r/reference/RecordBatch.html"
class="external-link">record_batch</a></span><span class="op">(</span>col1
<span class="op">=</span> <span class="fu"><a href="https://rdrr.io/ [...]
+<span><span class="fu"><a href="https://rdrr.io/r/base/as.data.frame.html"
class="external-link">as.data.frame</a></span><span class="op">(</span><span
class="va">array</span><span class="op">)</span></span>
+<span><span class="co">#> col1</span></span>
+<span><span class="co">#> 1 1.1</span></span>
+<span><span class="co">#> 2 2.2</span></span></code></pre></div>
+<p>Even though at the C level the ArrowArray is distinct from the ArrowSchema,
at the R level we attach a schema wherever possible. You can access the
attached schema using <code><a
href="reference/as_nanoarrow_schema.html">infer_nanoarrow_schema()</a></code>:</p>
+<div class="sourceCode" id="cb6"><pre class="downlit sourceCode r">
+<code class="sourceCode R"><span><span class="fu"><a
href="reference/as_nanoarrow_schema.html">infer_nanoarrow_schema</a></span><span
class="op">(</span><span class="va">array</span><span
class="op">)</span></span>
+<span><span class="co">#> <nanoarrow_schema[+s]></span></span>
+<span><span class="co">#> $ format : chr "+s"</span></span>
+<span><span class="co">#> $ name : chr ""</span></span>
+<span><span class="co">#> $ metadata : list()</span></span>
+<span><span class="co">#> $ flags : int 0</span></span>
+<span><span class="co">#> $ children :List of 1</span></span>
+<span><span class="co">#> ..$
col1:<nanoarrow_schema[g]></span></span>
+<span><span class="co">#> .. ..$ format : chr "g"</span></span>
+<span><span class="co">#> .. ..$ name : chr "col1"</span></span>
+<span><span class="co">#> .. ..$ metadata : list()</span></span>
+<span><span class="co">#> .. ..$ flags : int 2</span></span>
+<span><span class="co">#> .. ..$ children : NULL</span></span>
+<span><span class="co">#> .. ..$ dictionary: NULL</span></span>
+<span><span class="co">#> $ dictionary:
NULL</span></span></code></pre></div>
+</div>
+<div class="section level3">
+<h3 id="array-streams">Array Streams<a class="anchor" aria-label="anchor"
href="#array-streams"></a>
+</h3>
+<p>The easiest way to create an ArrowArrayStream is from an <code><a
href="https://arrow.apache.org/docs/r/reference/RecordBatchReader.html"
class="external-link">arrow::RecordBatchReader</a></code>:</p>
+<div class="sourceCode" id="cb7"><pre class="downlit sourceCode r">
+<code class="sourceCode R"><span><span class="va">reader</span> <span
class="op"><-</span> <span class="fu">arrow</span><span
class="fu">::</span><span class="va"><a
href="https://arrow.apache.org/docs/r/reference/RecordBatchReader.html"
class="external-link">RecordBatchReader</a></span><span
class="op">$</span><span class="fu">create</span><span
class="op">(</span></span>
+<span> <span class="fu">arrow</span><span class="fu">::</span><span
class="fu"><a href="https://arrow.apache.org/docs/r/reference/RecordBatch.html"
class="external-link">record_batch</a></span><span class="op">(</span>col1
<span class="op">=</span> <span class="fu"><a
href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span
class="op">(</span><span class="fl">1.1</span>, <span
class="fl">2.2</span><span class="op">)</span><span class="op">)</span>,</span>
+<span> <span class="fu">arrow</span><span class="fu">::</span><span
class="fu"><a href="https://arrow.apache.org/docs/r/reference/RecordBatch.html"
class="external-link">record_batch</a></span><span class="op">(</span>col1
<span class="op">=</span> <span class="fu"><a
href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span
class="op">(</span><span class="fl">3.3</span>, <span
class="fl">4.4</span><span class="op">)</span><span class="op">)</span></span>
+<span><span class="op">)</span></span>
+<span></span>
+<span><span class="op">(</span><span class="va">stream</span> <span
class="op"><-</span> <span class="fu"><a
href="reference/as_nanoarrow_array_stream.html">as_nanoarrow_array_stream</a></span><span
class="op">(</span><span class="va">reader</span><span
class="op">)</span><span class="op">)</span></span>
+<span><span class="co">#> <nanoarrow_array_stream[+s]></span></span>
+<span><span class="co">#> $ get_schema:function () </span></span>
+<span><span class="co">#> $ get_next :function (schema = x$get_schema(),
validate = TRUE) </span></span>
+<span><span class="co">#> $ release :function
()</span></span></code></pre></div>
+<p>You can pull batches from the stream using the <code>$get_next()</code>
method. The last batch will return <code>NULL</code>.</p>
+<div class="sourceCode" id="cb8"><pre class="downlit sourceCode r">
+<code class="sourceCode R"><span><span class="va">stream</span><span
class="op">$</span><span class="fu">get_next</span><span
class="op">(</span><span class="op">)</span></span>
+<span><span class="co">#> <nanoarrow_array +s[2]></span></span>
+<span><span class="co">#> $ length : int 2</span></span>
+<span><span class="co">#> $ null_count: int 0</span></span>
+<span><span class="co">#> $ offset : int 0</span></span>
+<span><span class="co">#> $ buffers :List of 1</span></span>
+<span><span class="co">#> ..$ :<nanoarrow_buffer_validity[0 b] at
0x0></span></span>
+<span><span class="co">#> $ children :List of 1</span></span>
+<span><span class="co">#> ..$ col1:<nanoarrow_array
g[2]></span></span>
+<span><span class="co">#> .. ..$ length : int 2</span></span>
+<span><span class="co">#> .. ..$ null_count: int 0</span></span>
+<span><span class="co">#> .. ..$ offset : int 0</span></span>
+<span><span class="co">#> .. ..$ buffers :List of 2</span></span>
+<span><span class="co">#> .. .. ..$ :<nanoarrow_buffer_validity[0 b]
at 0x0></span></span>
+<span><span class="co">#> .. .. ..$ :<nanoarrow_buffer_data_double[16
b] at 0x1195924b8></span></span>
+<span><span class="co">#> .. ..$ dictionary: NULL</span></span>
+<span><span class="co">#> .. ..$ children : list()</span></span>
+<span><span class="co">#> $ dictionary: NULL</span></span>
+<span><span class="va">stream</span><span class="op">$</span><span
class="fu">get_next</span><span class="op">(</span><span
class="op">)</span></span>
+<span><span class="co">#> <nanoarrow_array +s[2]></span></span>
+<span><span class="co">#> $ length : int 2</span></span>
+<span><span class="co">#> $ null_count: int 0</span></span>
+<span><span class="co">#> $ offset : int 0</span></span>
+<span><span class="co">#> $ buffers :List of 1</span></span>
+<span><span class="co">#> ..$ :<nanoarrow_buffer_validity[0 b] at
0x0></span></span>
+<span><span class="co">#> $ children :List of 1</span></span>
+<span><span class="co">#> ..$ col1:<nanoarrow_array
g[2]></span></span>
+<span><span class="co">#> .. ..$ length : int 2</span></span>
+<span><span class="co">#> .. ..$ null_count: int 0</span></span>
+<span><span class="co">#> .. ..$ offset : int 0</span></span>
+<span><span class="co">#> .. ..$ buffers :List of 2</span></span>
+<span><span class="co">#> .. .. ..$ :<nanoarrow_buffer_validity[0 b]
at 0x0></span></span>
+<span><span class="co">#> .. .. ..$ :<nanoarrow_buffer_data_double[16
b] at 0x1195920f8></span></span>
+<span><span class="co">#> .. ..$ dictionary: NULL</span></span>
+<span><span class="co">#> .. ..$ children : list()</span></span>
+<span><span class="co">#> $ dictionary: NULL</span></span>
+<span><span class="va">stream</span><span class="op">$</span><span
class="fu">get_next</span><span class="op">(</span><span
class="op">)</span></span>
+<span><span class="co">#> NULL</span></span></code></pre></div>
+<p>After consuming a stream, you should call the release method as soon as you
can. This lets the implementation of the stream release any resources (like
open files) it may be holding in a more predictable way than waiting for the
garabge collector to clean up the object.</p>
+</div>
</div>
</div>
</main><aside class="col-md-3"><div class="links">
diff --git a/dev/r/pkgdown.yml b/dev/r/pkgdown.yml
index b789fee..46cae72 100644
--- a/dev/r/pkgdown.yml
+++ b/dev/r/pkgdown.yml
@@ -2,5 +2,5 @@ pandoc: 2.14.2
pkgdown: 2.0.6
pkgdown_sha: ~
articles: {}
-last_built: 2022-09-13T15:23Z
+last_built: 2022-09-16T01:43Z
diff --git a/dev/r/reference/as_nanoarrow_array.html
b/dev/r/reference/as_nanoarrow_array.html
index 3c08789..b8dd3a2 100644
--- a/dev/r/reference/as_nanoarrow_array.html
+++ b/dev/r/reference/as_nanoarrow_array.html
@@ -99,6 +99,49 @@ should be converted.</p></dd>
<p>An object of class 'nanoarrow_array'</p>
</div>
+ <div class="section level2">
+ <h2 id="ref-examples">Examples<a class="anchor" aria-label="anchor"
href="#ref-examples"></a></h2>
+ <div class="sourceCode"><pre class="sourceCode r"><code><span
class="r-in"><span><span class="op">(</span><span class="va">array</span> <span
class="op"><-</span> <span class="fu">as_nanoarrow_array</span><span
class="op">(</span><span class="fl">1</span><span class="op">:</span><span
class="fl">5</span><span class="op">)</span><span
class="op">)</span></span></span>
+<span class="r-out co"><span class="r-pr">#></span> <nanoarrow_array
i[5]></span>
+<span class="r-out co"><span class="r-pr">#></span> $ length : int
5</span>
+<span class="r-out co"><span class="r-pr">#></span> $ null_count: int
0</span>
+<span class="r-out co"><span class="r-pr">#></span> $ offset : int
0</span>
+<span class="r-out co"><span class="r-pr">#></span> $ buffers :List of
2</span>
+<span class="r-out co"><span class="r-pr">#></span> ..$
:<nanoarrow_buffer_validity[0 b] at (nil)></span>
+<span class="r-out co"><span class="r-pr">#></span> ..$
:<nanoarrow_buffer_data_int32[20 b] at 0x562023e54e78></span>
+<span class="r-out co"><span class="r-pr">#></span> $ dictionary:
NULL</span>
+<span class="r-out co"><span class="r-pr">#></span> $ children :
list()</span>
+<span class="r-in"><span><span class="fu"><a
href="https://rdrr.io/r/base/vector.html"
class="external-link">as.vector</a></span><span class="op">(</span><span
class="va">array</span><span class="op">)</span></span></span>
+<span class="r-out co"><span class="r-pr">#></span> [1] 1 2 3 4 5</span>
+<span class="r-in"><span></span></span>
+<span class="r-in"><span><span class="op">(</span><span
class="va">array</span> <span class="op"><-</span> <span
class="fu">as_nanoarrow_array</span><span class="op">(</span><span
class="fu"><a href="https://rdrr.io/r/base/data.frame.html"
class="external-link">data.frame</a></span><span class="op">(</span>x <span
class="op">=</span> <span class="fl">1</span><span class="op">:</span><span
class="fl">5</span><span class="op">)</span><span class="op">)</span><span
class="op">)</span></s [...]
+<span class="r-out co"><span class="r-pr">#></span> <nanoarrow_array
+s[5]></span>
+<span class="r-out co"><span class="r-pr">#></span> $ length : int
5</span>
+<span class="r-out co"><span class="r-pr">#></span> $ null_count: int
0</span>
+<span class="r-out co"><span class="r-pr">#></span> $ offset : int
0</span>
+<span class="r-out co"><span class="r-pr">#></span> $ buffers :List of
1</span>
+<span class="r-out co"><span class="r-pr">#></span> ..$
:<nanoarrow_buffer_validity[0 b] at (nil)></span>
+<span class="r-out co"><span class="r-pr">#></span> $ children :List of
1</span>
+<span class="r-out co"><span class="r-pr">#></span> ..$
x:<nanoarrow_array i[5]></span>
+<span class="r-out co"><span class="r-pr">#></span> .. ..$ length :
int 5</span>
+<span class="r-out co"><span class="r-pr">#></span> .. ..$ null_count:
int 0</span>
+<span class="r-out co"><span class="r-pr">#></span> .. ..$ offset :
int 0</span>
+<span class="r-out co"><span class="r-pr">#></span> .. ..$ buffers
:List of 2</span>
+<span class="r-out co"><span class="r-pr">#></span> .. .. ..$
:<nanoarrow_buffer_validity[0 b] at (nil)></span>
+<span class="r-out co"><span class="r-pr">#></span> .. .. ..$
:<nanoarrow_buffer_data_int32[20 b] at 0x562024f56f28></span>
+<span class="r-out co"><span class="r-pr">#></span> .. ..$ dictionary:
NULL</span>
+<span class="r-out co"><span class="r-pr">#></span> .. ..$ children :
list()</span>
+<span class="r-out co"><span class="r-pr">#></span> $ dictionary:
NULL</span>
+<span class="r-in"><span><span class="fu"><a
href="https://rdrr.io/r/base/as.data.frame.html"
class="external-link">as.data.frame</a></span><span class="op">(</span><span
class="va">array</span><span class="op">)</span></span></span>
+<span class="r-out co"><span class="r-pr">#></span> x</span>
+<span class="r-out co"><span class="r-pr">#></span> 1 1</span>
+<span class="r-out co"><span class="r-pr">#></span> 2 2</span>
+<span class="r-out co"><span class="r-pr">#></span> 3 3</span>
+<span class="r-out co"><span class="r-pr">#></span> 4 4</span>
+<span class="r-out co"><span class="r-pr">#></span> 5 5</span>
+<span class="r-in"><span></span></span>
+</code></pre></div>
+ </div>
</main><aside class="col-md-3"><nav id="toc"><h2>On this page</h2>
</nav></aside></div>
diff --git a/dev/r/reference/as_nanoarrow_array_stream.html
b/dev/r/reference/as_nanoarrow_array_stream.html
index 11dc516..9f5bbe4 100644
--- a/dev/r/reference/as_nanoarrow_array_stream.html
+++ b/dev/r/reference/as_nanoarrow_array_stream.html
@@ -97,6 +97,57 @@ type. Defaults to <code><a
href="as_nanoarrow_schema.html">infer_nanoarrow_schem
<p>An object of class 'nanoarrow_array_stream'</p>
</div>
+ <div class="section level2">
+ <h2 id="ref-examples">Examples<a class="anchor" aria-label="anchor"
href="#ref-examples"></a></h2>
+ <div class="sourceCode"><pre class="sourceCode r"><code><span
class="r-in"><span><span class="op">(</span><span class="va">stream</span>
<span class="op"><-</span> <span
class="fu">as_nanoarrow_array_stream</span><span class="op">(</span><span
class="fu"><a href="https://rdrr.io/r/base/data.frame.html"
class="external-link">data.frame</a></span><span class="op">(</span>x <span
class="op">=</span> <span class="fl">1</span><span class="op">:</span><span
class="fl">5</span><span clas [...]
+<span class="r-out co"><span class="r-pr">#></span>
<nanoarrow_array_stream[+s]></span>
+<span class="r-out co"><span class="r-pr">#></span> $ get_schema:function
() </span>
+<span class="r-out co"><span class="r-pr">#></span> $ get_next :function
(schema = x$get_schema(), validate = TRUE) </span>
+<span class="r-out co"><span class="r-pr">#></span> $ release :function
() </span>
+<span class="r-in"><span><span class="va">stream</span><span
class="op">$</span><span class="fu">get_schema</span><span
class="op">(</span><span class="op">)</span></span></span>
+<span class="r-out co"><span class="r-pr">#></span>
<nanoarrow_schema[+s]></span>
+<span class="r-out co"><span class="r-pr">#></span> $ format : chr
"+s"</span>
+<span class="r-out co"><span class="r-pr">#></span> $ name : chr
""</span>
+<span class="r-out co"><span class="r-pr">#></span> $ metadata :List of
1</span>
+<span class="r-out co"><span class="r-pr">#></span> ..$ r: chr
"A\n3\n262657\n197888\n5\nUTF-8\n531\n2\n531\n1\n16\n1\n262153\n10\ndata.frame\n1026\n1\n262153\n5\nnames\n16\n1"|
__truncated__</span>
+<span class="r-out co"><span class="r-pr">#></span> $ flags : int
0</span>
+<span class="r-out co"><span class="r-pr">#></span> $ children :List of
1</span>
+<span class="r-out co"><span class="r-pr">#></span> ..$
x:<nanoarrow_schema[i]></span>
+<span class="r-out co"><span class="r-pr">#></span> .. ..$ format :
chr "i"</span>
+<span class="r-out co"><span class="r-pr">#></span> .. ..$ name :
chr "x"</span>
+<span class="r-out co"><span class="r-pr">#></span> .. ..$ metadata :
list()</span>
+<span class="r-out co"><span class="r-pr">#></span> .. ..$ flags :
int 2</span>
+<span class="r-out co"><span class="r-pr">#></span> .. ..$ children :
NULL</span>
+<span class="r-out co"><span class="r-pr">#></span> .. ..$ dictionary:
NULL</span>
+<span class="r-out co"><span class="r-pr">#></span> $ dictionary:
NULL</span>
+<span class="r-in"><span><span class="va">stream</span><span
class="op">$</span><span class="fu">get_next</span><span
class="op">(</span><span class="op">)</span></span></span>
+<span class="r-out co"><span class="r-pr">#></span> <nanoarrow_array
+s[5]></span>
+<span class="r-out co"><span class="r-pr">#></span> $ length : int
5</span>
+<span class="r-out co"><span class="r-pr">#></span> $ null_count: int
0</span>
+<span class="r-out co"><span class="r-pr">#></span> $ offset : int
0</span>
+<span class="r-out co"><span class="r-pr">#></span> $ buffers :List of
1</span>
+<span class="r-out co"><span class="r-pr">#></span> ..$
:<nanoarrow_buffer_validity[0 b] at (nil)></span>
+<span class="r-out co"><span class="r-pr">#></span> $ children :List of
1</span>
+<span class="r-out co"><span class="r-pr">#></span> ..$
x:<nanoarrow_array i[5]></span>
+<span class="r-out co"><span class="r-pr">#></span> .. ..$ length :
int 5</span>
+<span class="r-out co"><span class="r-pr">#></span> .. ..$ null_count:
int 0</span>
+<span class="r-out co"><span class="r-pr">#></span> .. ..$ offset :
int 0</span>
+<span class="r-out co"><span class="r-pr">#></span> .. ..$ buffers
:List of 2</span>
+<span class="r-out co"><span class="r-pr">#></span> .. .. ..$
:<nanoarrow_buffer_validity[0 b] at (nil)></span>
+<span class="r-out co"><span class="r-pr">#></span> .. .. ..$
:<nanoarrow_buffer_data_int32[20 b] at 0x562024f37838></span>
+<span class="r-out co"><span class="r-pr">#></span> .. ..$ dictionary:
NULL</span>
+<span class="r-out co"><span class="r-pr">#></span> .. ..$ children :
list()</span>
+<span class="r-out co"><span class="r-pr">#></span> $ dictionary:
NULL</span>
+<span class="r-in"><span></span></span>
+<span class="r-in"><span><span class="co"># The last batch is returned as
NULL</span></span></span>
+<span class="r-in"><span><span class="va">stream</span><span
class="op">$</span><span class="fu">get_next</span><span
class="op">(</span><span class="op">)</span></span></span>
+<span class="r-out co"><span class="r-pr">#></span> NULL</span>
+<span class="r-in"><span></span></span>
+<span class="r-in"><span><span class="co"># Release the
stream</span></span></span>
+<span class="r-in"><span><span class="va">stream</span><span
class="op">$</span><span class="fu">release</span><span
class="op">(</span><span class="op">)</span></span></span>
+<span class="r-in"><span></span></span>
+</code></pre></div>
+ </div>
</main><aside class="col-md-3"><nav id="toc"><h2>On this page</h2>
</nav></aside></div>
diff --git a/dev/r/reference/as_nanoarrow_schema.html
b/dev/r/reference/as_nanoarrow_schema.html
index 7bf940c..eaa7277 100644
--- a/dev/r/reference/as_nanoarrow_schema.html
+++ b/dev/r/reference/as_nanoarrow_schema.html
@@ -82,6 +82,34 @@ are represented identically.</p>
<p>An object of class 'nanoarrow_schema'</p>
</div>
+ <div class="section level2">
+ <h2 id="ref-examples">Examples<a class="anchor" aria-label="anchor"
href="#ref-examples"></a></h2>
+ <div class="sourceCode"><pre class="sourceCode r"><code><span
class="r-in"><span><span class="fu">infer_nanoarrow_schema</span><span
class="op">(</span><span class="fu"><a
href="https://rdrr.io/r/base/integer.html"
class="external-link">integer</a></span><span class="op">(</span><span
class="op">)</span><span class="op">)</span></span></span>
+<span class="r-out co"><span class="r-pr">#></span>
<nanoarrow_schema[i]></span>
+<span class="r-out co"><span class="r-pr">#></span> $ format : chr
"i"</span>
+<span class="r-out co"><span class="r-pr">#></span> $ name : chr
""</span>
+<span class="r-out co"><span class="r-pr">#></span> $ metadata :
list()</span>
+<span class="r-out co"><span class="r-pr">#></span> $ flags : int
2</span>
+<span class="r-out co"><span class="r-pr">#></span> $ children :
NULL</span>
+<span class="r-out co"><span class="r-pr">#></span> $ dictionary:
NULL</span>
+<span class="r-in"><span><span class="fu">infer_nanoarrow_schema</span><span
class="op">(</span><span class="fu"><a
href="https://rdrr.io/r/base/data.frame.html"
class="external-link">data.frame</a></span><span class="op">(</span>x <span
class="op">=</span> <span class="fu"><a
href="https://rdrr.io/r/base/integer.html"
class="external-link">integer</a></span><span class="op">(</span><span
class="op">)</span><span class="op">)</span><span
class="op">)</span></span></span>
+<span class="r-out co"><span class="r-pr">#></span>
<nanoarrow_schema[+s]></span>
+<span class="r-out co"><span class="r-pr">#></span> $ format : chr
"+s"</span>
+<span class="r-out co"><span class="r-pr">#></span> $ name : chr
""</span>
+<span class="r-out co"><span class="r-pr">#></span> $ metadata :
list()</span>
+<span class="r-out co"><span class="r-pr">#></span> $ flags : int
2</span>
+<span class="r-out co"><span class="r-pr">#></span> $ children :List of
1</span>
+<span class="r-out co"><span class="r-pr">#></span> ..$
x:<nanoarrow_schema[i]></span>
+<span class="r-out co"><span class="r-pr">#></span> .. ..$ format :
chr "i"</span>
+<span class="r-out co"><span class="r-pr">#></span> .. ..$ name :
chr "x"</span>
+<span class="r-out co"><span class="r-pr">#></span> .. ..$ metadata :
list()</span>
+<span class="r-out co"><span class="r-pr">#></span> .. ..$ flags :
int 2</span>
+<span class="r-out co"><span class="r-pr">#></span> .. ..$ children :
NULL</span>
+<span class="r-out co"><span class="r-pr">#></span> .. ..$ dictionary:
NULL</span>
+<span class="r-out co"><span class="r-pr">#></span> $ dictionary:
NULL</span>
+<span class="r-in"><span></span></span>
+</code></pre></div>
+ </div>
</main><aside class="col-md-3"><nav id="toc"><h2>On this page</h2>
</nav></aside></div>
diff --git a/dev/r/reference/index.html b/dev/r/reference/index.html
index 30a4a81..060c59a 100644
--- a/dev/r/reference/index.html
+++ b/dev/r/reference/index.html
@@ -73,7 +73,7 @@
<dd>Underlying 'nanoarrow' C library build</dd>
</dl><dl><dt>
- <code><a
href="nanoarrow_pointer_is_valid.html">nanoarrow_pointer_is_valid()</a></code>
<code><a
href="nanoarrow_pointer_is_valid.html">nanoarrow_pointer_addr_dbl()</a></code>
<code><a
href="nanoarrow_pointer_is_valid.html">nanoarrow_pointer_addr_chr()</a></code>
<code><a
href="nanoarrow_pointer_is_valid.html">nanoarrow_pointer_release()</a></code>
<code><a
href="nanoarrow_pointer_is_valid.html">nanoarrow_pointer_move()</a></code>
<code><a href="nanoarrow_pointer_is_valid.html" [...]
+ <code><a
href="nanoarrow_pointer_is_valid.html">nanoarrow_pointer_is_valid()</a></code>
<code><a
href="nanoarrow_pointer_is_valid.html">nanoarrow_pointer_addr_dbl()</a></code>
<code><a
href="nanoarrow_pointer_is_valid.html">nanoarrow_pointer_addr_chr()</a></code>
<code><a
href="nanoarrow_pointer_is_valid.html">nanoarrow_pointer_addr_pretty()</a></code>
<code><a
href="nanoarrow_pointer_is_valid.html">nanoarrow_pointer_release()</a></code>
<code><a href="nanoarrow_pointer_is_vali [...]
</dt>
<dd>Danger zone: low-level pointer operations</dd>
</dl></div>
diff --git a/dev/r/reference/nanoarrow_build_id.html
b/dev/r/reference/nanoarrow_build_id.html
index 97fb48b..cb886d7 100644
--- a/dev/r/reference/nanoarrow_build_id.html
+++ b/dev/r/reference/nanoarrow_build_id.html
@@ -69,7 +69,7 @@ was compiled against.</p>
<div class="section level2">
<h2 id="ref-examples">Examples<a class="anchor" aria-label="anchor"
href="#ref-examples"></a></h2>
<div class="sourceCode"><pre class="sourceCode r"><code><span
class="r-in"><span><span class="fu">nanoarrow_build_id</span><span
class="op">(</span><span class="op">)</span></span></span>
-<span class="r-out co"><span class="r-pr">#></span> [1] "MQOA0Si9gh"</span>
+<span class="r-out co"><span class="r-pr">#></span> [1] "zxRPWGhnuK"</span>
<span class="r-in"><span></span></span>
</code></pre></div>
</div>
diff --git a/dev/r/reference/nanoarrow_pointer_is_valid.html
b/dev/r/reference/nanoarrow_pointer_is_valid.html
index a0ff768..bcefce2 100644
--- a/dev/r/reference/nanoarrow_pointer_is_valid.html
+++ b/dev/r/reference/nanoarrow_pointer_is_valid.html
@@ -75,6 +75,8 @@ non-null.</p>
<span></span>
<span><span class="fu">nanoarrow_pointer_addr_chr</span><span
class="op">(</span><span class="va">ptr</span><span class="op">)</span></span>
<span></span>
+<span><span class="fu">nanoarrow_pointer_addr_pretty</span><span
class="op">(</span><span class="va">ptr</span><span class="op">)</span></span>
+<span></span>
<span><span class="fu">nanoarrow_pointer_release</span><span
class="op">(</span><span class="va">ptr</span><span class="op">)</span></span>
<span></span>
<span><span class="fu">nanoarrow_pointer_move</span><span
class="op">(</span><span class="va">ptr_src</span>, <span
class="va">ptr_dst</span><span class="op">)</span></span>
diff --git a/dev/r/search.json b/dev/r/search.json
index 88ac472..7366262 100644
--- a/dev/r/search.json
+++ b/dev/r/search.json
@@ -1 +1 @@
-[{"path":"/LICENSE.html","id":null,"dir":"","previous_headings":"","what":"Apache
License","title":"Apache License","text":"Version 2.0, January 2004
<http://www.apache.org/licenses/>","code":""},{"path":[]},{"path":"/LICENSE.html","id":"1-definitions","dir":"","previous_headings":"Terms
and Conditions for use, reproduction, and distribution","what":"1.
Definitions","title":"Apache License","text":"“License” shall mean terms
conditions use, reproduction, distribution defined Sections 1 9 [...]
+[{"path":"/LICENSE.html","id":null,"dir":"","previous_headings":"","what":"Apache
License","title":"Apache License","text":"Version 2.0, January 2004
<http://www.apache.org/licenses/>","code":""},{"path":[]},{"path":"/LICENSE.html","id":"1-definitions","dir":"","previous_headings":"Terms
and Conditions for use, reproduction, and distribution","what":"1.
Definitions","title":"Apache License","text":"“License” shall mean terms
conditions use, reproduction, distribution defined Sections 1 9 [...]