blob: d0283165718ec119b7ca460024c4706db0a811de [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.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>mxnet: mxnet::Array&lt; T, typename &gt; Class Template 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>
<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">mxnet
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></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 id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespacemxnet.html">mxnet</a></li><li class="navelem"><a class="el" href="classmxnet_1_1Array.html">Array</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classmxnet_1_1Array-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">mxnet::Array&lt; T, typename &gt; Class Template Reference</div> </div>
</div><!--header-->
<div class="contents">
<p><a class="el" href="classmxnet_1_1Array.html" title="Array container of NodeRef in DSL graph. Array implements copy on write semantics, which means array is mutable but copy will happen when array is referenced in more than two places. ">Array</a> container of NodeRef in DSL graph. <a class="el" href="classmxnet_1_1Array.html" title="Array container of NodeRef in DSL graph. Array implements copy on write semantics, which means array is mutable but copy will happen when array is referenced in more than two places. ">Array</a> implements copy on write semantics, which means array is mutable but copy will happen when array is referenced in more than two places.
<a href="classmxnet_1_1Array.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="node_2container_8h_source.html">container.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for mxnet::Array&lt; T, typename &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="classmxnet_1_1Array__inherit__graph.png" border="0" usemap="#mxnet_1_1Array_3_01T_00_01typename_01_4_inherit__map" alt="Inheritance graph"/></div>
<map name="mxnet_1_1Array_3_01T_00_01typename_01_4_inherit__map" id="mxnet_1_1Array_3_01T_00_01typename_01_4_inherit__map">
<area shape="rect" id="node2" href="classmxnet_1_1runtime_1_1ObjectRef.html" title="Base class of all object reference. " alt="" coords="17,5,212,273"/>
</map>
</div>
<div class="dynheader">
Collaboration diagram for mxnet::Array&lt; T, typename &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="classmxnet_1_1Array__coll__graph.png" border="0" usemap="#mxnet_1_1Array_3_01T_00_01typename_01_4_coll__map" alt="Collaboration graph"/></div>
<map name="mxnet_1_1Array_3_01T_00_01typename_01_4_coll__map" id="mxnet_1_1Array_3_01T_00_01typename_01_4_coll__map">
<area shape="rect" id="node2" href="classmxnet_1_1runtime_1_1ObjectRef.html" title="Base class of all object reference. " alt="" coords="17,307,212,575"/>
<area shape="rect" id="node3" href="classmxnet_1_1runtime_1_1ObjectPtr.html" title="{mxnet::runtime::ObjectPtr\l\&lt; mxnet::runtime::Object \&gt;\n||+ ObjectPtr()\l+ ObjectPtr()\l+ ObjectPtr()\l+ ObjectPtr()\l+ ObjectPtr()\l+ ObjectPtr()\l+ ~ObjectPtr()\l+ swap()\l+ get()\l+ operator&#45;\&gt;()\land 10 more...\l}" alt="" coords="13,5,216,244"/>
</map>
</div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmxnet_1_1Array_1_1ValueConverter.html">ValueConverter</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:aaedad023cadaf0d11c6ac8bc7aea6c13"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#aaedad023cadaf0d11c6ac8bc7aea6c13">ContainerType</a> = <a class="el" href="classmxnet_1_1ArrayNode.html">ArrayNode</a></td></tr>
<tr class="memdesc:aaedad023cadaf0d11c6ac8bc7aea6c13"><td class="mdescLeft">&#160;</td><td class="mdescRight">specify container node <a href="#aaedad023cadaf0d11c6ac8bc7aea6c13">More...</a><br /></td></tr>
<tr class="separator:aaedad023cadaf0d11c6ac8bc7aea6c13"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a50dc5aac14db086cdf2ad0bdc2f2fa71"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#a50dc5aac14db086cdf2ad0bdc2f2fa71">iterator</a> = <a class="el" href="classmxnet_1_1IterAdapter.html">IterAdapter</a>&lt; <a class="el" href="structmxnet_1_1Array_1_1ValueConverter.html">ValueConverter</a>, std::vector&lt; <a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html">ObjectRef</a> &gt;::const_iterator &gt;</td></tr>
<tr class="separator:a50dc5aac14db086cdf2ad0bdc2f2fa71"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad789d2d9ca9a4e9b5a4bfdf343c6aae"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#aad789d2d9ca9a4e9b5a4bfdf343c6aae">reverse_iterator</a> = <a class="el" href="classmxnet_1_1IterAdapter.html">IterAdapter</a>&lt; <a class="el" href="structmxnet_1_1Array_1_1ValueConverter.html">ValueConverter</a>, std::vector&lt; <a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html">ObjectRef</a> &gt;::const_reverse_iterator &gt;</td></tr>
<tr class="separator:aad789d2d9ca9a4e9b5a4bfdf343c6aae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_types_classmxnet_1_1runtime_1_1ObjectRef"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classmxnet_1_1runtime_1_1ObjectRef')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html">mxnet::runtime::ObjectRef</a></td></tr>
<tr class="memitem:afb17c6afa35f39c755d92fa2090fe0af inherit pub_types_classmxnet_1_1runtime_1_1ObjectRef"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html#afb17c6afa35f39c755d92fa2090fe0af">ContainerType</a> = <a class="el" href="classmxnet_1_1runtime_1_1Object.html">Object</a></td></tr>
<tr class="memdesc:afb17c6afa35f39c755d92fa2090fe0af inherit pub_types_classmxnet_1_1runtime_1_1ObjectRef"><td class="mdescLeft">&#160;</td><td class="mdescRight">type indicate the container type. <a href="classmxnet_1_1runtime_1_1ObjectRef.html#afb17c6afa35f39c755d92fa2090fe0af">More...</a><br /></td></tr>
<tr class="separator:afb17c6afa35f39c755d92fa2090fe0af inherit pub_types_classmxnet_1_1runtime_1_1ObjectRef"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><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:a68d4cd81b6175aa7532234fae2cb5d59"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#a68d4cd81b6175aa7532234fae2cb5d59">Array</a> ()</td></tr>
<tr class="memdesc:a68d4cd81b6175aa7532234fae2cb5d59"><td class="mdescLeft">&#160;</td><td class="mdescRight">default constructor <a href="#a68d4cd81b6175aa7532234fae2cb5d59">More...</a><br /></td></tr>
<tr class="separator:a68d4cd81b6175aa7532234fae2cb5d59"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00c3797ab4a9fbddbf191652bef44809"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#a00c3797ab4a9fbddbf191652bef44809">Array</a> (<a class="el" href="classmxnet_1_1Array.html">Array</a>&lt; T &gt; &amp;&amp;other)</td></tr>
<tr class="memdesc:a00c3797ab4a9fbddbf191652bef44809"><td class="mdescLeft">&#160;</td><td class="mdescRight">move constructor <a href="#a00c3797ab4a9fbddbf191652bef44809">More...</a><br /></td></tr>
<tr class="separator:a00c3797ab4a9fbddbf191652bef44809"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2640d179bd36bea8c7a46aaeca5ae58e"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#a2640d179bd36bea8c7a46aaeca5ae58e">Array</a> (const <a class="el" href="classmxnet_1_1Array.html">Array</a>&lt; T &gt; &amp;other)</td></tr>
<tr class="memdesc:a2640d179bd36bea8c7a46aaeca5ae58e"><td class="mdescLeft">&#160;</td><td class="mdescRight">copy constructor <a href="#a2640d179bd36bea8c7a46aaeca5ae58e">More...</a><br /></td></tr>
<tr class="separator:a2640d179bd36bea8c7a46aaeca5ae58e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee1c5a8e4fae05ed35f4e6fc009d3997"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#aee1c5a8e4fae05ed35f4e6fc009d3997">Array</a> (<a class="el" href="classmxnet_1_1runtime_1_1ObjectPtr.html">runtime::ObjectPtr</a>&lt; <a class="el" href="classmxnet_1_1runtime_1_1Object.html">Object</a> &gt; n)</td></tr>
<tr class="memdesc:aee1c5a8e4fae05ed35f4e6fc009d3997"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructor from pointer <a href="#aee1c5a8e4fae05ed35f4e6fc009d3997">More...</a><br /></td></tr>
<tr class="separator:aee1c5a8e4fae05ed35f4e6fc009d3997"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75dc7b5ab19d402fda807b7108eda4ef"><td class="memTemplParams" colspan="2">template&lt;typename IterType &gt; </td></tr>
<tr class="memitem:a75dc7b5ab19d402fda807b7108eda4ef"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#a75dc7b5ab19d402fda807b7108eda4ef">Array</a> (IterType <a class="el" href="classmxnet_1_1Array.html#a84854870831608e7fd061fa85fa5144b">begin</a>, IterType <a class="el" href="classmxnet_1_1Array.html#a4e706c1e8ecab5a059fad870c92839a7">end</a>)</td></tr>
<tr class="memdesc:a75dc7b5ab19d402fda807b7108eda4ef"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructor from iterator <a href="#a75dc7b5ab19d402fda807b7108eda4ef">More...</a><br /></td></tr>
<tr class="separator:a75dc7b5ab19d402fda807b7108eda4ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0027f124b02851939efab84ce57887d8"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#a0027f124b02851939efab84ce57887d8">Array</a> (std::initializer_list&lt; T &gt; init)</td></tr>
<tr class="memdesc:a0027f124b02851939efab84ce57887d8"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructor from initializer list <a href="#a0027f124b02851939efab84ce57887d8">More...</a><br /></td></tr>
<tr class="separator:a0027f124b02851939efab84ce57887d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab973c70d95c2813049a9376853628afe"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#ab973c70d95c2813049a9376853628afe">Array</a> (const std::vector&lt; T &gt; &amp;init)</td></tr>
<tr class="memdesc:ab973c70d95c2813049a9376853628afe"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructor from vector <a href="#ab973c70d95c2813049a9376853628afe">More...</a><br /></td></tr>
<tr class="separator:ab973c70d95c2813049a9376853628afe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aadd7404faea67e3af90867d18d1e0da6"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#aadd7404faea67e3af90867d18d1e0da6">Array</a> (size_t n, const T &amp;val)</td></tr>
<tr class="memdesc:aadd7404faea67e3af90867d18d1e0da6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a container with n elements. Each element is a copy of val. <a href="#aadd7404faea67e3af90867d18d1e0da6">More...</a><br /></td></tr>
<tr class="separator:aadd7404faea67e3af90867d18d1e0da6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8072807d0c6f5b2a062d6f67ec6d0d34"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmxnet_1_1Array.html">Array</a>&lt; T &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#a8072807d0c6f5b2a062d6f67ec6d0d34">operator=</a> (<a class="el" href="classmxnet_1_1Array.html">Array</a>&lt; T &gt; &amp;&amp;other)</td></tr>
<tr class="memdesc:a8072807d0c6f5b2a062d6f67ec6d0d34"><td class="mdescLeft">&#160;</td><td class="mdescRight">move assign operator <a href="#a8072807d0c6f5b2a062d6f67ec6d0d34">More...</a><br /></td></tr>
<tr class="separator:a8072807d0c6f5b2a062d6f67ec6d0d34"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3c86bf10ff15554b85d14039fa3fe28d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmxnet_1_1Array.html">Array</a>&lt; T &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#a3c86bf10ff15554b85d14039fa3fe28d">operator=</a> (const <a class="el" href="classmxnet_1_1Array.html">Array</a>&lt; T &gt; &amp;other)</td></tr>
<tr class="memdesc:a3c86bf10ff15554b85d14039fa3fe28d"><td class="mdescLeft">&#160;</td><td class="mdescRight">copy assign operator <a href="#a3c86bf10ff15554b85d14039fa3fe28d">More...</a><br /></td></tr>
<tr class="separator:a3c86bf10ff15554b85d14039fa3fe28d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9095f1bac4bfa8eec9f4c080dba54d8f"><td class="memTemplParams" colspan="2">template&lt;typename IterType &gt; </td></tr>
<tr class="memitem:a9095f1bac4bfa8eec9f4c080dba54d8f"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#a9095f1bac4bfa8eec9f4c080dba54d8f">assign</a> (IterType <a class="el" href="classmxnet_1_1Array.html#a84854870831608e7fd061fa85fa5144b">begin</a>, IterType <a class="el" href="classmxnet_1_1Array.html#a4e706c1e8ecab5a059fad870c92839a7">end</a>)</td></tr>
<tr class="memdesc:a9095f1bac4bfa8eec9f4c080dba54d8f"><td class="mdescLeft">&#160;</td><td class="mdescRight">reset the array to content from iterator. <a href="#a9095f1bac4bfa8eec9f4c080dba54d8f">More...</a><br /></td></tr>
<tr class="separator:a9095f1bac4bfa8eec9f4c080dba54d8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac43ce20b5f51c7a47521a293aea1b4d8"><td class="memItemLeft" align="right" valign="top">const T&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#ac43ce20b5f51c7a47521a293aea1b4d8">operator[]</a> (size_t i) const</td></tr>
<tr class="memdesc:ac43ce20b5f51c7a47521a293aea1b4d8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Read i-th element from array. <a href="#ac43ce20b5f51c7a47521a293aea1b4d8">More...</a><br /></td></tr>
<tr class="separator:ac43ce20b5f51c7a47521a293aea1b4d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aef1832eb8be445cbd5fbf2a886676756"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#aef1832eb8be445cbd5fbf2a886676756">size</a> () const</td></tr>
<tr class="separator:aef1832eb8be445cbd5fbf2a886676756"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9debff88636171cdbca2c4a220064d40"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmxnet_1_1ArrayNode.html">ArrayNode</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#a9debff88636171cdbca2c4a220064d40">CopyOnWrite</a> ()</td></tr>
<tr class="memdesc:a9debff88636171cdbca2c4a220064d40"><td class="mdescLeft">&#160;</td><td class="mdescRight">copy on write semantics Do nothing if current handle is the unique copy of the array. Otherwise make a new copy of the array to ensure the current handle hold a unique copy. <a href="#a9debff88636171cdbca2c4a220064d40">More...</a><br /></td></tr>
<tr class="separator:a9debff88636171cdbca2c4a220064d40"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1e856b04be89c5f8e836cb5c6abed9a1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#a1e856b04be89c5f8e836cb5c6abed9a1">push_back</a> (const T &amp;item)</td></tr>
<tr class="memdesc:a1e856b04be89c5f8e836cb5c6abed9a1"><td class="mdescLeft">&#160;</td><td class="mdescRight">push a new item to the back of the list <a href="#a1e856b04be89c5f8e836cb5c6abed9a1">More...</a><br /></td></tr>
<tr class="separator:a1e856b04be89c5f8e836cb5c6abed9a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9c11277e346b8a78155f3ff46f7a9298"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#a9c11277e346b8a78155f3ff46f7a9298">resize</a> (size_t <a class="el" href="classmxnet_1_1Array.html#aef1832eb8be445cbd5fbf2a886676756">size</a>)</td></tr>
<tr class="memdesc:a9c11277e346b8a78155f3ff46f7a9298"><td class="mdescLeft">&#160;</td><td class="mdescRight">Resize the array. <a href="#a9c11277e346b8a78155f3ff46f7a9298">More...</a><br /></td></tr>
<tr class="separator:a9c11277e346b8a78155f3ff46f7a9298"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a641d65835daceebf743dd0c683a5bdae"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#a641d65835daceebf743dd0c683a5bdae">Set</a> (size_t i, const T &amp;value)</td></tr>
<tr class="memdesc:a641d65835daceebf743dd0c683a5bdae"><td class="mdescLeft">&#160;</td><td class="mdescRight">set i-th element of the array. <a href="#a641d65835daceebf743dd0c683a5bdae">More...</a><br /></td></tr>
<tr class="separator:a641d65835daceebf743dd0c683a5bdae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acef1616b8c0761b4d09c2403b96cfa14"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#acef1616b8c0761b4d09c2403b96cfa14">empty</a> () const</td></tr>
<tr class="separator:acef1616b8c0761b4d09c2403b96cfa14"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed953611d4d515eef787cc2f30f76599"><td class="memTemplParams" colspan="2">template&lt;typename F &gt; </td></tr>
<tr class="memitem:aed953611d4d515eef787cc2f30f76599"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#aed953611d4d515eef787cc2f30f76599">MutateByApply</a> (F fmutate)</td></tr>
<tr class="memdesc:aed953611d4d515eef787cc2f30f76599"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper function to apply fmutate to mutate an array. <a href="#aed953611d4d515eef787cc2f30f76599">More...</a><br /></td></tr>
<tr class="separator:aed953611d4d515eef787cc2f30f76599"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a84854870831608e7fd061fa85fa5144b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmxnet_1_1Array.html#a50dc5aac14db086cdf2ad0bdc2f2fa71">iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#a84854870831608e7fd061fa85fa5144b">begin</a> () const</td></tr>
<tr class="separator:a84854870831608e7fd061fa85fa5144b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e706c1e8ecab5a059fad870c92839a7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmxnet_1_1Array.html#a50dc5aac14db086cdf2ad0bdc2f2fa71">iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#a4e706c1e8ecab5a059fad870c92839a7">end</a> () const</td></tr>
<tr class="separator:a4e706c1e8ecab5a059fad870c92839a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a97a949de7fcd50039f8751fa93d9798a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmxnet_1_1Array.html#aad789d2d9ca9a4e9b5a4bfdf343c6aae">reverse_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#a97a949de7fcd50039f8751fa93d9798a">rbegin</a> () const</td></tr>
<tr class="separator:a97a949de7fcd50039f8751fa93d9798a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3500d3ab395004b7323364f803874029"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmxnet_1_1Array.html#aad789d2d9ca9a4e9b5a4bfdf343c6aae">reverse_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1Array.html#a3500d3ab395004b7323364f803874029">rend</a> () const</td></tr>
<tr class="separator:a3500d3ab395004b7323364f803874029"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classmxnet_1_1runtime_1_1ObjectRef')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html">mxnet::runtime::ObjectRef</a></td></tr>
<tr class="memitem:a1eeff522c6cb7503f2f2205bc69c0fce inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html#a1eeff522c6cb7503f2f2205bc69c0fce">ObjectRef</a> ()=default</td></tr>
<tr class="memdesc:a1eeff522c6cb7503f2f2205bc69c0fce inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="mdescLeft">&#160;</td><td class="mdescRight">default constructor <a href="classmxnet_1_1runtime_1_1ObjectRef.html#a1eeff522c6cb7503f2f2205bc69c0fce">More...</a><br /></td></tr>
<tr class="separator:a1eeff522c6cb7503f2f2205bc69c0fce inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a075f794b50f9d9d89d3d31930a1bc38c inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html#a075f794b50f9d9d89d3d31930a1bc38c">ObjectRef</a> (<a class="el" href="classmxnet_1_1runtime_1_1ObjectPtr.html">ObjectPtr</a>&lt; <a class="el" href="classmxnet_1_1runtime_1_1Object.html">Object</a> &gt; data)</td></tr>
<tr class="memdesc:a075f794b50f9d9d89d3d31930a1bc38c inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor from existing object ptr. <a href="classmxnet_1_1runtime_1_1ObjectRef.html#a075f794b50f9d9d89d3d31930a1bc38c">More...</a><br /></td></tr>
<tr class="separator:a075f794b50f9d9d89d3d31930a1bc38c inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a95de2a92783738031bf76edc2be7a6bd inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html#a95de2a92783738031bf76edc2be7a6bd">same_as</a> (const <a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html">ObjectRef</a> &amp;other) const</td></tr>
<tr class="memdesc:a95de2a92783738031bf76edc2be7a6bd inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Comparator. <a href="classmxnet_1_1runtime_1_1ObjectRef.html#a95de2a92783738031bf76edc2be7a6bd">More...</a><br /></td></tr>
<tr class="separator:a95de2a92783738031bf76edc2be7a6bd inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9c75bdd6446ab1a6dec9ee366efd1da9 inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html#a9c75bdd6446ab1a6dec9ee366efd1da9">operator==</a> (const <a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html">ObjectRef</a> &amp;other) const</td></tr>
<tr class="memdesc:a9c75bdd6446ab1a6dec9ee366efd1da9 inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Comparator. <a href="classmxnet_1_1runtime_1_1ObjectRef.html#a9c75bdd6446ab1a6dec9ee366efd1da9">More...</a><br /></td></tr>
<tr class="separator:a9c75bdd6446ab1a6dec9ee366efd1da9 inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7ae5d37afb7f966c2707a66044229c82 inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html#a7ae5d37afb7f966c2707a66044229c82">operator!=</a> (const <a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html">ObjectRef</a> &amp;other) const</td></tr>
<tr class="memdesc:a7ae5d37afb7f966c2707a66044229c82 inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Comparator. <a href="classmxnet_1_1runtime_1_1ObjectRef.html#a7ae5d37afb7f966c2707a66044229c82">More...</a><br /></td></tr>
<tr class="separator:a7ae5d37afb7f966c2707a66044229c82 inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aceed1d04b67619c94bc56c43a4909ad5 inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html#aceed1d04b67619c94bc56c43a4909ad5">operator&lt;</a> (const <a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html">ObjectRef</a> &amp;other) const</td></tr>
<tr class="memdesc:aceed1d04b67619c94bc56c43a4909ad5 inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Comparator. <a href="classmxnet_1_1runtime_1_1ObjectRef.html#aceed1d04b67619c94bc56c43a4909ad5">More...</a><br /></td></tr>
<tr class="separator:aceed1d04b67619c94bc56c43a4909ad5 inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a92c53ce7ca3184bde4e9e81ae278a30c inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html#a92c53ce7ca3184bde4e9e81ae278a30c">defined</a> () const</td></tr>
<tr class="separator:a92c53ce7ca3184bde4e9e81ae278a30c inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af10de3ce2f4984f44a4ab6341aaef3e0 inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classmxnet_1_1runtime_1_1Object.html">Object</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html#af10de3ce2f4984f44a4ab6341aaef3e0">get</a> () const</td></tr>
<tr class="separator:af10de3ce2f4984f44a4ab6341aaef3e0 inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ebb92d820a0fe8cc96674308fbe22d5 inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classmxnet_1_1runtime_1_1Object.html">Object</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html#a0ebb92d820a0fe8cc96674308fbe22d5">operator-&gt;</a> () const</td></tr>
<tr class="separator:a0ebb92d820a0fe8cc96674308fbe22d5 inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a80e8bafaec687dacf9ca846de4a96c34 inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html#a80e8bafaec687dacf9ca846de4a96c34">unique</a> () const</td></tr>
<tr class="separator:a80e8bafaec687dacf9ca846de4a96c34 inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2501a43190c64c4a711281d425a87745 inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memTemplParams" colspan="2">template&lt;typename ObjectType &gt; </td></tr>
<tr class="memitem:a2501a43190c64c4a711281d425a87745 inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memTemplItemLeft" align="right" valign="top">const ObjectType *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html#a2501a43190c64c4a711281d425a87745">as</a> () const</td></tr>
<tr class="memdesc:a2501a43190c64c4a711281d425a87745 inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Try to downcast the internal <a class="el" href="classmxnet_1_1runtime_1_1Object.html" title="base class of all object containers. ">Object</a> to a raw pointer of a corresponding type. <a href="classmxnet_1_1runtime_1_1ObjectRef.html#a2501a43190c64c4a711281d425a87745">More...</a><br /></td></tr>
<tr class="separator:a2501a43190c64c4a711281d425a87745 inherit pub_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pro_methods_classmxnet_1_1runtime_1_1ObjectRef"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classmxnet_1_1runtime_1_1ObjectRef')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html">mxnet::runtime::ObjectRef</a></td></tr>
<tr class="memitem:a31c9848521afd783f4eae179fb7717e5 inherit pro_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmxnet_1_1runtime_1_1Object.html">Object</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html#a31c9848521afd783f4eae179fb7717e5">get_mutable</a> () const</td></tr>
<tr class="separator:a31c9848521afd783f4eae179fb7717e5 inherit pro_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_static_methods_classmxnet_1_1runtime_1_1ObjectRef"><td colspan="2" onclick="javascript:toggleInherit('pro_static_methods_classmxnet_1_1runtime_1_1ObjectRef')"><img src="closed.png" alt="-"/>&#160;Static Protected Member Functions inherited from <a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html">mxnet::runtime::ObjectRef</a></td></tr>
<tr class="memitem:ab5adba2e735bd310635cf9dfa1799e9c inherit pro_static_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:ab5adba2e735bd310635cf9dfa1799e9c inherit pro_static_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memTemplItemLeft" align="right" valign="top">static T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html#ab5adba2e735bd310635cf9dfa1799e9c">DowncastNoCheck</a> (<a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html">ObjectRef</a> ref)</td></tr>
<tr class="memdesc:ab5adba2e735bd310635cf9dfa1799e9c inherit pro_static_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal helper function downcast a ref without check. <a href="classmxnet_1_1runtime_1_1ObjectRef.html#ab5adba2e735bd310635cf9dfa1799e9c">More...</a><br /></td></tr>
<tr class="separator:ab5adba2e735bd310635cf9dfa1799e9c inherit pro_static_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a44873861fe3a0ee963314402eb3e1f47 inherit pro_static_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memTemplParams" colspan="2">template&lt;typename ObjectType &gt; </td></tr>
<tr class="memitem:a44873861fe3a0ee963314402eb3e1f47 inherit pro_static_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memTemplItemLeft" align="right" valign="top">static <a class="el" href="classmxnet_1_1runtime_1_1ObjectPtr.html">ObjectPtr</a>&lt; ObjectType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html#a44873861fe3a0ee963314402eb3e1f47">GetDataPtr</a> (const <a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html">ObjectRef</a> &amp;ref)</td></tr>
<tr class="memdesc:a44873861fe3a0ee963314402eb3e1f47 inherit pro_static_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal helper function get data_ as <a class="el" href="classmxnet_1_1runtime_1_1ObjectPtr.html" title="A custom smart pointer for Object. ">ObjectPtr</a> of ObjectType. <a href="classmxnet_1_1runtime_1_1ObjectRef.html#a44873861fe3a0ee963314402eb3e1f47">More...</a><br /></td></tr>
<tr class="separator:a44873861fe3a0ee963314402eb3e1f47 inherit pro_static_methods_classmxnet_1_1runtime_1_1ObjectRef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_classmxnet_1_1runtime_1_1ObjectRef"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classmxnet_1_1runtime_1_1ObjectRef')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html">mxnet::runtime::ObjectRef</a></td></tr>
<tr class="memitem:a5009d0661d741e4b105402b3126663e9 inherit pro_attribs_classmxnet_1_1runtime_1_1ObjectRef"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmxnet_1_1runtime_1_1ObjectPtr.html">ObjectPtr</a>&lt; <a class="el" href="classmxnet_1_1runtime_1_1Object.html">Object</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html#a5009d0661d741e4b105402b3126663e9">data_</a></td></tr>
<tr class="memdesc:a5009d0661d741e4b105402b3126663e9 inherit pro_attribs_classmxnet_1_1runtime_1_1ObjectRef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal pointer that backs the reference. <a href="classmxnet_1_1runtime_1_1ObjectRef.html#a5009d0661d741e4b105402b3126663e9">More...</a><br /></td></tr>
<tr class="separator:a5009d0661d741e4b105402b3126663e9 inherit pro_attribs_classmxnet_1_1runtime_1_1ObjectRef"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt;<br />
class mxnet::Array&lt; T, typename &gt;</h3>
<p><a class="el" href="classmxnet_1_1Array.html" title="Array container of NodeRef in DSL graph. Array implements copy on write semantics, which means array is mutable but copy will happen when array is referenced in more than two places. ">Array</a> container of NodeRef in DSL graph. <a class="el" href="classmxnet_1_1Array.html" title="Array container of NodeRef in DSL graph. Array implements copy on write semantics, which means array is mutable but copy will happen when array is referenced in more than two places. ">Array</a> implements copy on write semantics, which means array is mutable but copy will happen when array is referenced in more than two places. </p>
<p>operator[] only provide const acces, use Set to mutate the content. </p><dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">T</td><td>The content NodeRef type. </td></tr>
</table>
</dd>
</dl>
</div><h2 class="groupheader">Member Typedef Documentation</h2>
<a id="aaedad023cadaf0d11c6ac8bc7aea6c13"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaedad023cadaf0d11c6ac8bc7aea6c13">&#9670;&nbsp;</a></span>ContainerType</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::<a class="el" href="classmxnet_1_1Array.html#aaedad023cadaf0d11c6ac8bc7aea6c13">ContainerType</a> = <a class="el" href="classmxnet_1_1ArrayNode.html">ArrayNode</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>specify container node </p>
</div>
</div>
<a id="a50dc5aac14db086cdf2ad0bdc2f2fa71"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a50dc5aac14db086cdf2ad0bdc2f2fa71">&#9670;&nbsp;</a></span>iterator</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::<a class="el" href="classmxnet_1_1Array.html#a50dc5aac14db086cdf2ad0bdc2f2fa71">iterator</a> = <a class="el" href="classmxnet_1_1IterAdapter.html">IterAdapter</a>&lt;<a class="el" href="structmxnet_1_1Array_1_1ValueConverter.html">ValueConverter</a>, std::vector&lt;<a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html">ObjectRef</a>&gt;::const_iterator&gt;</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aad789d2d9ca9a4e9b5a4bfdf343c6aae"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aad789d2d9ca9a4e9b5a4bfdf343c6aae">&#9670;&nbsp;</a></span>reverse_iterator</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::<a class="el" href="classmxnet_1_1Array.html#aad789d2d9ca9a4e9b5a4bfdf343c6aae">reverse_iterator</a> = <a class="el" href="classmxnet_1_1IterAdapter.html">IterAdapter</a>&lt; <a class="el" href="structmxnet_1_1Array_1_1ValueConverter.html">ValueConverter</a>, std::vector&lt;<a class="el" href="classmxnet_1_1runtime_1_1ObjectRef.html">ObjectRef</a>&gt;::const_reverse_iterator&gt;</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a68d4cd81b6175aa7532234fae2cb5d59"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a68d4cd81b6175aa7532234fae2cb5d59">&#9670;&nbsp;</a></span>Array() <span class="overload">[1/8]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::<a class="el" href="classmxnet_1_1Array.html">Array</a> </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>default constructor </p>
</div>
</div>
<a id="a00c3797ab4a9fbddbf191652bef44809"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a00c3797ab4a9fbddbf191652bef44809">&#9670;&nbsp;</a></span>Array() <span class="overload">[2/8]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::<a class="el" href="classmxnet_1_1Array.html">Array</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classmxnet_1_1Array.html">Array</a>&lt; T &gt; &amp;&amp;&#160;</td>
<td class="paramname"><em>other</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>move constructor </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">other</td><td>source </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a2640d179bd36bea8c7a46aaeca5ae58e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2640d179bd36bea8c7a46aaeca5ae58e">&#9670;&nbsp;</a></span>Array() <span class="overload">[3/8]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::<a class="el" href="classmxnet_1_1Array.html">Array</a> </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classmxnet_1_1Array.html">Array</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>other</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>copy constructor </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">other</td><td>source </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="aee1c5a8e4fae05ed35f4e6fc009d3997"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aee1c5a8e4fae05ed35f4e6fc009d3997">&#9670;&nbsp;</a></span>Array() <span class="overload">[4/8]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::<a class="el" href="classmxnet_1_1Array.html">Array</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classmxnet_1_1runtime_1_1ObjectPtr.html">runtime::ObjectPtr</a>&lt; <a class="el" href="classmxnet_1_1runtime_1_1Object.html">Object</a> &gt;&#160;</td>
<td class="paramname"><em>n</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>constructor from pointer </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">n</td><td>the container pointer </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a75dc7b5ab19d402fda807b7108eda4ef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a75dc7b5ab19d402fda807b7108eda4ef">&#9670;&nbsp;</a></span>Array() <span class="overload">[5/8]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<div class="memtemplate">
template&lt;typename IterType &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::<a class="el" href="classmxnet_1_1Array.html">Array</a> </td>
<td>(</td>
<td class="paramtype">IterType&#160;</td>
<td class="paramname"><em>begin</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">IterType&#160;</td>
<td class="paramname"><em>end</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>constructor from iterator </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">begin</td><td>begin of iterator </td></tr>
<tr><td class="paramname">end</td><td>end of iterator </td></tr>
</table>
</dd>
</dl>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">IterType</td><td>The type of iterator </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a0027f124b02851939efab84ce57887d8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0027f124b02851939efab84ce57887d8">&#9670;&nbsp;</a></span>Array() <span class="overload">[6/8]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::<a class="el" href="classmxnet_1_1Array.html">Array</a> </td>
<td>(</td>
<td class="paramtype">std::initializer_list&lt; T &gt;&#160;</td>
<td class="paramname"><em>init</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>constructor from initializer list </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">init</td><td>The initalizer list </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ab973c70d95c2813049a9376853628afe"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab973c70d95c2813049a9376853628afe">&#9670;&nbsp;</a></span>Array() <span class="overload">[7/8]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::<a class="el" href="classmxnet_1_1Array.html">Array</a> </td>
<td>(</td>
<td class="paramtype">const std::vector&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>init</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>constructor from vector </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">init</td><td>The vector </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="aadd7404faea67e3af90867d18d1e0da6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aadd7404faea67e3af90867d18d1e0da6">&#9670;&nbsp;</a></span>Array() <span class="overload">[8/8]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::<a class="el" href="classmxnet_1_1Array.html">Array</a> </td>
<td>(</td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>n</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const T &amp;&#160;</td>
<td class="paramname"><em>val</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructs a container with n elements. Each element is a copy of val. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">n</td><td>The size of the container </td></tr>
<tr><td class="paramname">val</td><td>The init value </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a9095f1bac4bfa8eec9f4c080dba54d8f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9095f1bac4bfa8eec9f4c080dba54d8f">&#9670;&nbsp;</a></span>assign()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<div class="memtemplate">
template&lt;typename IterType &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::assign </td>
<td>(</td>
<td class="paramtype">IterType&#160;</td>
<td class="paramname"><em>begin</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">IterType&#160;</td>
<td class="paramname"><em>end</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>reset the array to content from iterator. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">begin</td><td>begin of iterator </td></tr>
<tr><td class="paramname">end</td><td>end of iterator </td></tr>
</table>
</dd>
</dl>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">IterType</td><td>The type of iterator </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a84854870831608e7fd061fa85fa5144b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a84854870831608e7fd061fa85fa5144b">&#9670;&nbsp;</a></span>begin()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classmxnet_1_1Array.html#a50dc5aac14db086cdf2ad0bdc2f2fa71">iterator</a> <a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::begin </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>begin iterator </dd></dl>
</div>
</div>
<a id="a9debff88636171cdbca2c4a220064d40"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9debff88636171cdbca2c4a220064d40">&#9670;&nbsp;</a></span>CopyOnWrite()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classmxnet_1_1ArrayNode.html">ArrayNode</a>* <a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::CopyOnWrite </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>copy on write semantics Do nothing if current handle is the unique copy of the array. Otherwise make a new copy of the array to ensure the current handle hold a unique copy. </p>
<dl class="section return"><dt>Returns</dt><dd>Handle to the internal node container(which ganrantees to be unique) </dd></dl>
</div>
</div>
<a id="acef1616b8c0761b4d09c2403b96cfa14"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acef1616b8c0761b4d09c2403b96cfa14">&#9670;&nbsp;</a></span>empty()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::empty </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>whether array is empty </dd></dl>
</div>
</div>
<a id="a4e706c1e8ecab5a059fad870c92839a7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4e706c1e8ecab5a059fad870c92839a7">&#9670;&nbsp;</a></span>end()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classmxnet_1_1Array.html#a50dc5aac14db086cdf2ad0bdc2f2fa71">iterator</a> <a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::end </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>end iterator </dd></dl>
</div>
</div>
<a id="aed953611d4d515eef787cc2f30f76599"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aed953611d4d515eef787cc2f30f76599">&#9670;&nbsp;</a></span>MutateByApply()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<div class="memtemplate">
template&lt;typename F &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::MutateByApply </td>
<td>(</td>
<td class="paramtype">F&#160;</td>
<td class="paramname"><em>fmutate</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Helper function to apply fmutate to mutate an array. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">fmutate</td><td>The transformation function T -&gt; T. </td></tr>
</table>
</dd>
</dl>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">F</td><td>the type of the mutation function. </td></tr>
</table>
</dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>This function performs copy on write optimization. </dd></dl>
</div>
</div>
<a id="a8072807d0c6f5b2a062d6f67ec6d0d34"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8072807d0c6f5b2a062d6f67ec6d0d34">&#9670;&nbsp;</a></span>operator=() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classmxnet_1_1Array.html">Array</a>&lt;T&gt;&amp; <a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::operator= </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classmxnet_1_1Array.html">Array</a>&lt; T &gt; &amp;&amp;&#160;</td>
<td class="paramname"><em>other</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>move assign operator </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">other</td><td>The source of assignment </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>reference to self. </dd></dl>
</div>
</div>
<a id="a3c86bf10ff15554b85d14039fa3fe28d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3c86bf10ff15554b85d14039fa3fe28d">&#9670;&nbsp;</a></span>operator=() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classmxnet_1_1Array.html">Array</a>&lt;T&gt;&amp; <a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::operator= </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classmxnet_1_1Array.html">Array</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>other</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>copy assign operator </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">other</td><td>The source of assignment </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>reference to self. </dd></dl>
</div>
</div>
<a id="ac43ce20b5f51c7a47521a293aea1b4d8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac43ce20b5f51c7a47521a293aea1b4d8">&#9670;&nbsp;</a></span>operator[]()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const T <a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::operator[] </td>
<td>(</td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>i</em></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">
<p>Read i-th element from array. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">i</td><td>The index </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the i-th element. </dd></dl>
</div>
</div>
<a id="a1e856b04be89c5f8e836cb5c6abed9a1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1e856b04be89c5f8e836cb5c6abed9a1">&#9670;&nbsp;</a></span>push_back()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::push_back </td>
<td>(</td>
<td class="paramtype">const T &amp;&#160;</td>
<td class="paramname"><em>item</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>push a new item to the back of the list </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">item</td><td>The item to be pushed. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a97a949de7fcd50039f8751fa93d9798a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a97a949de7fcd50039f8751fa93d9798a">&#9670;&nbsp;</a></span>rbegin()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classmxnet_1_1Array.html#aad789d2d9ca9a4e9b5a4bfdf343c6aae">reverse_iterator</a> <a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::rbegin </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>rbegin iterator </dd></dl>
</div>
</div>
<a id="a3500d3ab395004b7323364f803874029"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3500d3ab395004b7323364f803874029">&#9670;&nbsp;</a></span>rend()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classmxnet_1_1Array.html#aad789d2d9ca9a4e9b5a4bfdf343c6aae">reverse_iterator</a> <a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::rend </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>rend iterator </dd></dl>
</div>
</div>
<a id="a9c11277e346b8a78155f3ff46f7a9298"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9c11277e346b8a78155f3ff46f7a9298">&#9670;&nbsp;</a></span>resize()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::resize </td>
<td>(</td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>size</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Resize the array. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">size</td><td>The new size. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a641d65835daceebf743dd0c683a5bdae"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a641d65835daceebf743dd0c683a5bdae">&#9670;&nbsp;</a></span>Set()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::Set </td>
<td>(</td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>i</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const T &amp;&#160;</td>
<td class="paramname"><em>value</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>set i-th element of the array. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">i</td><td>The index </td></tr>
<tr><td class="paramname">value</td><td>The value to be setted. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="aef1832eb8be445cbd5fbf2a886676756"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aef1832eb8be445cbd5fbf2a886676756">&#9670;&nbsp;</a></span>size()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T, typename = typename std::enable_if&lt;std::is_base_of&lt;ObjectRef, T&gt;::value&gt;::type&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t <a class="el" href="classmxnet_1_1Array.html">mxnet::Array</a>&lt; T, typename &gt;::size </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 size of the array </dd></dl>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>/work/mxnet/include/mxnet/node/<a class="el" href="node_2container_8h_source.html">container.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Thu Jan 5 2023 00:58:44 for mxnet by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.13
</small></address>
</body>
</html>