blob: 06414bed0be0fa41025bf589f084334ce3d484e2 [file] [log] [blame]
<!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="Given two arrays of length `len`, calls `op(a[i], b[i])` for `i` in `0..len`, collecting the results in a `PrimitiveArray`. If any index is null in either `a` or `b`, the corresponding index in the result will also be null"><title>binary in arrow::compute::kernels::arity - 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,SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2,SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../../../static.files/rustdoc-dd39b87e5fcfba68.css"><meta name="rustdoc-vars" data-root-path="../../../../" data-static-root-path="../../../../static.files/" data-current-crate="arrow" data-themes="" data-resource-suffix="" data-rustdoc-version="1.80.0-nightly (8c127df75 2024-05-16)" data-channel="nightly" data-search-js="search-d52510db62a78183.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../../../../static.files/storage-118b08c4c78b968e.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../../../static.files/main-20a3ad099b048cf2.js"></script><noscript><link rel="stylesheet" href="../../../../static.files/noscript-df360f571f6edeae.css"></noscript><link rel="alternate icon" type="image/png" href="../../../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc fn"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../../arrow/index.html">arrow</a><span class="version">51.0.0</span></h2></div><div class="sidebar-elems"><h2><a href="index.html">In arrow::compute::kernels::arity</a></h2></div></nav><div class="sidebar-resizer"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><h1>Function <a href="../../../index.html">arrow</a>::<wbr><a href="../../index.html">compute</a>::<wbr><a href="../index.html">kernels</a>::<wbr><a href="index.html">arity</a>::<wbr><a class="fn" href="#">binary</a><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><span class="out-of-band"><button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub fn binary&lt;A, B, F, O&gt;(
a: &amp;<a class="struct" href="../../../array/struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;A&gt;,
b: &amp;<a class="struct" href="../../../array/struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;B&gt;,
op: F
) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="../../../array/struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray">PrimitiveArray</a>&lt;O&gt;, <a class="enum" href="../../../error/enum.ArrowError.html" title="enum arrow::error::ArrowError">ArrowError</a>&gt;<div class="where">where
A: <a class="trait" href="../../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,
B: <a class="trait" href="../../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,
O: <a class="trait" href="../../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>,
F: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&lt;A as <a class="trait" href="../../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../../datatypes/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow::datatypes::ArrowPrimitiveType::Native">Native</a>, &lt;B as <a class="trait" href="../../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../../datatypes/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow::datatypes::ArrowPrimitiveType::Native">Native</a>) -&gt; &lt;O as <a class="trait" href="../../../datatypes/trait.ArrowPrimitiveType.html" title="trait arrow::datatypes::ArrowPrimitiveType">ArrowPrimitiveType</a>&gt;::<a class="associatedtype" href="../../../datatypes/trait.ArrowPrimitiveType.html#associatedtype.Native" title="type arrow::datatypes::ArrowPrimitiveType::Native">Native</a>,</div></code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Given two arrays of length <code>len</code>, calls <code>op(a[i], b[i])</code> for <code>i</code> in <code>0..len</code>, collecting
the results in a <a href="../../../array/struct.PrimitiveArray.html" title="struct arrow::array::PrimitiveArray"><code>PrimitiveArray</code></a>. If any index is null in either <code>a</code> or <code>b</code>, the
corresponding index in the result will also be null</p>
<p>Like <a href="../../fn.unary.html" title="fn arrow::compute::unary"><code>unary</code></a> the provided function is evaluated for every index, ignoring validity. This
is beneficial when the cost of the operation is low compared to the cost of branching, and
especially when the operation can be vectorised, however, requires <code>op</code> to be infallible
for all possible values of its inputs</p>
<h2 id="error"><a class="doc-anchor" href="#error">ยง</a>Error</h2>
<p>This function gives error if the arrays have different lengths</p>
</div></details></section></div></main></body></html>