blob: 5198a13c906392f33bdd28ea20453c4217ff6852 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>Kudu C++ client API: KuduPartialRow Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Kudu C++ client API
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classKuduPartialRow-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">KuduPartialRow Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>A row which may only contain values for a subset of the columns.
<a href="classKuduPartialRow.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="partial__row_8h_source.html">partial_row.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a9eb1cbd1b216f6313a03c82ab67112e4"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#a9eb1cbd1b216f6313a03c82ab67112e4">KuduPartialRow</a> (const Schema *<a class="el" href="classKuduPartialRow.html#a33abfa2504b7e6323cdbba22ad346023">schema</a>)</td></tr>
<tr class="separator:a9eb1cbd1b216f6313a03c82ab67112e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4ebb399982edbb3e877e38a74c700f1"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#ab4ebb399982edbb3e877e38a74c700f1">KuduPartialRow</a> (const <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> &amp;other)</td></tr>
<tr class="separator:ab4ebb399982edbb3e877e38a74c700f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a03cab3e1aa0bef19c14f94181934181f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#a03cab3e1aa0bef19c14f94181934181f">operator=</a> (<a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> other)</td></tr>
<tr class="separator:a03cab3e1aa0bef19c14f94181934181f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2721dc18b29237db90a1cda779942533"><td class="memItemLeft" align="right" valign="top">Status&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#a2721dc18b29237db90a1cda779942533">EncodeRowKey</a> (std::string *encoded_key) const </td></tr>
<tr class="separator:a2721dc18b29237db90a1cda779942533"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae76fac9268c7baa2cbcb8ccd2b22f49a"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#ae76fac9268c7baa2cbcb8ccd2b22f49a">ToEncodedRowKeyOrDie</a> () const </td></tr>
<tr class="separator:ae76fac9268c7baa2cbcb8ccd2b22f49a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8e51d3b848636aabe561e3e66b9470e8"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#a8e51d3b848636aabe561e3e66b9470e8">IsKeySet</a> () const </td></tr>
<tr class="separator:a8e51d3b848636aabe561e3e66b9470e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2d373a8c8682ab6ebdb27137c041be18"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#a2d373a8c8682ab6ebdb27137c041be18">AllColumnsSet</a> () const </td></tr>
<tr class="separator:a2d373a8c8682ab6ebdb27137c041be18"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a998461fed88b566d159c2a3062353aa9"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#a998461fed88b566d159c2a3062353aa9">ToString</a> () const </td></tr>
<tr class="separator:a998461fed88b566d159c2a3062353aa9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a33abfa2504b7e6323cdbba22ad346023"><td class="memItemLeft" align="right" valign="top">const Schema *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#a33abfa2504b7e6323cdbba22ad346023">schema</a> () const </td></tr>
<tr class="separator:a33abfa2504b7e6323cdbba22ad346023"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Setters for integral type columns by name.</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>Set value for a column by name.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the target column. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>The value to set. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
</div></td></tr>
<tr class="memitem:aeca0f9adc600ac2e24918e981a47252d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aeca0f9adc600ac2e24918e981a47252d"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetBool</b> (const Slice &amp;col_name, bool val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:aeca0f9adc600ac2e24918e981a47252d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a81d62690c48e6c1bbcaa0bb8f10f553f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a81d62690c48e6c1bbcaa0bb8f10f553f"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetInt8</b> (const Slice &amp;col_name, int8_t val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a81d62690c48e6c1bbcaa0bb8f10f553f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a46bebd1ee3d723d7529c5935545f3810"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a46bebd1ee3d723d7529c5935545f3810"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetInt16</b> (const Slice &amp;col_name, int16_t val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a46bebd1ee3d723d7529c5935545f3810"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0980615e522c4e7f8c8ddf80df0ec887"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0980615e522c4e7f8c8ddf80df0ec887"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetInt32</b> (const Slice &amp;col_name, int32_t val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a0980615e522c4e7f8c8ddf80df0ec887"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abaa3b48abbafa7b224dbc6c199a430d4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abaa3b48abbafa7b224dbc6c199a430d4"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetInt64</b> (const Slice &amp;col_name, int64_t val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:abaa3b48abbafa7b224dbc6c199a430d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f3cbad9ded11b6b19815b130eb7038a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0f3cbad9ded11b6b19815b130eb7038a"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetUnixTimeMicros</b> (const Slice &amp;col_name, int64_t micros_since_utc_epoch) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a0f3cbad9ded11b6b19815b130eb7038a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:accff7fc112c59b13d375de5b6fed10c4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="accff7fc112c59b13d375de5b6fed10c4"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetDate</b> (const Slice &amp;col_name, int32_t days_since_unix_epoch) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:accff7fc112c59b13d375de5b6fed10c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a63f7bc57c1bc9a924466754eeac76a7b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a63f7bc57c1bc9a924466754eeac76a7b"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetFloat</b> (const Slice &amp;col_name, float val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a63f7bc57c1bc9a924466754eeac76a7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab65a91210596b8fffce9d0052858af20"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab65a91210596b8fffce9d0052858af20"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetDouble</b> (const Slice &amp;col_name, double val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:ab65a91210596b8fffce9d0052858af20"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Setters for integral type columns by index.</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>Set value for a column by index.</p>
<p>These setters are the same as corresponding column-name-based setters, but with numeric column indexes. These are faster since they avoid hashmap lookups, so should be preferred in performance-sensitive code (e.g. bulk loaders).</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_idx</td><td>The index of the target column. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>The value to set. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
</div></td></tr>
<tr class="memitem:a8500986269930b88336c36bc50328768"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8500986269930b88336c36bc50328768"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetBool</b> (int col_idx, bool val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a8500986269930b88336c36bc50328768"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af6d10997e70e776eb353ad67abc78d79"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af6d10997e70e776eb353ad67abc78d79"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetInt8</b> (int col_idx, int8_t val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:af6d10997e70e776eb353ad67abc78d79"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adb92cc301cbcc89ef46e9bebbe86c508"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adb92cc301cbcc89ef46e9bebbe86c508"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetInt16</b> (int col_idx, int16_t val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:adb92cc301cbcc89ef46e9bebbe86c508"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac883d7bfb3cbdb7986a18895320097ad"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac883d7bfb3cbdb7986a18895320097ad"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetInt32</b> (int col_idx, int32_t val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:ac883d7bfb3cbdb7986a18895320097ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a62224148c353a9eba4e19574a61fe369"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a62224148c353a9eba4e19574a61fe369"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetInt64</b> (int col_idx, int64_t val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a62224148c353a9eba4e19574a61fe369"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a691d2ce90e503f939c07f5e874d6a536"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a691d2ce90e503f939c07f5e874d6a536"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetUnixTimeMicros</b> (int col_idx, int64_t micros_since_utc_epoch) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a691d2ce90e503f939c07f5e874d6a536"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b799f772b0524295b3d99acb246c67a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1b799f772b0524295b3d99acb246c67a"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetDate</b> (int col_idx, int32_t days_since_unix_epoch) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a1b799f772b0524295b3d99acb246c67a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad0b76030c919b941997ffd047b12f40e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad0b76030c919b941997ffd047b12f40e"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetFloat</b> (int col_idx, float val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:ad0b76030c919b941997ffd047b12f40e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7ee7f7a17437d338e58dd6a82431729d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7ee7f7a17437d338e58dd6a82431729d"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetDouble</b> (int col_idx, double val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a7ee7f7a17437d338e58dd6a82431729d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Setters for binary/string columns by name (copying).</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>Set the binary/string value for a column by name, copying the specified data immediately.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the target column. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>The value to set. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
</div></td></tr>
<tr class="memitem:ae4b6f159c53f0c61ca5d0ad1615deeb3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae4b6f159c53f0c61ca5d0ad1615deeb3"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetBinary</b> (const Slice &amp;col_name, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:ae4b6f159c53f0c61ca5d0ad1615deeb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8d00b3a45ec8612187eba6751742beab"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8d00b3a45ec8612187eba6751742beab"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetString</b> (const Slice &amp;col_name, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a8d00b3a45ec8612187eba6751742beab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ace5ff767150c15d8368f258cf8b4fe78"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ace5ff767150c15d8368f258cf8b4fe78"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetBinaryCopy</b> (const Slice &amp;col_name, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:ace5ff767150c15d8368f258cf8b4fe78"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac6ae9c9f8267cd6a52e46121b5f0199"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aac6ae9c9f8267cd6a52e46121b5f0199"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetStringCopy</b> (const Slice &amp;col_name, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:aac6ae9c9f8267cd6a52e46121b5f0199"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Setters for varchar columns by name (copying).</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>Set the varchar value for a column by name, copying the specified data immediately.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the target column. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>The value to set. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
</div></td></tr>
<tr class="memitem:ad25bbdf03e1ac9733df5fe9ac197469c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad25bbdf03e1ac9733df5fe9ac197469c"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetVarchar</b> (const Slice &amp;col_name, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:ad25bbdf03e1ac9733df5fe9ac197469c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Setters for binary/string columns by index (copying).</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>Set the binary/string value for a column by index, copying the specified data immediately.</p>
<p>These setters are the same as the corresponding column-name-based setters, but with numeric column indexes. These are faster since they avoid hashmap lookups, so should be preferred in performance-sensitive code (e.g. bulk loaders).</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_idx</td><td>The index of the target column. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>The value to set. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
</div></td></tr>
<tr class="memitem:aa58ca5345b45b8bd0f3d700d75fa661c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa58ca5345b45b8bd0f3d700d75fa661c"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetBinary</b> (int col_idx, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:aa58ca5345b45b8bd0f3d700d75fa661c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e606cb958eab0db1b12289aca255819"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0e606cb958eab0db1b12289aca255819"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetString</b> (int col_idx, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a0e606cb958eab0db1b12289aca255819"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9da30ad760f428b2d5f70a1fe4eba827"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9da30ad760f428b2d5f70a1fe4eba827"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetStringCopy</b> (int col_idx, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a9da30ad760f428b2d5f70a1fe4eba827"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b5c60e7a1b34f29615eb00d40e4ca35"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1b5c60e7a1b34f29615eb00d40e4ca35"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetBinaryCopy</b> (int col_idx, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a1b5c60e7a1b34f29615eb00d40e4ca35"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Setter for varchar columns by index (copying).</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>Set the varchar value for a column by index, copying the specified data immediately.</p>
<p>These setters are the same as the corresponding column-name-based setters, but with numeric column indexes. These are faster since they avoid hashmap lookups, so should be preferred in performance-sensitive code (e.g. bulk loaders).</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_idx</td><td>The index of the target column. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>The value to set. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
</div></td></tr>
<tr class="memitem:a613b6a91b39551b280f8fc0834fbd8a1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a613b6a91b39551b280f8fc0834fbd8a1"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetVarchar</b> (int col_idx, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a613b6a91b39551b280f8fc0834fbd8a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Setters for binary/string columns by name (non-copying).</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>Set the binary/string value for a column by name, not copying the specified data.</p>
<dl class="section note"><dt>Note</dt><dd>The specified data must remain valid until the corresponding RPC calls are completed to be able to access error buffers, if any errors happened (the errors can be fetched using the KuduSession::GetPendingErrors() method).</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the target column. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>The value to set. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
</div></td></tr>
<tr class="memitem:a75d35ae76b436eea6ac2af27e179460f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a75d35ae76b436eea6ac2af27e179460f"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetBinaryNoCopy</b> (const Slice &amp;col_name, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a75d35ae76b436eea6ac2af27e179460f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a698140e257b13d559bdfc220540f73"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2a698140e257b13d559bdfc220540f73"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetStringNoCopy</b> (const Slice &amp;col_name, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a2a698140e257b13d559bdfc220540f73"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">[Advanced][Unstable] Setter for varchar columns by name (non-copying).</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>Set the varchar value for a column by name, not copying the specified data.</p>
<p>This method expects the values to be truncated already and they only do a basic validation that the data is not larger than the maximum column length (as indicated by the schema) multiplied by 4, as that's the upper limit if only 4-byte UTF8 characters are used. This is subject to change in the future.</p>
<dl class="section note"><dt>Note</dt><dd>The specified data must remain valid until the corresponding RPC calls are completed to be able to access error buffers, if any errors happened (the errors can be fetched using the KuduSession::GetPendingErrors() method).</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the target column. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>The value to set. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
</div></td></tr>
<tr class="memitem:ab6317b89f734b8cdef3553e2a4d17714"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab6317b89f734b8cdef3553e2a4d17714"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetVarcharNoCopyUnsafe</b> (const Slice &amp;col_name, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:ab6317b89f734b8cdef3553e2a4d17714"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Setters for binary/string columns by index (non-copying).</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>Set the binary/string value for a column by index, not copying the specified data.</p>
<p>These setters are the same as the corresponding column-name-based setters, but with numeric column indexes. These are faster since they avoid hashmap lookups, so should be preferred in performance-sensitive code (e.g. bulk loaders).</p>
<dl class="section note"><dt>Note</dt><dd>The specified data must remain valid until the corresponding RPC calls are completed to be able to access error buffers, if any errors happened (the errors can be fetched using the KuduSession::GetPendingErrors() method).</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_idx</td><td>The index of the target column. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>The value to set. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
</div></td></tr>
<tr class="memitem:a66586a8208c3f7e90cf01fcb359a4793"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a66586a8208c3f7e90cf01fcb359a4793"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetBinaryNoCopy</b> (int col_idx, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a66586a8208c3f7e90cf01fcb359a4793"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae6ad2c3b84a65f3d7062fe4fcf8eb5bd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae6ad2c3b84a65f3d7062fe4fcf8eb5bd"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetStringNoCopy</b> (int col_idx, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:ae6ad2c3b84a65f3d7062fe4fcf8eb5bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">[Advanced][Unstable] Setter for varchar columns by index (non-copying).</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>Set the varchar value for a column by index, not copying the specified data.</p>
<p>This method expects the values to be truncated already and they only do a basic validation that the data is not larger than the maximum column length (as indicated by the schema) multiplied by 4, as that's the upper limit if only 4-byte UTF8 characters are used. This is subject to change in the future.</p>
<p>This setter is the same as the corresponding column-name-based setter, but with numeric column indexes. This is faster since it avoids hashmap lookups, so should be preferred in performance-sensitive code (e.g. bulk loaders).</p>
<dl class="section note"><dt>Note</dt><dd>The specified data must remain valid until the corresponding RPC calls are completed to be able to access error buffers, if any errors happened (the errors can be fetched using the KuduSession::GetPendingErrors() method).</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_idx</td><td>The index of the target column. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>The value to set. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
</div></td></tr>
<tr class="memitem:aee2b349bffa75f9730263a652f2a02b4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aee2b349bffa75f9730263a652f2a02b4"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetVarcharNoCopyUnsafe</b> (int col_idx, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:aee2b349bffa75f9730263a652f2a02b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aedbcf22d41791c5ae28e978eb9054cc5"><td class="memItemLeft" align="right" valign="top">Status&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#aedbcf22d41791c5ae28e978eb9054cc5">SetNull</a> (const Slice &amp;col_name) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:aedbcf22d41791c5ae28e978eb9054cc5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abeaa8d438650b7796e30e9865bb83d2f"><td class="memItemLeft" align="right" valign="top">Status&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#abeaa8d438650b7796e30e9865bb83d2f">SetNull</a> (int col_idx) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:abeaa8d438650b7796e30e9865bb83d2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adccabf294832ba33fce80a72992f6e23"><td class="memItemLeft" align="right" valign="top">Status&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#adccabf294832ba33fce80a72992f6e23">Unset</a> (const Slice &amp;col_name) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:adccabf294832ba33fce80a72992f6e23"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f65b552d35d23e6fc494cb1f6dcd394"><td class="memItemLeft" align="right" valign="top">Status&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#a8f65b552d35d23e6fc494cb1f6dcd394">Unset</a> (int col_idx) WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a8f65b552d35d23e6fc494cb1f6dcd394"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a592d2ee5fb13a710fcd675cc675f2193"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#a592d2ee5fb13a710fcd675cc675f2193">IsColumnSet</a> (const Slice &amp;col_name) const </td></tr>
<tr class="separator:a592d2ee5fb13a710fcd675cc675f2193"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa53b99d14bb61a010c4857cad17bb8ff"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#aa53b99d14bb61a010c4857cad17bb8ff">IsColumnSet</a> (int col_idx) const </td></tr>
<tr class="separator:aa53b99d14bb61a010c4857cad17bb8ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acaff842dad3af9546b2ed936613e59ab"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#acaff842dad3af9546b2ed936613e59ab">IsNull</a> (const Slice &amp;col_name) const </td></tr>
<tr class="separator:acaff842dad3af9546b2ed936613e59ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0b0a0103eea4cc39fbc89df0a9403a26"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#a0b0a0103eea4cc39fbc89df0a9403a26">IsNull</a> (int col_idx) const </td></tr>
<tr class="separator:a0b0a0103eea4cc39fbc89df0a9403a26"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Getters for integral type columns by column name.</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>Get value of the column specified by name.</p>
<dl class="section return"><dt>Returns</dt><dd>Operation result status. Return a bad Status if at least one of the following is <code>true:</code> <ul>
<li>The type does not match. </li>
<li>The value is unset. </li>
<li>The value is <code>NULL</code>. </li>
</ul>
</dd></dl>
</div></td></tr>
<tr class="memitem:a8087c08eae65c609192c0dc0960334c2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8087c08eae65c609192c0dc0960334c2"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetBool</b> (const Slice &amp;col_name, bool *val) const WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a8087c08eae65c609192c0dc0960334c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3cb0b4c5358ac4b42551f016f8a1cad4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3cb0b4c5358ac4b42551f016f8a1cad4"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetInt8</b> (const Slice &amp;col_name, int8_t *val) const WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a3cb0b4c5358ac4b42551f016f8a1cad4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5de48c13b1a83abefc0a1b5262f69a93"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5de48c13b1a83abefc0a1b5262f69a93"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetInt16</b> (const Slice &amp;col_name, int16_t *val) const WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a5de48c13b1a83abefc0a1b5262f69a93"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9956360f9208549aab03d9284ff80b46"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9956360f9208549aab03d9284ff80b46"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetInt32</b> (const Slice &amp;col_name, int32_t *val) const WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a9956360f9208549aab03d9284ff80b46"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae64a1264303b8081cf5ee8dbd44fc6dc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae64a1264303b8081cf5ee8dbd44fc6dc"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetInt64</b> (const Slice &amp;col_name, int64_t *val) const WARN_UNUSED_RESULT</td></tr>
<tr class="separator:ae64a1264303b8081cf5ee8dbd44fc6dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5aa39a18379e4339ac88138dfc5223f8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5aa39a18379e4339ac88138dfc5223f8"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetUnixTimeMicros</b> (const Slice &amp;col_name, int64_t *micros_since_utc_epoch) const WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a5aa39a18379e4339ac88138dfc5223f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a06ca4331c1fd13caadf7346805fdfc97"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a06ca4331c1fd13caadf7346805fdfc97"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetDate</b> (const Slice &amp;col_name, int32_t *days_since_unix_epoch) const WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a06ca4331c1fd13caadf7346805fdfc97"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9d5bdd73756eb630a7a8268677244afc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9d5bdd73756eb630a7a8268677244afc"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetFloat</b> (const Slice &amp;col_name, float *val) const WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a9d5bdd73756eb630a7a8268677244afc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ee25fdcff40d212e8e7cad67675c8fd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5ee25fdcff40d212e8e7cad67675c8fd"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetDouble</b> (const Slice &amp;col_name, double *val) const WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a5ee25fdcff40d212e8e7cad67675c8fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Getters for column of integral type by column index.</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>Get value of a column of integral type by column index.</p>
<p>These getters are the same as the corresponding column-name-based getters, but with numeric column indexes. These are faster since they avoid hashmap lookups, so should be preferred in performance-sensitive code (e.g. bulk loaders).</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_idx</td><td>The index of the target column. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation result status. Return a bad Status if at least one of the following is <code>true:</code> <ul>
<li>The type does not match. </li>
<li>The value is unset. </li>
<li>The value is <code>NULL</code>. </li>
</ul>
</dd></dl>
</div></td></tr>
<tr class="memitem:afd863a5f5a4803a89f6a2db06ba54931"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afd863a5f5a4803a89f6a2db06ba54931"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetBool</b> (int col_idx, bool *val) const WARN_UNUSED_RESULT</td></tr>
<tr class="separator:afd863a5f5a4803a89f6a2db06ba54931"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ada872affe8163dfa6420c0f191f9c650"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ada872affe8163dfa6420c0f191f9c650"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetInt8</b> (int col_idx, int8_t *val) const WARN_UNUSED_RESULT</td></tr>
<tr class="separator:ada872affe8163dfa6420c0f191f9c650"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a918cb01437d863fa0a35a9a72b7bac1a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a918cb01437d863fa0a35a9a72b7bac1a"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetInt16</b> (int col_idx, int16_t *val) const WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a918cb01437d863fa0a35a9a72b7bac1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a869dcfb0e7847489b31b125e79e683dc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a869dcfb0e7847489b31b125e79e683dc"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetInt32</b> (int col_idx, int32_t *val) const WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a869dcfb0e7847489b31b125e79e683dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9ded00965652dde7d94769f01df01dc9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9ded00965652dde7d94769f01df01dc9"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetInt64</b> (int col_idx, int64_t *val) const WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a9ded00965652dde7d94769f01df01dc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab328b8a04618328a7b4c72217138e246"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab328b8a04618328a7b4c72217138e246"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetUnixTimeMicros</b> (int col_idx, int64_t *micros_since_utc_epoch) const WARN_UNUSED_RESULT</td></tr>
<tr class="separator:ab328b8a04618328a7b4c72217138e246"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af0a4c7c7b575a9349195f4f2a8882428"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af0a4c7c7b575a9349195f4f2a8882428"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetDate</b> (int col_idx, int32_t *days_since_unix_epoch) const WARN_UNUSED_RESULT</td></tr>
<tr class="separator:af0a4c7c7b575a9349195f4f2a8882428"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1a53cf17ad2cd746b7512ae3ecd6131f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1a53cf17ad2cd746b7512ae3ecd6131f"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetFloat</b> (int col_idx, float *val) const WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a1a53cf17ad2cd746b7512ae3ecd6131f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4b4fae6f8be68e97b0e7145ea55fae9f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4b4fae6f8be68e97b0e7145ea55fae9f"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetDouble</b> (int col_idx, double *val) const WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a4b4fae6f8be68e97b0e7145ea55fae9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Getters for string/binary/varchar column by column name.</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>Get the string/binary/varchar value for a column by its name.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the column. </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">val</td><td>Pointer to the placeholder to put the resulting value. Note that the method does not copy the value. Callers should copy the resulting Slice if necessary. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation result status. Return a bad Status if at least one of the following is <code>true:</code> <ul>
<li>The type does not match. </li>
<li>The value is unset. </li>
<li>The value is <code>NULL</code>. </li>
</ul>
</dd></dl>
</div></td></tr>
<tr class="memitem:a0c31a9a374229b15103111913c8378ee"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0c31a9a374229b15103111913c8378ee"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetString</b> (const Slice &amp;col_name, Slice *val) const WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a0c31a9a374229b15103111913c8378ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa144a55744bff07d34cd9db7788cb38e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa144a55744bff07d34cd9db7788cb38e"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetBinary</b> (const Slice &amp;col_name, Slice *val) const WARN_UNUSED_RESULT</td></tr>
<tr class="separator:aa144a55744bff07d34cd9db7788cb38e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad823d725e2e1fef446a7f1e25ffb0a6d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad823d725e2e1fef446a7f1e25ffb0a6d"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetVarchar</b> (const Slice &amp;col_name, Slice *val) const WARN_UNUSED_RESULT</td></tr>
<tr class="separator:ad823d725e2e1fef446a7f1e25ffb0a6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Getters for string/binary/varchar column by column index.</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>Get the string/binary/varchar value for a column by its index.</p>
<p>These methods are faster than their name-based counterparts since they use indices to avoid hashmap lookups, so index-based getters should be preferred in performance-sensitive code.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_index</td><td>The index of the column. </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">val</td><td>Pointer to the placeholder to put the resulting value. Note that the method does not copy the value. Callers should copy the resulting Slice if necessary. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation result status. Return a bad Status if at least one of the following is <code>true:</code> <ul>
<li>The type does not match. </li>
<li>The value is unset. </li>
<li>The value is <code>NULL</code>. </li>
</ul>
</dd></dl>
</div></td></tr>
<tr class="memitem:a6867fbfce181081810ab2522fbf764bd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6867fbfce181081810ab2522fbf764bd"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetString</b> (int col_idx, Slice *val) const WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a6867fbfce181081810ab2522fbf764bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1c6b9c1cdf9f80ddeea53117ddc5545d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1c6b9c1cdf9f80ddeea53117ddc5545d"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetBinary</b> (int col_idx, Slice *val) const WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a1c6b9c1cdf9f80ddeea53117ddc5545d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a92a85cbf52028798b6f3c00545f82d0b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a92a85cbf52028798b6f3c00545f82d0b"></a>
Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetVarchar</b> (int col_idx, Slice *val) const WARN_UNUSED_RESULT</td></tr>
<tr class="separator:a92a85cbf52028798b6f3c00545f82d0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>A row which may only contain values for a subset of the columns. </p>
<p>This object contains a normal contiguous row, plus a bitfield indicating which columns have been set. Additionally, this type may optionally own copies of indirect data for variable length columns. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a9eb1cbd1b216f6313a03c82ab67112e4"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">KuduPartialRow::KuduPartialRow </td>
<td>(</td>
<td class="paramtype">const Schema *&#160;</td>
<td class="paramname"><em>schema</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">explicit</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">schema</td><td>Schema to use for the row. The given Schema object must remain valid for the lifetime of this row. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ab4ebb399982edbb3e877e38a74c700f1"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">KuduPartialRow::KuduPartialRow </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> &amp;&#160;</td>
<td class="paramname"><em>other</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Create a copy of <a class="el" href="classKuduPartialRow.html" title="A row which may only contain values for a subset of the columns. ">KuduPartialRow</a> instance.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">other</td><td><a class="el" href="classKuduPartialRow.html" title="A row which may only contain values for a subset of the columns. ">KuduPartialRow</a> instance to copy from. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a2d373a8c8682ab6ebdb27137c041be18"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool KuduPartialRow::AllColumnsSet </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd><code>true</code> if all column values have been set. </dd></dl>
</div>
</div>
<a class="anchor" id="a2721dc18b29237db90a1cda779942533"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">Status KuduPartialRow::EncodeRowKey </td>
<td>(</td>
<td class="paramtype">std::string *&#160;</td>
<td class="paramname"><em>encoded_key</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Encode a row key.</p>
<p>The result is suitable for use as a tablet split key, an encoded key range, etc.</p>
<dl class="section pre"><dt>Precondition</dt><dd>All of the key columns must be set.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[out]</td><td class="paramname">encoded_key</td><td>The encoded key (i.e. the result of the encoding). </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation result status. In particular, this method returns InvalidArgument if not all the key columns are set. </dd></dl>
</div>
</div>
<a class="anchor" id="a592d2ee5fb13a710fcd675cc675f2193"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool KuduPartialRow::IsColumnSet </td>
<td>(</td>
<td class="paramtype">const Slice &amp;&#160;</td>
<td class="paramname"><em>col_name</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Check whether the specified column is set for the row.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the column. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the given column has been specified. </dd></dl>
</div>
</div>
<a class="anchor" id="aa53b99d14bb61a010c4857cad17bb8ff"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool KuduPartialRow::IsColumnSet </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>col_idx</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Check whether the specified column is set for the row.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_idx</td><td>The index of the column. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the given column has been specified. </dd></dl>
</div>
</div>
<a class="anchor" id="a8e51d3b848636aabe561e3e66b9470e8"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool KuduPartialRow::IsKeySet </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd><code>true</code> if all key column values have been set for this mutation. </dd></dl>
</div>
</div>
<a class="anchor" id="acaff842dad3af9546b2ed936613e59ab"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool KuduPartialRow::IsNull </td>
<td>(</td>
<td class="paramtype">const Slice &amp;&#160;</td>
<td class="paramname"><em>col_name</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Check whether the specified column is <code>NULL</code> for the row.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the target column. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the given column's value is <code>NULL</code>. </dd></dl>
</div>
</div>
<a class="anchor" id="a0b0a0103eea4cc39fbc89df0a9403a26"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool KuduPartialRow::IsNull </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>col_idx</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Check whether the specified column is <code>NULL</code> for the row.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_idx</td><td>The index of the column. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the given column's value is <code>NULL</code>. </dd></dl>
</div>
</div>
<a class="anchor" id="a03cab3e1aa0bef19c14f94181934181f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>&amp; KuduPartialRow::operator= </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>&#160;</td>
<td class="paramname"><em>other</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Overwrite this <a class="el" href="classKuduPartialRow.html" title="A row which may only contain values for a subset of the columns. ">KuduPartialRow</a> instance with data from other instance.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">other</td><td><a class="el" href="classKuduPartialRow.html" title="A row which may only contain values for a subset of the columns. ">KuduPartialRow</a> instance to assign from. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Reference to the updated object. </dd></dl>
</div>
</div>
<a class="anchor" id="a33abfa2504b7e6323cdbba22ad346023"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const Schema* KuduPartialRow::schema </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>The schema object for the partial row. </dd></dl>
</div>
</div>
<a class="anchor" id="aedbcf22d41791c5ae28e978eb9054cc5"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">Status KuduPartialRow::SetNull </td>
<td>(</td>
<td class="paramtype">const Slice &amp;&#160;</td>
<td class="paramname"><em>col_name</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set column value to <code>NULL</code>; the column is identified by its name.</p>
<p>This will only succeed on nullable columns. Use <a class="el" href="classKuduPartialRow.html#adccabf294832ba33fce80a72992f6e23">Unset()</a> to restore column value to its default.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the target column. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
</div>
</div>
<a class="anchor" id="abeaa8d438650b7796e30e9865bb83d2f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">Status KuduPartialRow::SetNull </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>col_idx</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set column value to <code>NULL</code>; the column is identified by its index.</p>
<p>This will only succeed on nullable columns. Use <a class="el" href="classKuduPartialRow.html#adccabf294832ba33fce80a72992f6e23">Unset()</a> to restore column value to its default.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_idx</td><td>The index of the target column. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
</div>
</div>
<a class="anchor" id="ae76fac9268c7baa2cbcb8ccd2b22f49a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string KuduPartialRow::ToEncodedRowKeyOrDie </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Convenience method which is similar to EncodeRowKey.</p>
<p>This is equivalent to the EncodeRowKey, but triggers a FATAL error on failure.</p>
<dl class="section return"><dt>Returns</dt><dd>The encoded key. </dd></dl>
</div>
</div>
<a class="anchor" id="a998461fed88b566d159c2a3062353aa9"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string KuduPartialRow::ToString </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>String representation for the partial row. </dd></dl>
</div>
</div>
<a class="anchor" id="adccabf294832ba33fce80a72992f6e23"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">Status KuduPartialRow::Unset </td>
<td>(</td>
<td class="paramtype">const Slice &amp;&#160;</td>
<td class="paramname"><em>col_name</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Unset the given column by name, restoring its default value.</p>
<dl class="section note"><dt>Note</dt><dd>This is different from setting it to <code>NULL</code>.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the target column. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
</div>
</div>
<a class="anchor" id="a8f65b552d35d23e6fc494cb1f6dcd394"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">Status KuduPartialRow::Unset </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>col_idx</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Unset the given column by index, restoring its default value.</p>
<dl class="section note"><dt>Note</dt><dd>This is different from setting it to <code>NULL</code>.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_idx</td><td>The index of the target column. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>include/kudu/common/<a class="el" href="partial__row_8h_source.html">partial_row.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/>
<address class="footer">
<small>Generated for Kudu version 1.12.0 on Mon May 18 2020 14:07:09 by Doxygen 1.8.11</small>
<br>
<small>Copyright © 2020 The Apache Software Foundation.</small>
</address>
</body>
</html>