You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by we...@apache.org on 2017/05/09 03:33:35 UTC
[21/29] arrow-site git commit: Update C++ API docs
http://git-wip-us.apache.org/repos/asf/arrow-site/blob/62afa00b/docs/cpp/common_8cc.html
----------------------------------------------------------------------
diff --git a/docs/cpp/common_8cc.html b/docs/cpp/common_8cc.html
index 826a05c..b2f1af8 100644
--- a/docs/cpp/common_8cc.html
+++ b/docs/cpp/common_8cc.html
@@ -38,6 +38,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
+ <li><a href="pages.html"><span>Related Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
@@ -113,6 +114,8 @@ Functions</h2></td></tr>
<tr class="separator:a4d84062fdc654ae2d1a902904a169949"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a55bd557c2b1b7f64312012f4965d20f6"><td class="memItemLeft" align="right" valign="top">MemoryPool * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearrow_1_1py.html#a55bd557c2b1b7f64312012f4965d20f6">arrow::py::get_memory_pool</a> ()</td></tr>
<tr class="separator:a55bd557c2b1b7f64312012f4965d20f6"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:abb1ee03f31832ebfc27889816c7fc88e"><td class="memItemLeft" align="right" valign="top">Status </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearrow_1_1py.html#abb1ee03f31832ebfc27889816c7fc88e">arrow::py::CheckPyError</a> (StatusCode code)</td></tr>
+<tr class="separator:abb1ee03f31832ebfc27889816c7fc88e"><td class="memSeparator" colspan="2"> </td></tr>
</table>
</div><!-- contents -->
<!-- start footer part -->
http://git-wip-us.apache.org/repos/asf/arrow-site/blob/62afa00b/docs/cpp/common_8h.html
----------------------------------------------------------------------
diff --git a/docs/cpp/common_8h.html b/docs/cpp/common_8h.html
index dfb7e64..0be3c4e 100644
--- a/docs/cpp/common_8h.html
+++ b/docs/cpp/common_8h.html
@@ -38,6 +38,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
+ <li><a href="pages.html"><span>Related Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
@@ -125,17 +126,37 @@ Namespaces</h2></td></tr>
Macros</h2></td></tr>
<tr class="memitem:a3736d68f2c04b7b41de8a06fb198b577"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="common_8h.html#a3736d68f2c04b7b41de8a06fb198b577">PYARROW_IS_PY2</a>   PY_MAJOR_VERSION <= 2</td></tr>
<tr class="separator:a3736d68f2c04b7b41de8a06fb198b577"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ad99052ac0ced9d8a858bd49d5bfd2ebd"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="common_8h.html#ad99052ac0ced9d8a858bd49d5bfd2ebd">RETURN_IF_PYERROR</a>()</td></tr>
+<tr class="memitem:ad99052ac0ced9d8a858bd49d5bfd2ebd"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="common_8h.html#ad99052ac0ced9d8a858bd49d5bfd2ebd">RETURN_IF_PYERROR</a>()   <a class="el" href="status_8h.html#a0a03bcf7fdbd9a96c67afa05fc0a545d">RETURN_NOT_OK</a>(CheckPyError());</td></tr>
<tr class="separator:ad99052ac0ced9d8a858bd49d5bfd2ebd"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:acae7d13f31abc214abe5d1e7c901b72f"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="common_8h.html#acae7d13f31abc214abe5d1e7c901b72f">PY_RETURN_IF_ERROR</a>(CODE)   <a class="el" href="status_8h.html#a0a03bcf7fdbd9a96c67afa05fc0a545d">RETURN_NOT_OK</a>(CheckPyError(CODE));</td></tr>
+<tr class="separator:acae7d13f31abc214abe5d1e7c901b72f"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
+<tr class="memitem:abb1ee03f31832ebfc27889816c7fc88e"><td class="memItemLeft" align="right" valign="top">Status </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearrow_1_1py.html#abb1ee03f31832ebfc27889816c7fc88e">arrow::py::CheckPyError</a> (StatusCode code)</td></tr>
+<tr class="separator:abb1ee03f31832ebfc27889816c7fc88e"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a4d84062fdc654ae2d1a902904a169949"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearrow_1_1py.html#a4d84062fdc654ae2d1a902904a169949">arrow::py::set_default_memory_pool</a> (MemoryPool *pool)</td></tr>
<tr class="separator:a4d84062fdc654ae2d1a902904a169949"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a55bd557c2b1b7f64312012f4965d20f6"><td class="memItemLeft" align="right" valign="top">MemoryPool * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacearrow_1_1py.html#a55bd557c2b1b7f64312012f4965d20f6">arrow::py::get_memory_pool</a> ()</td></tr>
<tr class="separator:a55bd557c2b1b7f64312012f4965d20f6"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="acae7d13f31abc214abe5d1e7c901b72f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define PY_RETURN_IF_ERROR</td>
+ <td>(</td>
+ <td class="paramtype"> </td>
+ <td class="paramname">CODE</td><td>)</td>
+ <td>   <a class="el" href="status_8h.html#a0a03bcf7fdbd9a96c67afa05fc0a545d">RETURN_NOT_OK</a>(CheckPyError(CODE));</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
<a class="anchor" id="a3736d68f2c04b7b41de8a06fb198b577"></a>
<div class="memitem">
<div class="memproto">
@@ -156,22 +177,11 @@ Functions</h2></td></tr>
<td class="memname">#define RETURN_IF_PYERROR</td>
<td>(</td>
<td class="paramname"></td><td>)</td>
- <td></td>
+ <td>   <a class="el" href="status_8h.html#a0a03bcf7fdbd9a96c67afa05fc0a545d">RETURN_NOT_OK</a>(CheckPyError());</td>
</tr>
</table>
</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">if</span> (PyErr_Occurred()) { \</div>
-<div class="line"> PyObject *exc_type, *exc_value, *traceback; \</div>
-<div class="line"> PyErr_Fetch(&exc_type, &exc_value, &traceback); \</div>
-<div class="line"> PyObjectStringify stringified(exc_value); \</div>
-<div class="line"> std::string message(stringified.bytes); \</div>
-<div class="line"> Py_DECREF(exc_type); \</div>
-<div class="line"> Py_XDECREF(exc_value); \</div>
-<div class="line"> Py_XDECREF(traceback); \</div>
-<div class="line"> PyErr_Clear(); \</div>
-<div class="line"> return Status::UnknownError(message); \</div>
-<div class="line"> }</div>
-</div><!-- fragment -->
+
</div>
</div>
</div><!-- contents -->
http://git-wip-us.apache.org/repos/asf/arrow-site/blob/62afa00b/docs/cpp/common_8h_source.html
----------------------------------------------------------------------
diff --git a/docs/cpp/common_8h_source.html b/docs/cpp/common_8h_source.html
index 7a78d60..6b177be 100644
--- a/docs/cpp/common_8h_source.html
+++ b/docs/cpp/common_8h_source.html
@@ -38,6 +38,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
+ <li><a href="pages.html"><span>Related Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
@@ -125,111 +126,134 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> </div>
<div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="classarrow_1_1py_1_1_py_acquire_g_i_l.html"> 35</a></span> <span class="keyword">class </span><a class="code" href="visibility_8h.html#a7060b7b5f11fc11ce77a4d30b37619ef">ARROW_EXPORT</a> <a class="code" href="classarrow_1_1py_1_1_py_acquire_g_i_l.html">PyAcquireGIL</a> {</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>  <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="classarrow_1_1py_1_1_py_acquire_g_i_l.html#a176ad0a1d753c1e1297a8c8c8e24edfc"> 37</a></span>  <a class="code" href="classarrow_1_1py_1_1_py_acquire_g_i_l.html#a176ad0a1d753c1e1297a8c8c8e24edfc">PyAcquireGIL</a>() { state_ = PyGILState_Ensure(); }</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> </div>
-<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="classarrow_1_1py_1_1_py_acquire_g_i_l.html#aa07961f7d96ca5dd17319aa4fb65facc"> 39</a></span>  <a class="code" href="classarrow_1_1py_1_1_py_acquire_g_i_l.html#aa07961f7d96ca5dd17319aa4fb65facc">~PyAcquireGIL</a>() { PyGILState_Release(state_); }</div>
+<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="classarrow_1_1py_1_1_py_acquire_g_i_l.html#a176ad0a1d753c1e1297a8c8c8e24edfc"> 37</a></span>  <a class="code" href="classarrow_1_1py_1_1_py_acquire_g_i_l.html#a176ad0a1d753c1e1297a8c8c8e24edfc">PyAcquireGIL</a>() : acquired_gil_(false) {</div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>  acquire();</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>  }</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> </div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>  <span class="keyword">private</span>:</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>  PyGILState_STATE state_;</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>  <a class="code" href="macros_8h.html#af8df3547bfde53a5acb93e2607b0034a">DISALLOW_COPY_AND_ASSIGN</a>(<a class="code" href="classarrow_1_1py_1_1_py_acquire_g_i_l.html">PyAcquireGIL</a>);</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> };</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> </div>
-<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="common_8h.html#a3736d68f2c04b7b41de8a06fb198b577"> 46</a></span> <span class="preprocessor">#define PYARROW_IS_PY2 PY_MAJOR_VERSION <= 2</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="classarrow_1_1py_1_1_owned_ref.html"> 48</a></span> <span class="keyword">class </span><a class="code" href="visibility_8h.html#a7060b7b5f11fc11ce77a4d30b37619ef">ARROW_EXPORT</a> <a class="code" href="classarrow_1_1py_1_1_owned_ref.html">OwnedRef</a> {</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>  <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="classarrow_1_1py_1_1_owned_ref.html#a23c568f39cefb24111a5b126342907fb"> 50</a></span>  <a class="code" href="classarrow_1_1py_1_1_owned_ref.html#a23c568f39cefb24111a5b126342907fb">OwnedRef</a>() : obj_(nullptr) {}</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div>
-<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="classarrow_1_1py_1_1_owned_ref.html#a4fa414445a0d45fc6876e22a48323818"> 52</a></span>  <span class="keyword">explicit</span> <a class="code" href="classarrow_1_1py_1_1_owned_ref.html#a4fa414445a0d45fc6876e22a48323818">OwnedRef</a>(PyObject* obj) : obj_(obj) {}</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> </div>
-<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="classarrow_1_1py_1_1_owned_ref.html#a8dbf530a3d56e9cc8be52ee72de0a2f8"> 54</a></span>  <a class="code" href="classarrow_1_1py_1_1_owned_ref.html#a8dbf530a3d56e9cc8be52ee72de0a2f8">~OwnedRef</a>() {</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  <a class="code" href="classarrow_1_1py_1_1_py_acquire_g_i_l.html">PyAcquireGIL</a> lock;</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  Py_XDECREF(obj_);</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>  }</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> </div>
-<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="classarrow_1_1py_1_1_owned_ref.html#ad99c47163961c1b346c3ea9836783eda"> 59</a></span>  <span class="keywordtype">void</span> <a class="code" href="classarrow_1_1py_1_1_owned_ref.html#ad99c47163961c1b346c3ea9836783eda">reset</a>(PyObject* obj) {</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  Py_XDECREF(obj_);</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  obj_ = obj;</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>  }</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> </div>
-<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="classarrow_1_1py_1_1_owned_ref.html#ab1e5169aac1fa00cd1cebafba61d7a1d"> 67</a></span>  PyObject* <a class="code" href="classarrow_1_1py_1_1_owned_ref.html#ab1e5169aac1fa00cd1cebafba61d7a1d">obj</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> obj_; }</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> </div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  <span class="keyword">private</span>:</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  PyObject* obj_;</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> };</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> </div>
-<div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="structarrow_1_1py_1_1_py_object_stringify.html"> 73</a></span> <span class="keyword">struct </span><a class="code" href="visibility_8h.html#a7060b7b5f11fc11ce77a4d30b37619ef">ARROW_EXPORT</a> <a class="code" href="structarrow_1_1py_1_1_py_object_stringify.html">PyObjectStringify</a> {</div>
-<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="structarrow_1_1py_1_1_py_object_stringify.html#a710405190a719e7941d68b0ff9c24bbf"> 74</a></span>  <a class="code" href="classarrow_1_1py_1_1_owned_ref.html">OwnedRef</a> <a class="code" href="structarrow_1_1py_1_1_py_object_stringify.html#a710405190a719e7941d68b0ff9c24bbf">tmp_obj</a>;</div>
-<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="structarrow_1_1py_1_1_py_object_stringify.html#a4affd96a0f23d719cadb443eb179f98d"> 75</a></span>  <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="structarrow_1_1py_1_1_py_object_stringify.html#a4affd96a0f23d719cadb443eb179f98d">bytes</a>;</div>
-<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="structarrow_1_1py_1_1_py_object_stringify.html#a93307dd10ea2e5725a0c9e6a93b5dd48"> 76</a></span>  Py_ssize_t <a class="code" href="structarrow_1_1py_1_1_py_object_stringify.html#a93307dd10ea2e5725a0c9e6a93b5dd48">size</a>;</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> </div>
-<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="structarrow_1_1py_1_1_py_object_stringify.html#ae463580d34db2330fafa6d0651769948"> 78</a></span>  <span class="keyword">explicit</span> <a class="code" href="structarrow_1_1py_1_1_py_object_stringify.html#ae463580d34db2330fafa6d0651769948">PyObjectStringify</a>(PyObject* obj) {</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  PyObject* bytes_obj;</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  <span class="keywordflow">if</span> (PyUnicode_Check(obj)) {</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  bytes_obj = PyUnicode_AsUTF8String(obj);</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  tmp_obj.reset(bytes_obj);</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  } <span class="keywordflow">else</span> {</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  bytes_obj = obj;</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  }</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  bytes = PyBytes_AsString(bytes_obj);</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  size = PyBytes_GET_SIZE(bytes_obj);</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  }</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="classarrow_1_1py_1_1_py_acquire_g_i_l.html#aa07961f7d96ca5dd17319aa4fb65facc"> 41</a></span>  <a class="code" href="classarrow_1_1py_1_1_py_acquire_g_i_l.html#aa07961f7d96ca5dd17319aa4fb65facc">~PyAcquireGIL</a>() { release(); }</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> </div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="classarrow_1_1py_1_1_py_acquire_g_i_l.html#a705f95bb8ae5f01b9c6615ef3694aef4"> 43</a></span>  <span class="keywordtype">void</span> <a class="code" href="classarrow_1_1py_1_1_py_acquire_g_i_l.html#a705f95bb8ae5f01b9c6615ef3694aef4">acquire</a>() {</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>  <span class="keywordflow">if</span> (!acquired_gil_) {</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  state_ = PyGILState_Ensure();</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  acquired_gil_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  }</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>  }</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> </div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>  <span class="comment">// idempotent</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="classarrow_1_1py_1_1_py_acquire_g_i_l.html#a9b0f2a430dac36520aeedd344d21fb3f"> 51</a></span>  <span class="keywordtype">void</span> <a class="code" href="classarrow_1_1py_1_1_py_acquire_g_i_l.html#a9b0f2a430dac36520aeedd344d21fb3f">release</a>() {</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  <span class="keywordflow">if</span> (acquired_gil_) {</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>  PyGILState_Release(state_);</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>  acquired_gil_ = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  }</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  }</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> </div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>  <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>  <span class="keywordtype">bool</span> acquired_gil_;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  PyGILState_STATE state_;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  <a class="code" href="macros_8h.html#af8df3547bfde53a5acb93e2607b0034a">DISALLOW_COPY_AND_ASSIGN</a>(<a class="code" href="classarrow_1_1py_1_1_py_acquire_g_i_l.html">PyAcquireGIL</a>);</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> };</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> </div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="common_8h.html#a3736d68f2c04b7b41de8a06fb198b577"> 64</a></span> <span class="preprocessor">#define PYARROW_IS_PY2 PY_MAJOR_VERSION <= 2</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="preprocessor"></span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="classarrow_1_1py_1_1_owned_ref.html"> 66</a></span> <span class="keyword">class </span><a class="code" href="visibility_8h.html#a7060b7b5f11fc11ce77a4d30b37619ef">ARROW_EXPORT</a> <a class="code" href="classarrow_1_1py_1_1_owned_ref.html">OwnedRef</a> {</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="classarrow_1_1py_1_1_owned_ref.html#a23c568f39cefb24111a5b126342907fb"> 68</a></span>  <a class="code" href="classarrow_1_1py_1_1_owned_ref.html#a23c568f39cefb24111a5b126342907fb">OwnedRef</a>() : obj_(nullptr) {}</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> </div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="classarrow_1_1py_1_1_owned_ref.html#a4fa414445a0d45fc6876e22a48323818"> 70</a></span>  <span class="keyword">explicit</span> <a class="code" href="classarrow_1_1py_1_1_owned_ref.html#a4fa414445a0d45fc6876e22a48323818">OwnedRef</a>(PyObject* obj) : obj_(obj) {}</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> </div>
+<div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="classarrow_1_1py_1_1_owned_ref.html#a8dbf530a3d56e9cc8be52ee72de0a2f8"> 72</a></span>  <a class="code" href="classarrow_1_1py_1_1_owned_ref.html#a8dbf530a3d56e9cc8be52ee72de0a2f8">~OwnedRef</a>() {</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  <a class="code" href="classarrow_1_1py_1_1_py_acquire_g_i_l.html">PyAcquireGIL</a> lock;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  Py_XDECREF(obj_);</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  }</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> </div>
+<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="classarrow_1_1py_1_1_owned_ref.html#ad99c47163961c1b346c3ea9836783eda"> 77</a></span>  <span class="keywordtype">void</span> <a class="code" href="classarrow_1_1py_1_1_owned_ref.html#ad99c47163961c1b346c3ea9836783eda">reset</a>(PyObject* obj) {</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  Py_XDECREF(obj_);</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  obj_ = obj;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  }</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> </div>
+<div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="classarrow_1_1py_1_1_owned_ref.html#ab1e5169aac1fa00cd1cebafba61d7a1d"> 85</a></span>  PyObject* <a class="code" href="classarrow_1_1py_1_1_owned_ref.html#ab1e5169aac1fa00cd1cebafba61d7a1d">obj</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> obj_; }</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> </div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  PyObject* obj_;</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> };</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> </div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="comment">// TODO(wesm): We can just let errors pass through. To be explored later</span></div>
-<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="common_8h.html#ad99052ac0ced9d8a858bd49d5bfd2ebd"> 92</a></span> <span class="preprocessor">#define RETURN_IF_PYERROR() \</span></div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="preprocessor"> if (PyErr_Occurred()) { \</span></div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <span class="preprocessor"> PyObject *exc_type, *exc_value, *traceback; \</span></div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="preprocessor"> PyErr_Fetch(&exc_type, &exc_value, &traceback); \</span></div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <span class="preprocessor"> PyObjectStringify stringified(exc_value); \</span></div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="preprocessor"> std::string message(stringified.bytes); \</span></div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <span class="preprocessor"> Py_DECREF(exc_type); \</span></div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> <span class="preprocessor"> Py_XDECREF(exc_value); \</span></div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <span class="preprocessor"> Py_XDECREF(traceback); \</span></div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <span class="preprocessor"> PyErr_Clear(); \</span></div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="preprocessor"> return Status::UnknownError(message); \</span></div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="preprocessor"> }</span></div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="comment">// Return the common PyArrow memory pool</span></div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <a class="code" href="visibility_8h.html#a7060b7b5f11fc11ce77a4d30b37619ef">ARROW_EXPORT</a> <span class="keywordtype">void</span> <a class="code" href="namespacearrow_1_1py.html#a4d84062fdc654ae2d1a902904a169949">set_default_memory_pool</a>(MemoryPool* pool);</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <a class="code" href="visibility_8h.html#a7060b7b5f11fc11ce77a4d30b37619ef">ARROW_EXPORT</a> MemoryPool* <a class="code" href="namespacearrow_1_1py.html#a55bd557c2b1b7f64312012f4965d20f6">get_memory_pool</a>();</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> </div>
-<div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="classarrow_1_1py_1_1_py_buffer.html"> 109</a></span> <span class="keyword">class </span><a class="code" href="visibility_8h.html#a7060b7b5f11fc11ce77a4d30b37619ef">ARROW_EXPORT</a> <a class="code" href="classarrow_1_1py_1_1_py_buffer.html">PyBuffer</a> : <span class="keyword">public</span> <a class="code" href="classarrow_1_1_buffer.html">Buffer</a> {</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  <span class="keyword">explicit</span> <a class="code" href="classarrow_1_1py_1_1_py_buffer.html">PyBuffer</a>(PyObject* obj);</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  ~<a class="code" href="classarrow_1_1py_1_1_py_buffer.html">PyBuffer</a>();</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> </div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>  <span class="keyword">private</span>:</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>  PyObject* obj_;</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> };</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> </div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> } <span class="comment">// namespace py</span></div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> } <span class="comment">// namespace arrow</span></div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> </div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="preprocessor">#endif // ARROW_PYTHON_COMMON_H</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="structarrow_1_1py_1_1_py_object_stringify.html"> 91</a></span> <span class="keyword">struct </span><a class="code" href="visibility_8h.html#a7060b7b5f11fc11ce77a4d30b37619ef">ARROW_EXPORT</a> <a class="code" href="structarrow_1_1py_1_1_py_object_stringify.html">PyObjectStringify</a> {</div>
+<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="structarrow_1_1py_1_1_py_object_stringify.html#a710405190a719e7941d68b0ff9c24bbf"> 92</a></span>  <a class="code" href="classarrow_1_1py_1_1_owned_ref.html">OwnedRef</a> <a class="code" href="structarrow_1_1py_1_1_py_object_stringify.html#a710405190a719e7941d68b0ff9c24bbf">tmp_obj</a>;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="structarrow_1_1py_1_1_py_object_stringify.html#a4affd96a0f23d719cadb443eb179f98d"> 93</a></span>  <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="structarrow_1_1py_1_1_py_object_stringify.html#a4affd96a0f23d719cadb443eb179f98d">bytes</a>;</div>
+<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="structarrow_1_1py_1_1_py_object_stringify.html#a93307dd10ea2e5725a0c9e6a93b5dd48"> 94</a></span>  Py_ssize_t <a class="code" href="structarrow_1_1py_1_1_py_object_stringify.html#a93307dd10ea2e5725a0c9e6a93b5dd48">size</a>;</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> </div>
+<div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="structarrow_1_1py_1_1_py_object_stringify.html#ae463580d34db2330fafa6d0651769948"> 96</a></span>  <span class="keyword">explicit</span> <a class="code" href="structarrow_1_1py_1_1_py_object_stringify.html#ae463580d34db2330fafa6d0651769948">PyObjectStringify</a>(PyObject* obj) {</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  PyObject* bytes_obj;</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>  <span class="keywordflow">if</span> (PyUnicode_Check(obj)) {</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>  bytes_obj = PyUnicode_AsUTF8String(obj);</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>  tmp_obj.reset(bytes_obj);</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  bytes = PyBytes_AsString(bytes_obj);</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  size = PyBytes_GET_SIZE(bytes_obj);</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (PyBytes_Check(obj)) {</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  bytes = PyBytes_AsString(obj);</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  size = PyBytes_GET_SIZE(obj);</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  } <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>  bytes = <span class="keyword">nullptr</span>;</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>  size = -1;</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  }</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  }</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> };</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> </div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <a class="code" href="classarrow_1_1_status.html">Status</a> <a class="code" href="namespacearrow_1_1py.html#abb1ee03f31832ebfc27889816c7fc88e">CheckPyError</a>(<a class="code" href="namespacearrow.html#a331ad1dbd1c157c8be168cb6548d188f">StatusCode</a> code = <a class="code" href="namespacearrow.html#a331ad1dbd1c157c8be168cb6548d188fabfaef30f1c8011c5cefa38ae470fb7aa">StatusCode::UnknownError</a>);</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> </div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="comment">// TODO(wesm): We can just let errors pass through. To be explored later</span></div>
+<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="common_8h.html#ad99052ac0ced9d8a858bd49d5bfd2ebd"> 116</a></span> <span class="preprocessor">#define RETURN_IF_PYERROR() \</span></div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="preprocessor"> RETURN_NOT_OK(CheckPyError());</span></div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="preprocessor"></span></div>
+<div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="common_8h.html#acae7d13f31abc214abe5d1e7c901b72f"> 119</a></span> <span class="preprocessor">#define PY_RETURN_IF_ERROR(CODE) \</span></div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="preprocessor"> RETURN_NOT_OK(CheckPyError(CODE));</span></div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="preprocessor"></span></div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="comment">// Return the common PyArrow memory pool</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <a class="code" href="visibility_8h.html#a7060b7b5f11fc11ce77a4d30b37619ef">ARROW_EXPORT</a> <span class="keywordtype">void</span> <a class="code" href="namespacearrow_1_1py.html#a4d84062fdc654ae2d1a902904a169949">set_default_memory_pool</a>(MemoryPool* pool);</div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <a class="code" href="visibility_8h.html#a7060b7b5f11fc11ce77a4d30b37619ef">ARROW_EXPORT</a> MemoryPool* <a class="code" href="namespacearrow_1_1py.html#a55bd557c2b1b7f64312012f4965d20f6">get_memory_pool</a>();</div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> </div>
+<div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="classarrow_1_1py_1_1_py_buffer.html"> 126</a></span> <span class="keyword">class </span><a class="code" href="visibility_8h.html#a7060b7b5f11fc11ce77a4d30b37619ef">ARROW_EXPORT</a> <a class="code" href="classarrow_1_1py_1_1_py_buffer.html">PyBuffer</a> : <span class="keyword">public</span> <a class="code" href="classarrow_1_1_buffer.html">Buffer</a> {</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>  <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>  <span class="keyword">explicit</span> <a class="code" href="classarrow_1_1py_1_1_py_buffer.html">PyBuffer</a>(PyObject* obj);</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>  ~<a class="code" href="classarrow_1_1py_1_1_py_buffer.html">PyBuffer</a>();</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> </div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>  <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>  PyObject* obj_;</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> };</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> </div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> } <span class="comment">// namespace py</span></div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> } <span class="comment">// namespace arrow</span></div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> </div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="preprocessor">#endif // ARROW_PYTHON_COMMON_H</span></div>
<div class="ttc" id="namespacearrow_1_1py_html_a4d84062fdc654ae2d1a902904a169949"><div class="ttname"><a href="namespacearrow_1_1py.html#a4d84062fdc654ae2d1a902904a169949">arrow::py::set_default_memory_pool</a></div><div class="ttdeci">void set_default_memory_pool(MemoryPool *pool)</div><div class="ttdef"><b>Definition:</b> common.cc:33</div></div>
-<div class="ttc" id="structarrow_1_1py_1_1_py_object_stringify_html_a93307dd10ea2e5725a0c9e6a93b5dd48"><div class="ttname"><a href="structarrow_1_1py_1_1_py_object_stringify.html#a93307dd10ea2e5725a0c9e6a93b5dd48">arrow::py::PyObjectStringify::size</a></div><div class="ttdeci">Py_ssize_t size</div><div class="ttdef"><b>Definition:</b> common.h:76</div></div>
-<div class="ttc" id="structarrow_1_1py_1_1_py_object_stringify_html"><div class="ttname"><a href="structarrow_1_1py_1_1_py_object_stringify.html">arrow::py::PyObjectStringify</a></div><div class="ttdef"><b>Definition:</b> common.h:73</div></div>
-<div class="ttc" id="classarrow_1_1py_1_1_owned_ref_html_a23c568f39cefb24111a5b126342907fb"><div class="ttname"><a href="classarrow_1_1py_1_1_owned_ref.html#a23c568f39cefb24111a5b126342907fb">arrow::py::OwnedRef::OwnedRef</a></div><div class="ttdeci">OwnedRef()</div><div class="ttdef"><b>Definition:</b> common.h:50</div></div>
+<div class="ttc" id="structarrow_1_1py_1_1_py_object_stringify_html_a93307dd10ea2e5725a0c9e6a93b5dd48"><div class="ttname"><a href="structarrow_1_1py_1_1_py_object_stringify.html#a93307dd10ea2e5725a0c9e6a93b5dd48">arrow::py::PyObjectStringify::size</a></div><div class="ttdeci">Py_ssize_t size</div><div class="ttdef"><b>Definition:</b> common.h:94</div></div>
+<div class="ttc" id="structarrow_1_1py_1_1_py_object_stringify_html"><div class="ttname"><a href="structarrow_1_1py_1_1_py_object_stringify.html">arrow::py::PyObjectStringify</a></div><div class="ttdef"><b>Definition:</b> common.h:91</div></div>
+<div class="ttc" id="classarrow_1_1py_1_1_owned_ref_html_a23c568f39cefb24111a5b126342907fb"><div class="ttname"><a href="classarrow_1_1py_1_1_owned_ref.html#a23c568f39cefb24111a5b126342907fb">arrow::py::OwnedRef::OwnedRef</a></div><div class="ttdeci">OwnedRef()</div><div class="ttdef"><b>Definition:</b> common.h:68</div></div>
<div class="ttc" id="config_8h_html"><div class="ttname"><a href="config_8h.html">config.h</a></div></div>
-<div class="ttc" id="classarrow_1_1py_1_1_owned_ref_html_a8dbf530a3d56e9cc8be52ee72de0a2f8"><div class="ttname"><a href="classarrow_1_1py_1_1_owned_ref.html#a8dbf530a3d56e9cc8be52ee72de0a2f8">arrow::py::OwnedRef::~OwnedRef</a></div><div class="ttdeci">~OwnedRef()</div><div class="ttdef"><b>Definition:</b> common.h:54</div></div>
-<div class="ttc" id="structarrow_1_1py_1_1_py_object_stringify_html_ae463580d34db2330fafa6d0651769948"><div class="ttname"><a href="structarrow_1_1py_1_1_py_object_stringify.html#ae463580d34db2330fafa6d0651769948">arrow::py::PyObjectStringify::PyObjectStringify</a></div><div class="ttdeci">PyObjectStringify(PyObject *obj)</div><div class="ttdef"><b>Definition:</b> common.h:78</div></div>
-<div class="ttc" id="classarrow_1_1py_1_1_owned_ref_html_ab1e5169aac1fa00cd1cebafba61d7a1d"><div class="ttname"><a href="classarrow_1_1py_1_1_owned_ref.html#ab1e5169aac1fa00cd1cebafba61d7a1d">arrow::py::OwnedRef::obj</a></div><div class="ttdeci">PyObject * obj() const </div><div class="ttdef"><b>Definition:</b> common.h:67</div></div>
+<div class="ttc" id="namespacearrow_html_a331ad1dbd1c157c8be168cb6548d188f"><div class="ttname"><a href="namespacearrow.html#a331ad1dbd1c157c8be168cb6548d188f">arrow::StatusCode</a></div><div class="ttdeci">StatusCode</div><div class="ttdef"><b>Definition:</b> status.h:77</div></div>
+<div class="ttc" id="classarrow_1_1py_1_1_owned_ref_html_a8dbf530a3d56e9cc8be52ee72de0a2f8"><div class="ttname"><a href="classarrow_1_1py_1_1_owned_ref.html#a8dbf530a3d56e9cc8be52ee72de0a2f8">arrow::py::OwnedRef::~OwnedRef</a></div><div class="ttdeci">~OwnedRef()</div><div class="ttdef"><b>Definition:</b> common.h:72</div></div>
+<div class="ttc" id="structarrow_1_1py_1_1_py_object_stringify_html_ae463580d34db2330fafa6d0651769948"><div class="ttname"><a href="structarrow_1_1py_1_1_py_object_stringify.html#ae463580d34db2330fafa6d0651769948">arrow::py::PyObjectStringify::PyObjectStringify</a></div><div class="ttdeci">PyObjectStringify(PyObject *obj)</div><div class="ttdef"><b>Definition:</b> common.h:96</div></div>
+<div class="ttc" id="classarrow_1_1py_1_1_owned_ref_html_ab1e5169aac1fa00cd1cebafba61d7a1d"><div class="ttname"><a href="classarrow_1_1py_1_1_owned_ref.html#ab1e5169aac1fa00cd1cebafba61d7a1d">arrow::py::OwnedRef::obj</a></div><div class="ttdeci">PyObject * obj() const </div><div class="ttdef"><b>Definition:</b> common.h:85</div></div>
+<div class="ttc" id="classarrow_1_1_status_html"><div class="ttname"><a href="classarrow_1_1_status.html">arrow::Status</a></div><div class="ttdef"><b>Definition:</b> status.h:88</div></div>
<div class="ttc" id="macros_8h_html"><div class="ttname"><a href="macros_8h.html">macros.h</a></div></div>
+<div class="ttc" id="classarrow_1_1py_1_1_py_acquire_g_i_l_html_a705f95bb8ae5f01b9c6615ef3694aef4"><div class="ttname"><a href="classarrow_1_1py_1_1_py_acquire_g_i_l.html#a705f95bb8ae5f01b9c6615ef3694aef4">arrow::py::PyAcquireGIL::acquire</a></div><div class="ttdeci">void acquire()</div><div class="ttdef"><b>Definition:</b> common.h:43</div></div>
+<div class="ttc" id="classarrow_1_1py_1_1_py_acquire_g_i_l_html_a9b0f2a430dac36520aeedd344d21fb3f"><div class="ttname"><a href="classarrow_1_1py_1_1_py_acquire_g_i_l.html#a9b0f2a430dac36520aeedd344d21fb3f">arrow::py::PyAcquireGIL::release</a></div><div class="ttdeci">void release()</div><div class="ttdef"><b>Definition:</b> common.h:51</div></div>
<div class="ttc" id="namespacearrow_1_1py_html_a55bd557c2b1b7f64312012f4965d20f6"><div class="ttname"><a href="namespacearrow_1_1py.html#a55bd557c2b1b7f64312012f4965d20f6">arrow::py::get_memory_pool</a></div><div class="ttdeci">MemoryPool * get_memory_pool()</div><div class="ttdef"><b>Definition:</b> common.cc:38</div></div>
+<div class="ttc" id="namespacearrow_1_1py_html_abb1ee03f31832ebfc27889816c7fc88e"><div class="ttname"><a href="namespacearrow_1_1py.html#abb1ee03f31832ebfc27889816c7fc88e">arrow::py::CheckPyError</a></div><div class="ttdeci">Status CheckPyError(StatusCode code)</div><div class="ttdef"><b>Definition:</b> common.cc:67</div></div>
<div class="ttc" id="visibility_8h_html"><div class="ttname"><a href="visibility_8h.html">visibility.h</a></div></div>
-<div class="ttc" id="classarrow_1_1py_1_1_py_buffer_html"><div class="ttname"><a href="classarrow_1_1py_1_1_py_buffer.html">arrow::py::PyBuffer</a></div><div class="ttdef"><b>Definition:</b> common.h:109</div></div>
-<div class="ttc" id="classarrow_1_1py_1_1_owned_ref_html_ad99c47163961c1b346c3ea9836783eda"><div class="ttname"><a href="classarrow_1_1py_1_1_owned_ref.html#ad99c47163961c1b346c3ea9836783eda">arrow::py::OwnedRef::reset</a></div><div class="ttdeci">void reset(PyObject *obj)</div><div class="ttdef"><b>Definition:</b> common.h:59</div></div>
-<div class="ttc" id="classarrow_1_1py_1_1_owned_ref_html_a4fa414445a0d45fc6876e22a48323818"><div class="ttname"><a href="classarrow_1_1py_1_1_owned_ref.html#a4fa414445a0d45fc6876e22a48323818">arrow::py::OwnedRef::OwnedRef</a></div><div class="ttdeci">OwnedRef(PyObject *obj)</div><div class="ttdef"><b>Definition:</b> common.h:52</div></div>
-<div class="ttc" id="structarrow_1_1py_1_1_py_object_stringify_html_a710405190a719e7941d68b0ff9c24bbf"><div class="ttname"><a href="structarrow_1_1py_1_1_py_object_stringify.html#a710405190a719e7941d68b0ff9c24bbf">arrow::py::PyObjectStringify::tmp_obj</a></div><div class="ttdeci">OwnedRef tmp_obj</div><div class="ttdef"><b>Definition:</b> common.h:74</div></div>
+<div class="ttc" id="classarrow_1_1py_1_1_py_buffer_html"><div class="ttname"><a href="classarrow_1_1py_1_1_py_buffer.html">arrow::py::PyBuffer</a></div><div class="ttdef"><b>Definition:</b> common.h:126</div></div>
+<div class="ttc" id="classarrow_1_1py_1_1_owned_ref_html_ad99c47163961c1b346c3ea9836783eda"><div class="ttname"><a href="classarrow_1_1py_1_1_owned_ref.html#ad99c47163961c1b346c3ea9836783eda">arrow::py::OwnedRef::reset</a></div><div class="ttdeci">void reset(PyObject *obj)</div><div class="ttdef"><b>Definition:</b> common.h:77</div></div>
+<div class="ttc" id="classarrow_1_1py_1_1_owned_ref_html_a4fa414445a0d45fc6876e22a48323818"><div class="ttname"><a href="classarrow_1_1py_1_1_owned_ref.html#a4fa414445a0d45fc6876e22a48323818">arrow::py::OwnedRef::OwnedRef</a></div><div class="ttdeci">OwnedRef(PyObject *obj)</div><div class="ttdef"><b>Definition:</b> common.h:70</div></div>
+<div class="ttc" id="structarrow_1_1py_1_1_py_object_stringify_html_a710405190a719e7941d68b0ff9c24bbf"><div class="ttname"><a href="structarrow_1_1py_1_1_py_object_stringify.html#a710405190a719e7941d68b0ff9c24bbf">arrow::py::PyObjectStringify::tmp_obj</a></div><div class="ttdeci">OwnedRef tmp_obj</div><div class="ttdef"><b>Definition:</b> common.h:92</div></div>
<div class="ttc" id="classarrow_1_1py_1_1_py_acquire_g_i_l_html_a176ad0a1d753c1e1297a8c8c8e24edfc"><div class="ttname"><a href="classarrow_1_1py_1_1_py_acquire_g_i_l.html#a176ad0a1d753c1e1297a8c8c8e24edfc">arrow::py::PyAcquireGIL::PyAcquireGIL</a></div><div class="ttdeci">PyAcquireGIL()</div><div class="ttdef"><b>Definition:</b> common.h:37</div></div>
+<div class="ttc" id="namespacearrow_html_a331ad1dbd1c157c8be168cb6548d188fabfaef30f1c8011c5cefa38ae470fb7aa"><div class="ttname"><a href="namespacearrow.html#a331ad1dbd1c157c8be168cb6548d188fabfaef30f1c8011c5cefa38ae470fb7aa">arrow::StatusCode::UnknownError</a></div></div>
<div class="ttc" id="buffer_8h_html"><div class="ttname"><a href="buffer_8h.html">buffer.h</a></div></div>
<div class="ttc" id="classarrow_1_1py_1_1_py_acquire_g_i_l_html"><div class="ttname"><a href="classarrow_1_1py_1_1_py_acquire_g_i_l.html">arrow::py::PyAcquireGIL</a></div><div class="ttdef"><b>Definition:</b> common.h:35</div></div>
-<div class="ttc" id="structarrow_1_1py_1_1_py_object_stringify_html_a4affd96a0f23d719cadb443eb179f98d"><div class="ttname"><a href="structarrow_1_1py_1_1_py_object_stringify.html#a4affd96a0f23d719cadb443eb179f98d">arrow::py::PyObjectStringify::bytes</a></div><div class="ttdeci">const char * bytes</div><div class="ttdef"><b>Definition:</b> common.h:75</div></div>
-<div class="ttc" id="classarrow_1_1py_1_1_py_acquire_g_i_l_html_aa07961f7d96ca5dd17319aa4fb65facc"><div class="ttname"><a href="classarrow_1_1py_1_1_py_acquire_g_i_l.html#aa07961f7d96ca5dd17319aa4fb65facc">arrow::py::PyAcquireGIL::~PyAcquireGIL</a></div><div class="ttdeci">~PyAcquireGIL()</div><div class="ttdef"><b>Definition:</b> common.h:39</div></div>
+<div class="ttc" id="structarrow_1_1py_1_1_py_object_stringify_html_a4affd96a0f23d719cadb443eb179f98d"><div class="ttname"><a href="structarrow_1_1py_1_1_py_object_stringify.html#a4affd96a0f23d719cadb443eb179f98d">arrow::py::PyObjectStringify::bytes</a></div><div class="ttdeci">const char * bytes</div><div class="ttdef"><b>Definition:</b> common.h:93</div></div>
+<div class="ttc" id="classarrow_1_1py_1_1_py_acquire_g_i_l_html_aa07961f7d96ca5dd17319aa4fb65facc"><div class="ttname"><a href="classarrow_1_1py_1_1_py_acquire_g_i_l.html#aa07961f7d96ca5dd17319aa4fb65facc">arrow::py::PyAcquireGIL::~PyAcquireGIL</a></div><div class="ttdeci">~PyAcquireGIL()</div><div class="ttdef"><b>Definition:</b> common.h:41</div></div>
<div class="ttc" id="classarrow_1_1_buffer_html"><div class="ttname"><a href="classarrow_1_1_buffer.html">arrow::Buffer</a></div><div class="ttdoc">Immutable API for a chunk of bytes which may or may not be owned by the class instance. </div><div class="ttdef"><b>Definition:</b> buffer.h:46</div></div>
<div class="ttc" id="macros_8h_html_af8df3547bfde53a5acb93e2607b0034a"><div class="ttname"><a href="macros_8h.html#af8df3547bfde53a5acb93e2607b0034a">DISALLOW_COPY_AND_ASSIGN</a></div><div class="ttdeci">#define DISALLOW_COPY_AND_ASSIGN(TypeName)</div><div class="ttdef"><b>Definition:</b> macros.h:23</div></div>
-<div class="ttc" id="classarrow_1_1py_1_1_owned_ref_html"><div class="ttname"><a href="classarrow_1_1py_1_1_owned_ref.html">arrow::py::OwnedRef</a></div><div class="ttdef"><b>Definition:</b> common.h:48</div></div>
+<div class="ttc" id="classarrow_1_1py_1_1_owned_ref_html"><div class="ttname"><a href="classarrow_1_1py_1_1_owned_ref.html">arrow::py::OwnedRef</a></div><div class="ttdef"><b>Definition:</b> common.h:66</div></div>
<div class="ttc" id="visibility_8h_html_a7060b7b5f11fc11ce77a4d30b37619ef"><div class="ttname"><a href="visibility_8h.html#a7060b7b5f11fc11ce77a4d30b37619ef">ARROW_EXPORT</a></div><div class="ttdeci">#define ARROW_EXPORT</div><div class="ttdef"><b>Definition:</b> visibility.h:31</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
http://git-wip-us.apache.org/repos/asf/arrow-site/blob/62afa00b/docs/cpp/compare_8cc.html
----------------------------------------------------------------------
diff --git a/docs/cpp/compare_8cc.html b/docs/cpp/compare_8cc.html
index 20b973a..6744e68 100644
--- a/docs/cpp/compare_8cc.html
+++ b/docs/cpp/compare_8cc.html
@@ -38,6 +38,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
+ <li><a href="pages.html"><span>Related Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
http://git-wip-us.apache.org/repos/asf/arrow-site/blob/62afa00b/docs/cpp/compare_8h.html
----------------------------------------------------------------------
diff --git a/docs/cpp/compare_8h.html b/docs/cpp/compare_8h.html
index d8ce034..df86840 100644
--- a/docs/cpp/compare_8h.html
+++ b/docs/cpp/compare_8h.html
@@ -38,6 +38,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
+ <li><a href="pages.html"><span>Related Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
http://git-wip-us.apache.org/repos/asf/arrow-site/blob/62afa00b/docs/cpp/compare_8h_source.html
----------------------------------------------------------------------
diff --git a/docs/cpp/compare_8h_source.html b/docs/cpp/compare_8h_source.html
index 1cf06b2..c55584e 100644
--- a/docs/cpp/compare_8h_source.html
+++ b/docs/cpp/compare_8h_source.html
@@ -38,6 +38,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
+ <li><a href="pages.html"><span>Related Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
http://git-wip-us.apache.org/repos/asf/arrow-site/blob/62afa00b/docs/cpp/config_8cc.html
----------------------------------------------------------------------
diff --git a/docs/cpp/config_8cc.html b/docs/cpp/config_8cc.html
index c280a7d..8f26803 100644
--- a/docs/cpp/config_8cc.html
+++ b/docs/cpp/config_8cc.html
@@ -38,6 +38,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
+ <li><a href="pages.html"><span>Related Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
http://git-wip-us.apache.org/repos/asf/arrow-site/blob/62afa00b/docs/cpp/config_8h.html
----------------------------------------------------------------------
diff --git a/docs/cpp/config_8h.html b/docs/cpp/config_8h.html
index 15519cc..eea2c8e 100644
--- a/docs/cpp/config_8h.html
+++ b/docs/cpp/config_8h.html
@@ -38,6 +38,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
+ <li><a href="pages.html"><span>Related Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
http://git-wip-us.apache.org/repos/asf/arrow-site/blob/62afa00b/docs/cpp/config_8h_source.html
----------------------------------------------------------------------
diff --git a/docs/cpp/config_8h_source.html b/docs/cpp/config_8h_source.html
index b40c78f..edb0e10 100644
--- a/docs/cpp/config_8h_source.html
+++ b/docs/cpp/config_8h_source.html
@@ -38,6 +38,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
+ <li><a href="pages.html"><span>Related Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
http://git-wip-us.apache.org/repos/asf/arrow-site/blob/62afa00b/docs/cpp/datetime_8h.html
----------------------------------------------------------------------
diff --git a/docs/cpp/datetime_8h.html b/docs/cpp/datetime_8h.html
index 7f445e7..5f53d74 100644
--- a/docs/cpp/datetime_8h.html
+++ b/docs/cpp/datetime_8h.html
@@ -38,6 +38,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
+ <li><a href="pages.html"><span>Related Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
http://git-wip-us.apache.org/repos/asf/arrow-site/blob/62afa00b/docs/cpp/datetime_8h_source.html
----------------------------------------------------------------------
diff --git a/docs/cpp/datetime_8h_source.html b/docs/cpp/datetime_8h_source.html
index 1f1dac6..10870a6 100644
--- a/docs/cpp/datetime_8h_source.html
+++ b/docs/cpp/datetime_8h_source.html
@@ -38,6 +38,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
+ <li><a href="pages.html"><span>Related Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
@@ -133,14 +134,37 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="preprocessor"></span>}</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> </div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keyword">static</span> <span class="keyword">inline</span> int32_t PyDate_to_days(PyDateTime_Date* pydate) {</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  <span class="keywordflow">return</span> <span class="keyword">static_cast<</span>int32_t<span class="keyword">></span>(PyDate_to_ms(pydate) / 86400000LL);</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> }</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> </div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> } <span class="comment">// namespace py</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> } <span class="comment">// namespace arrow</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="preprocessor">#endif // PYARROW_UTIL_DATETIME_H</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keyword">static</span> <span class="keyword">inline</span> int64_t PyDateTime_to_us(PyDateTime_DateTime* pydatetime) {</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  <span class="keyword">struct </span>tm datetime = {0};</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  datetime.tm_year = PyDateTime_GET_YEAR(pydatetime) - 1900;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>  datetime.tm_mon = PyDateTime_GET_MONTH(pydatetime) - 1;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>  datetime.tm_mday = PyDateTime_GET_DAY(pydatetime);</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>  datetime.tm_hour = PyDateTime_DATE_GET_HOUR(pydatetime);</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>  datetime.tm_min = PyDateTime_DATE_GET_MINUTE(pydatetime);</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  datetime.tm_sec = PyDateTime_DATE_GET_SECOND(pydatetime);</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>  <span class="keywordtype">int</span> us = PyDateTime_DATE_GET_MICROSECOND(pydatetime);</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>  <span class="keyword">struct </span>tm epoch = {0};</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  epoch.tm_year = 70;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  epoch.tm_mday = 1;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="preprocessor">#ifdef _MSC_VER</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="preprocessor"></span> <span class="comment">// Microseconds since the epoch</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>  <span class="keyword">const</span> int64_t current_timestamp = <span class="keyword">static_cast<</span>int64_t<span class="keyword">></span>(_mkgmtime64(&datetime));</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  <span class="keyword">const</span> int64_t epoch_timestamp = <span class="keyword">static_cast<</span>int64_t<span class="keyword">></span>(_mkgmtime64(&epoch));</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  <span class="keywordflow">return</span> (current_timestamp - epoch_timestamp) * 1000000L + us;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="preprocessor"></span> <span class="keywordflow">return</span> <span class="keyword">static_cast<</span>int64_t<span class="keyword">></span>(</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  lrint(difftime(mktime(&datetime), mktime(&epoch))) * 1000000 + us);</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> </div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="keyword">static</span> <span class="keyword">inline</span> int32_t PyDate_to_days(PyDateTime_Date* pydate) {</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  <span class="keywordflow">return</span> <span class="keyword">static_cast<</span>int32_t<span class="keyword">></span>(PyDate_to_ms(pydate) / 86400000LL);</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> }</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> </div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> } <span class="comment">// namespace py</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> } <span class="comment">// namespace arrow</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> </div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="preprocessor">#endif // PYARROW_UTIL_DATETIME_H</span></div>
<div class="ttc" id="platform_8h_html"><div class="ttname"><a href="platform_8h.html">platform.h</a></div></div>
<div class="ttc" id="datetime_8h_html"><div class="ttname"><a href="datetime_8h.html">datetime.h</a></div></div>
</div><!-- fragment --></div><!-- contents -->
http://git-wip-us.apache.org/repos/asf/arrow-site/blob/62afa00b/docs/cpp/decimal_8cc.html
----------------------------------------------------------------------
diff --git a/docs/cpp/decimal_8cc.html b/docs/cpp/decimal_8cc.html
index 96fc6df..02e12c3 100644
--- a/docs/cpp/decimal_8cc.html
+++ b/docs/cpp/decimal_8cc.html
@@ -38,6 +38,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
+ <li><a href="pages.html"><span>Related Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
http://git-wip-us.apache.org/repos/asf/arrow-site/blob/62afa00b/docs/cpp/decimal_8h.html
----------------------------------------------------------------------
diff --git a/docs/cpp/decimal_8h.html b/docs/cpp/decimal_8h.html
index f839200..4331076 100644
--- a/docs/cpp/decimal_8h.html
+++ b/docs/cpp/decimal_8h.html
@@ -38,6 +38,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
+ <li><a href="pages.html"><span>Related Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
@@ -98,7 +99,6 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="textblock"><code>#include <cmath></code><br/>
<code>#include <cstdlib></code><br/>
<code>#include <iterator></code><br/>
-<code>#include <regex></code><br/>
<code>#include <string></code><br/>
<code>#include "<a class="el" href="status_8h_source.html">arrow/status.h</a>"</code><br/>
<code>#include "<a class="el" href="bit-util_8h_source.html">arrow/util/bit-util.h</a>"</code><br/>