blob: 7b37f6e52b4c32b2e8a8f1b59f0f107bf649a63b [file] [log] [blame]
Nikhil Raj03c7ff32023-08-22 12:00:04 +01001<!-- HTML header for doxygen 1.8.17-->
2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3<html xmlns="http://www.w3.org/1999/xhtml">
4<head>
5<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
6<meta http-equiv="X-UA-Compatible" content="IE=9"/>
7<meta name="generator" content="Doxygen 1.8.17"/>
8<meta name="viewport" content="width=device-width, initial-scale=1"/>
9<title>Arm NN: Optional&lt; T &gt; Class Template Reference</title>
10<link href="tabs.css" rel="stylesheet" type="text/css"/>
11<script type="text/javascript" src="jquery.js"></script>
12<script type="text/javascript" src="dynsections.js"></script>
13<link href="navtree.css" rel="stylesheet" type="text/css"/>
14<script type="text/javascript" src="resize.js"></script>
15<script type="text/javascript" src="navtreedata.js"></script>
16<script type="text/javascript" src="navtree.js"></script>
17<link href="search/search.css" rel="stylesheet" type="text/css"/>
18<script type="text/javascript" src="search/searchdata.js"></script>
19<script type="text/javascript" src="search/search.js"></script>
20<script type="text/x-mathjax-config">
21 MathJax.Hub.Config({
22 extensions: ["tex2jax.js"],
23 jax: ["input/TeX","output/HTML-CSS"],
24});
25</script>
26<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
27<link href="doxygen.css" rel="stylesheet" type="text/css" />
28<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
29</head>
30<body>
31<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
32<div id="titlearea">
33<table cellspacing="0" cellpadding="0">
34 <tbody>
35 <tr style="height: 56px;">
36 <img alt="ArmNN" src="Arm_NN_horizontal_blue.png" style="max-width: 15rem; margin-top: .5rem; margin-left 13px"/>
37 <td id="projectalign" style="padding-left: 0.9em;">
38 <div id="projectname">
Nikhil Raj1dc83fe2024-05-16 09:47:51 +010039 &#160;<span id="projectnumber">24.05</span>
Nikhil Raj03c7ff32023-08-22 12:00:04 +010040 </div>
41 </td>
42 </tr>
43 </tbody>
44</table>
45</div>
46<!-- end header part -->
47<!-- Generated by Doxygen 1.8.17 -->
48<script type="text/javascript">
49/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
50var searchBox = new SearchBox("searchBox", "search",false,'Search');
51/* @license-end */
52</script>
53<script type="text/javascript" src="menudata.js"></script>
54<script type="text/javascript" src="menu.js"></script>
55<script type="text/javascript">
56/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
57$(function() {
58 initMenu('',true,false,'search.php','Search');
59 $(document).ready(function() { init_search(); });
60});
61/* @license-end */</script>
62<div id="main-nav"></div>
63</div><!-- top -->
64<div id="side-nav" class="ui-resizable side-nav-resizable">
65 <div id="nav-tree">
66 <div id="nav-tree-contents">
67 <div id="nav-sync" class="sync"></div>
68 </div>
69 </div>
70 <div id="splitbar" style="-moz-user-select:none;"
71 class="ui-resizable-handle">
72 </div>
73</div>
74<script type="text/javascript">
75/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
76$(document).ready(function(){initNavTree('classarmnn_1_1_optional.html',''); initResizable(); });
77/* @license-end */
78</script>
79<div id="doc-content">
80<!-- window showing the filter options -->
81<div id="MSearchSelectWindow"
82 onmouseover="return searchBox.OnSearchSelectShow()"
83 onmouseout="return searchBox.OnSearchSelectHide()"
84 onkeydown="return searchBox.OnSearchSelectKey(event)">
85</div>
86
87<!-- iframe showing the search results (closed by default) -->
88<div id="MSearchResultsWindow">
89<iframe src="javascript:void(0)" frameborder="0"
90 name="MSearchResults" id="MSearchResults">
91</iframe>
92</div>
93
94<div class="header">
95 <div class="summary">
96<a href="#pub-types">Public Types</a> &#124;
97<a href="#pub-methods">Public Member Functions</a> &#124;
98<a href="classarmnn_1_1_optional-members.html">List of all members</a> </div>
99 <div class="headertitle">
100<div class="title">Optional&lt; T &gt; Class Template Reference<span class="mlabels"><span class="mlabel">final</span></span></div> </div>
101</div><!--header-->
102<div class="contents">
103
104<p><code>#include &lt;<a class="el" href="_optional_8hpp_source.html">Optional.hpp</a>&gt;</code></p>
105<div class="dynheader">
106Inheritance diagram for Optional&lt; T &gt;:</div>
107<div class="dyncontent">
108<div class="center"><iframe scrolling="no" frameborder="0" src="classarmnn_1_1_optional__inherit__graph.svg" width="1416" height="579"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
109</div>
110<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
111<div class="dynheader">
112Collaboration diagram for Optional&lt; T &gt;:</div>
113<div class="dyncontent">
114<div class="center"><iframe scrolling="no" frameborder="0" src="classarmnn_1_1_optional__coll__graph.svg" width="307" height="338"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
115</div>
116<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
117<table class="memberdecls">
118<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
119Public Types</h2></td></tr>
120<tr class="memitem:ad10f4d634fc3080d680a3a7a004e098f"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional.html#ad10f4d634fc3080d680a3a7a004e098f">BaseSwitch</a> = <a class="el" href="classarmnn_1_1_optional_reference_switch.html">OptionalReferenceSwitch</a>&lt; std::is_reference&lt; T &gt;::<a class="el" href="classarmnn_1_1_optional_reference_switch.html#a77c7d528ac063d870b8c8426ec81c1c3">value</a>, T &gt;</td></tr>
121<tr class="separator:ad10f4d634fc3080d680a3a7a004e098f"><td class="memSeparator" colspan="2">&#160;</td></tr>
122<tr class="inherit_header pub_types_classarmnn_1_1_optional_reference_switch"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classarmnn_1_1_optional_reference_switch')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classarmnn_1_1_optional_reference_switch.html">OptionalReferenceSwitch&lt; std::is_reference&lt; T &gt;::value, T &gt;</a></td></tr>
123<tr class="memitem:a13da864f1d4a5e3957ba70473f8fbf8d inherit pub_types_classarmnn_1_1_optional_reference_switch"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional_reference_switch.html#a13da864f1d4a5e3957ba70473f8fbf8d">Base</a> = <a class="el" href="classarmnn_1_1_optional_base.html">OptionalBase</a></td></tr>
124<tr class="separator:a13da864f1d4a5e3957ba70473f8fbf8d inherit pub_types_classarmnn_1_1_optional_reference_switch"><td class="memSeparator" colspan="2">&#160;</td></tr>
125</table><table class="memberdecls">
126<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
127Public Member Functions</h2></td></tr>
128<tr class="memitem:a0ba66c8e63acad2362782737bdc1e50a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional.html#a0ba66c8e63acad2362782737bdc1e50a">Optional</a> () noexcept</td></tr>
129<tr class="separator:a0ba66c8e63acad2362782737bdc1e50a"><td class="memSeparator" colspan="2">&#160;</td></tr>
130<tr class="memitem:ad821ad3ce9685b41025f5f70481ec2d7"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional.html#ad821ad3ce9685b41025f5f70481ec2d7">Optional</a> (const T &amp;<a class="el" href="classarmnn_1_1_optional_reference_switch.html#a77c7d528ac063d870b8c8426ec81c1c3">value</a>)</td></tr>
131<tr class="separator:ad821ad3ce9685b41025f5f70481ec2d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
132<tr class="memitem:a27ea92da9f8129f5abfabc4ef53091c9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_optional.html">Optional</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional.html#a27ea92da9f8129f5abfabc4ef53091c9">operator=</a> (const <a class="el" href="classarmnn_1_1_optional.html">Optional</a> &amp;other)=default</td></tr>
133<tr class="separator:a27ea92da9f8129f5abfabc4ef53091c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
134<tr class="memitem:a5569b19b8dc99204c286f32c2c979eb6"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional.html#a5569b19b8dc99204c286f32c2c979eb6">Optional</a> (<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a> empty)</td></tr>
135<tr class="separator:a5569b19b8dc99204c286f32c2c979eb6"><td class="memSeparator" colspan="2">&#160;</td></tr>
136<tr class="memitem:ab71d669cf5dc14eb564c64345be02198"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional.html#ab71d669cf5dc14eb564c64345be02198">Optional</a> (const <a class="el" href="classarmnn_1_1_optional.html">Optional</a> &amp;other)</td></tr>
137<tr class="separator:ab71d669cf5dc14eb564c64345be02198"><td class="memSeparator" colspan="2">&#160;</td></tr>
138<tr class="memitem:ad6bb5bce1d9fcc1ea1d672543c75db4e"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional.html#ad6bb5bce1d9fcc1ea1d672543c75db4e">Optional</a> (const <a class="el" href="classarmnn_1_1_optional.html#ad10f4d634fc3080d680a3a7a004e098f">BaseSwitch</a> &amp;other)</td></tr>
139<tr class="separator:ad6bb5bce1d9fcc1ea1d672543c75db4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
140<tr class="memitem:a2e14620644d695df278fc6a84c8a63dc"><td class="memTemplParams" colspan="2">template&lt;class... Args&gt; </td></tr>
141<tr class="memitem:a2e14620644d695df278fc6a84c8a63dc"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional.html#a2e14620644d695df278fc6a84c8a63dc">Optional</a> (<a class="el" href="structarmnn_1_1_construct_in_place.html">ConstructInPlace</a>, Args &amp;&amp;... args)</td></tr>
142<tr class="separator:a2e14620644d695df278fc6a84c8a63dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
143<tr class="memitem:aa68a881b2258017440f00f1bf3cd0e74"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional.html#aa68a881b2258017440f00f1bf3cd0e74">operator==</a> (const <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; T &gt; &amp;rhs) const</td></tr>
144<tr class="memdesc:aa68a881b2258017440f00f1bf3cd0e74"><td class="mdescLeft">&#160;</td><td class="mdescRight">Two optionals are considered equal if they are both empty or both contain values which themselves are considered equal (via their own == operator). <a href="classarmnn_1_1_optional.html#aa68a881b2258017440f00f1bf3cd0e74">More...</a><br /></td></tr>
145<tr class="separator:aa68a881b2258017440f00f1bf3cd0e74"><td class="memSeparator" colspan="2">&#160;</td></tr>
146<tr class="inherit_header pub_methods_classarmnn_1_1_optional_reference_switch"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classarmnn_1_1_optional_reference_switch')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classarmnn_1_1_optional_reference_switch.html">OptionalReferenceSwitch&lt; std::is_reference&lt; T &gt;::value, T &gt;</a></td></tr>
147<tr class="memitem:ae0e39323497d71182ed4ff2c15f1e565 inherit pub_methods_classarmnn_1_1_optional_reference_switch"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional_reference_switch.html#ae0e39323497d71182ed4ff2c15f1e565">OptionalReferenceSwitch</a> () noexcept</td></tr>
148<tr class="separator:ae0e39323497d71182ed4ff2c15f1e565 inherit pub_methods_classarmnn_1_1_optional_reference_switch"><td class="memSeparator" colspan="2">&#160;</td></tr>
149<tr class="memitem:a13961a32b21df02dad8c66e11995f006 inherit pub_methods_classarmnn_1_1_optional_reference_switch"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional_reference_switch.html#a13961a32b21df02dad8c66e11995f006">OptionalReferenceSwitch</a> (<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>) noexcept</td></tr>
150<tr class="separator:a13961a32b21df02dad8c66e11995f006 inherit pub_methods_classarmnn_1_1_optional_reference_switch"><td class="memSeparator" colspan="2">&#160;</td></tr>
151<tr class="memitem:a6beefcffe9bf038690c90acd176c2263 inherit pub_methods_classarmnn_1_1_optional_reference_switch"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional_reference_switch.html#a6beefcffe9bf038690c90acd176c2263">OptionalReferenceSwitch</a> (const T &amp;<a class="el" href="classarmnn_1_1_optional_reference_switch.html#a77c7d528ac063d870b8c8426ec81c1c3">value</a>)</td></tr>
152<tr class="separator:a6beefcffe9bf038690c90acd176c2263 inherit pub_methods_classarmnn_1_1_optional_reference_switch"><td class="memSeparator" colspan="2">&#160;</td></tr>
153<tr class="memitem:a4f012dc9cb58d868dc77bb3b4ba3a76d inherit pub_methods_classarmnn_1_1_optional_reference_switch"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional_reference_switch.html#a4f012dc9cb58d868dc77bb3b4ba3a76d">OptionalReferenceSwitch</a> (<a class="el" href="structarmnn_1_1_construct_in_place.html">ConstructInPlace</a>, Args &amp;&amp;... args)</td></tr>
154<tr class="separator:a4f012dc9cb58d868dc77bb3b4ba3a76d inherit pub_methods_classarmnn_1_1_optional_reference_switch"><td class="memSeparator" colspan="2">&#160;</td></tr>
155<tr class="memitem:a66ffe2beacf3f0e66c2ccb21fcfba30f inherit pub_methods_classarmnn_1_1_optional_reference_switch"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional_reference_switch.html#a66ffe2beacf3f0e66c2ccb21fcfba30f">OptionalReferenceSwitch</a> (const <a class="el" href="classarmnn_1_1_optional_reference_switch.html">OptionalReferenceSwitch</a> &amp;other)</td></tr>
156<tr class="separator:a66ffe2beacf3f0e66c2ccb21fcfba30f inherit pub_methods_classarmnn_1_1_optional_reference_switch"><td class="memSeparator" colspan="2">&#160;</td></tr>
157<tr class="memitem:abe5947e3f9acc0738b3ef2ee4cf3547d inherit pub_methods_classarmnn_1_1_optional_reference_switch"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_optional_reference_switch.html">OptionalReferenceSwitch</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional_reference_switch.html#abe5947e3f9acc0738b3ef2ee4cf3547d">operator=</a> (const T &amp;<a class="el" href="classarmnn_1_1_optional_reference_switch.html#a77c7d528ac063d870b8c8426ec81c1c3">value</a>)</td></tr>
158<tr class="separator:abe5947e3f9acc0738b3ef2ee4cf3547d inherit pub_methods_classarmnn_1_1_optional_reference_switch"><td class="memSeparator" colspan="2">&#160;</td></tr>
159<tr class="memitem:afcdbef8eae7fb1de8ea387da20dd369c inherit pub_methods_classarmnn_1_1_optional_reference_switch"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_optional_reference_switch.html">OptionalReferenceSwitch</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional_reference_switch.html#afcdbef8eae7fb1de8ea387da20dd369c">operator=</a> (const <a class="el" href="classarmnn_1_1_optional_reference_switch.html">OptionalReferenceSwitch</a> &amp;other)</td></tr>
160<tr class="separator:afcdbef8eae7fb1de8ea387da20dd369c inherit pub_methods_classarmnn_1_1_optional_reference_switch"><td class="memSeparator" colspan="2">&#160;</td></tr>
161<tr class="memitem:affce7d7dd75fd7b406f5112bd54ac7d8 inherit pub_methods_classarmnn_1_1_optional_reference_switch"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarmnn_1_1_optional_reference_switch.html">OptionalReferenceSwitch</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional_reference_switch.html#affce7d7dd75fd7b406f5112bd54ac7d8">operator=</a> (<a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>)</td></tr>
162<tr class="separator:affce7d7dd75fd7b406f5112bd54ac7d8 inherit pub_methods_classarmnn_1_1_optional_reference_switch"><td class="memSeparator" colspan="2">&#160;</td></tr>
163<tr class="memitem:abf0cbbed2029d141b8a8f1b39c7028f9 inherit pub_methods_classarmnn_1_1_optional_reference_switch"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional_reference_switch.html#abf0cbbed2029d141b8a8f1b39c7028f9">~OptionalReferenceSwitch</a> ()</td></tr>
164<tr class="separator:abf0cbbed2029d141b8a8f1b39c7028f9 inherit pub_methods_classarmnn_1_1_optional_reference_switch"><td class="memSeparator" colspan="2">&#160;</td></tr>
165<tr class="memitem:ad20897c5c8bd47f5d4005989bead0e55 inherit pub_methods_classarmnn_1_1_optional_reference_switch"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional_reference_switch.html#ad20897c5c8bd47f5d4005989bead0e55">reset</a> ()</td></tr>
166<tr class="separator:ad20897c5c8bd47f5d4005989bead0e55 inherit pub_methods_classarmnn_1_1_optional_reference_switch"><td class="memSeparator" colspan="2">&#160;</td></tr>
167<tr class="memitem:a77c7d528ac063d870b8c8426ec81c1c3 inherit pub_methods_classarmnn_1_1_optional_reference_switch"><td class="memItemLeft" align="right" valign="top">const T &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional_reference_switch.html#a77c7d528ac063d870b8c8426ec81c1c3">value</a> () const</td></tr>
168<tr class="separator:a77c7d528ac063d870b8c8426ec81c1c3 inherit pub_methods_classarmnn_1_1_optional_reference_switch"><td class="memSeparator" colspan="2">&#160;</td></tr>
169<tr class="memitem:a464298ad7afeafebbb149f566ecabbab inherit pub_methods_classarmnn_1_1_optional_reference_switch"><td class="memItemLeft" align="right" valign="top">T &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional_reference_switch.html#a464298ad7afeafebbb149f566ecabbab">value</a> ()</td></tr>
170<tr class="separator:a464298ad7afeafebbb149f566ecabbab inherit pub_methods_classarmnn_1_1_optional_reference_switch"><td class="memSeparator" colspan="2">&#160;</td></tr>
171<tr class="inherit_header pub_methods_classarmnn_1_1_optional_base"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classarmnn_1_1_optional_base')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classarmnn_1_1_optional_base.html">OptionalBase</a></td></tr>
172<tr class="memitem:ac2bde2f7113f72440ad3638eeb4d06f6 inherit pub_methods_classarmnn_1_1_optional_base"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional_base.html#ac2bde2f7113f72440ad3638eeb4d06f6">OptionalBase</a> () noexcept</td></tr>
173<tr class="separator:ac2bde2f7113f72440ad3638eeb4d06f6 inherit pub_methods_classarmnn_1_1_optional_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
174<tr class="memitem:a86b749ce2c4bc627fa8a1fcfaf0e314f inherit pub_methods_classarmnn_1_1_optional_base"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional_base.html#a86b749ce2c4bc627fa8a1fcfaf0e314f">has_value</a> () const noexcept</td></tr>
175<tr class="separator:a86b749ce2c4bc627fa8a1fcfaf0e314f inherit pub_methods_classarmnn_1_1_optional_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
176<tr class="memitem:a420e60e9788bfa3b52aa3aab72ea3a5e inherit pub_methods_classarmnn_1_1_optional_base"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional_base.html#a420e60e9788bfa3b52aa3aab72ea3a5e">operator bool</a> () const noexcept</td></tr>
177<tr class="memdesc:a420e60e9788bfa3b52aa3aab72ea3a5e inherit pub_methods_classarmnn_1_1_optional_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conversion to bool, so can be used in if-statements and similar contexts expecting a bool. <a href="classarmnn_1_1_optional_base.html#a420e60e9788bfa3b52aa3aab72ea3a5e">More...</a><br /></td></tr>
178<tr class="separator:a420e60e9788bfa3b52aa3aab72ea3a5e inherit pub_methods_classarmnn_1_1_optional_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
179</table><table class="memberdecls">
180<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
181Additional Inherited Members</h2></td></tr>
182<tr class="inherit_header pro_methods_classarmnn_1_1_optional_base"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classarmnn_1_1_optional_base')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classarmnn_1_1_optional_base.html">OptionalBase</a></td></tr>
183<tr class="memitem:a50b53f38c96fdf12c90890d2dfbb8719 inherit pro_methods_classarmnn_1_1_optional_base"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional_base.html#a50b53f38c96fdf12c90890d2dfbb8719">OptionalBase</a> (bool hasValue) noexcept</td></tr>
184<tr class="separator:a50b53f38c96fdf12c90890d2dfbb8719 inherit pro_methods_classarmnn_1_1_optional_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
185<tr class="inherit_header pro_attribs_classarmnn_1_1_optional_base"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classarmnn_1_1_optional_base')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classarmnn_1_1_optional_base.html">OptionalBase</a></td></tr>
186<tr class="memitem:a53e87efb7e1b2df3dc4420dafaf2ee7e inherit pro_attribs_classarmnn_1_1_optional_base"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1_optional_base.html#a53e87efb7e1b2df3dc4420dafaf2ee7e">m_HasValue</a></td></tr>
187<tr class="separator:a53e87efb7e1b2df3dc4420dafaf2ee7e inherit pro_attribs_classarmnn_1_1_optional_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
188</table>
189<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
190<div class="textblock"><h3>template&lt;typename T&gt;<br />
191class armnn::Optional&lt; T &gt;</h3>
192
193
194<p class="definition">Definition at line <a class="el" href="_optional_8hpp_source.html#l00270">270</a> of file <a class="el" href="_optional_8hpp_source.html">Optional.hpp</a>.</p>
195</div><h2 class="groupheader">Member Typedef Documentation</h2>
196<a id="ad10f4d634fc3080d680a3a7a004e098f"></a>
197<h2 class="memtitle"><span class="permalink"><a href="#ad10f4d634fc3080d680a3a7a004e098f">&#9670;&nbsp;</a></span>BaseSwitch</h2>
198
199<div class="memitem">
200<div class="memproto">
201 <table class="memname">
202 <tr>
203 <td class="memname">using <a class="el" href="classarmnn_1_1_optional.html#ad10f4d634fc3080d680a3a7a004e098f">BaseSwitch</a> = <a class="el" href="classarmnn_1_1_optional_reference_switch.html">OptionalReferenceSwitch</a>&lt;std::is_reference&lt;T&gt;::<a class="el" href="classarmnn_1_1_optional_reference_switch.html#a77c7d528ac063d870b8c8426ec81c1c3">value</a>, T&gt;</td>
204 </tr>
205 </table>
206</div><div class="memdoc">
207
208<p class="definition">Definition at line <a class="el" href="_optional_8hpp_source.html#l00273">273</a> of file <a class="el" href="_optional_8hpp_source.html">Optional.hpp</a>.</p>
209
210</div>
211</div>
212<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
213<a id="a0ba66c8e63acad2362782737bdc1e50a"></a>
214<h2 class="memtitle"><span class="permalink"><a href="#a0ba66c8e63acad2362782737bdc1e50a">&#9670;&nbsp;</a></span>Optional() <span class="overload">[1/6]</span></h2>
215
216<div class="memitem">
217<div class="memproto">
218<table class="mlabels">
219 <tr>
220 <td class="mlabels-left">
221 <table class="memname">
222 <tr>
223 <td class="memname"><a class="el" href="classarmnn_1_1_optional.html">Optional</a> </td>
224 <td>(</td>
225 <td class="paramname"></td><td>)</td>
226 <td></td>
227 </tr>
228 </table>
229 </td>
230 <td class="mlabels-right">
231<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">noexcept</span></span> </td>
232 </tr>
233</table>
234</div><div class="memdoc">
235
236<p class="definition">Definition at line <a class="el" href="_optional_8hpp_source.html#l00275">275</a> of file <a class="el" href="_optional_8hpp_source.html">Optional.hpp</a>.</p>
237<div class="fragment"><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160;: <a class="code" href="classarmnn_1_1_optional.html#ad10f4d634fc3080d680a3a7a004e098f">BaseSwitch</a>{} {}</div>
238</div><!-- fragment -->
239</div>
240</div>
241<a id="ad821ad3ce9685b41025f5f70481ec2d7"></a>
242<h2 class="memtitle"><span class="permalink"><a href="#ad821ad3ce9685b41025f5f70481ec2d7">&#9670;&nbsp;</a></span>Optional() <span class="overload">[2/6]</span></h2>
243
244<div class="memitem">
245<div class="memproto">
246<table class="mlabels">
247 <tr>
248 <td class="mlabels-left">
249 <table class="memname">
250 <tr>
251 <td class="memname"><a class="el" href="classarmnn_1_1_optional.html">Optional</a> </td>
252 <td>(</td>
253 <td class="paramtype">const T &amp;&#160;</td>
254 <td class="paramname"><em>value</em></td><td>)</td>
255 <td></td>
256 </tr>
257 </table>
258 </td>
259 <td class="mlabels-right">
260<span class="mlabels"><span class="mlabel">inline</span></span> </td>
261 </tr>
262</table>
263</div><div class="memdoc">
264
265<p class="definition">Definition at line <a class="el" href="_optional_8hpp_source.html#l00276">276</a> of file <a class="el" href="_optional_8hpp_source.html">Optional.hpp</a>.</p>
266<div class="fragment"><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;: <a class="code" href="classarmnn_1_1_optional.html#ad10f4d634fc3080d680a3a7a004e098f">BaseSwitch</a>{<a class="code" href="classarmnn_1_1_optional_reference_switch.html#a77c7d528ac063d870b8c8426ec81c1c3">value</a>} {}</div>
267</div><!-- fragment -->
268</div>
269</div>
270<a id="a5569b19b8dc99204c286f32c2c979eb6"></a>
271<h2 class="memtitle"><span class="permalink"><a href="#a5569b19b8dc99204c286f32c2c979eb6">&#9670;&nbsp;</a></span>Optional() <span class="overload">[3/6]</span></h2>
272
273<div class="memitem">
274<div class="memproto">
275<table class="mlabels">
276 <tr>
277 <td class="mlabels-left">
278 <table class="memname">
279 <tr>
280 <td class="memname"><a class="el" href="classarmnn_1_1_optional.html">Optional</a> </td>
281 <td>(</td>
282 <td class="paramtype"><a class="el" href="structarmnn_1_1_empty_optional.html">EmptyOptional</a>&lt; T &gt;&#160;</td>
283 <td class="paramname"><em>empty</em></td><td>)</td>
284 <td></td>
285 </tr>
286 </table>
287 </td>
288 <td class="mlabels-right">
289<span class="mlabels"><span class="mlabel">inline</span></span> </td>
290 </tr>
291</table>
292</div><div class="memdoc">
293
294<p class="definition">Definition at line <a class="el" href="_optional_8hpp_source.html#l00278">278</a> of file <a class="el" href="_optional_8hpp_source.html">Optional.hpp</a>.</p>
295<div class="fragment"><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160;: <a class="code" href="classarmnn_1_1_optional.html#ad10f4d634fc3080d680a3a7a004e098f">BaseSwitch</a>{empty} {}</div>
296</div><!-- fragment -->
297</div>
298</div>
299<a id="ab71d669cf5dc14eb564c64345be02198"></a>
300<h2 class="memtitle"><span class="permalink"><a href="#ab71d669cf5dc14eb564c64345be02198">&#9670;&nbsp;</a></span>Optional() <span class="overload">[4/6]</span></h2>
301
302<div class="memitem">
303<div class="memproto">
304<table class="mlabels">
305 <tr>
306 <td class="mlabels-left">
307 <table class="memname">
308 <tr>
309 <td class="memname"><a class="el" href="classarmnn_1_1_optional.html">Optional</a> </td>
310 <td>(</td>
311 <td class="paramtype">const <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; T &gt; &amp;&#160;</td>
312 <td class="paramname"><em>other</em></td><td>)</td>
313 <td></td>
314 </tr>
315 </table>
316 </td>
317 <td class="mlabels-right">
318<span class="mlabels"><span class="mlabel">inline</span></span> </td>
319 </tr>
320</table>
321</div><div class="memdoc">
322
323<p class="definition">Definition at line <a class="el" href="_optional_8hpp_source.html#l00279">279</a> of file <a class="el" href="_optional_8hpp_source.html">Optional.hpp</a>.</p>
324<div class="fragment"><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;: <a class="code" href="classarmnn_1_1_optional.html#ad10f4d634fc3080d680a3a7a004e098f">BaseSwitch</a>{other} {}</div>
325</div><!-- fragment -->
326</div>
327</div>
328<a id="ad6bb5bce1d9fcc1ea1d672543c75db4e"></a>
329<h2 class="memtitle"><span class="permalink"><a href="#ad6bb5bce1d9fcc1ea1d672543c75db4e">&#9670;&nbsp;</a></span>Optional() <span class="overload">[5/6]</span></h2>
330
331<div class="memitem">
332<div class="memproto">
333<table class="mlabels">
334 <tr>
335 <td class="mlabels-left">
336 <table class="memname">
337 <tr>
338 <td class="memname"><a class="el" href="classarmnn_1_1_optional.html">Optional</a> </td>
339 <td>(</td>
340 <td class="paramtype">const <a class="el" href="classarmnn_1_1_optional.html#ad10f4d634fc3080d680a3a7a004e098f">BaseSwitch</a> &amp;&#160;</td>
341 <td class="paramname"><em>other</em></td><td>)</td>
342 <td></td>
343 </tr>
344 </table>
345 </td>
346 <td class="mlabels-right">
347<span class="mlabels"><span class="mlabel">inline</span></span> </td>
348 </tr>
349</table>
350</div><div class="memdoc">
351
352<p class="definition">Definition at line <a class="el" href="_optional_8hpp_source.html#l00280">280</a> of file <a class="el" href="_optional_8hpp_source.html">Optional.hpp</a>.</p>
353<div class="fragment"><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;: <a class="code" href="classarmnn_1_1_optional.html#ad10f4d634fc3080d680a3a7a004e098f">BaseSwitch</a>{other} {}</div>
354</div><!-- fragment -->
355</div>
356</div>
357<a id="a2e14620644d695df278fc6a84c8a63dc"></a>
358<h2 class="memtitle"><span class="permalink"><a href="#a2e14620644d695df278fc6a84c8a63dc">&#9670;&nbsp;</a></span>Optional() <span class="overload">[6/6]</span></h2>
359
360<div class="memitem">
361<div class="memproto">
362<table class="mlabels">
363 <tr>
364 <td class="mlabels-left">
365 <table class="memname">
366 <tr>
367 <td class="memname"><a class="el" href="classarmnn_1_1_optional.html">Optional</a> </td>
368 <td>(</td>
369 <td class="paramtype"><a class="el" href="structarmnn_1_1_construct_in_place.html">ConstructInPlace</a>&#160;</td>
370 <td class="paramname">, </td>
371 </tr>
372 <tr>
373 <td class="paramkey"></td>
374 <td></td>
375 <td class="paramtype">Args &amp;&amp;...&#160;</td>
376 <td class="paramname"><em>args</em>&#160;</td>
377 </tr>
378 <tr>
379 <td></td>
380 <td>)</td>
381 <td></td><td></td>
382 </tr>
383 </table>
384 </td>
385 <td class="mlabels-right">
386<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td>
387 </tr>
388</table>
389</div><div class="memdoc">
390
391<p class="definition">Definition at line <a class="el" href="_optional_8hpp_source.html#l00283">283</a> of file <a class="el" href="_optional_8hpp_source.html">Optional.hpp</a>.</p>
392<div class="fragment"><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; :</div>
393<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <a class="code" href="classarmnn_1_1_optional.html#ad10f4d634fc3080d680a3a7a004e098f">BaseSwitch</a>(<a class="code" href="_optional_8hpp.html#acbec11f88a308826fa811f370d363a4a">CONSTRUCT_IN_PLACE</a>, std::forward&lt;Args&gt;(args)...) {}</div>
394</div><!-- fragment -->
395</div>
396</div>
397<h2 class="groupheader">Member Function Documentation</h2>
398<a id="a27ea92da9f8129f5abfabc4ef53091c9"></a>
399<h2 class="memtitle"><span class="permalink"><a href="#a27ea92da9f8129f5abfabc4ef53091c9">&#9670;&nbsp;</a></span>operator=()</h2>
400
401<div class="memitem">
402<div class="memproto">
403<table class="mlabels">
404 <tr>
405 <td class="mlabels-left">
406 <table class="memname">
407 <tr>
408 <td class="memname"><a class="el" href="classarmnn_1_1_optional.html">Optional</a>&amp; operator= </td>
409 <td>(</td>
410 <td class="paramtype">const <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; T &gt; &amp;&#160;</td>
411 <td class="paramname"><em>other</em></td><td>)</td>
412 <td></td>
413 </tr>
414 </table>
415 </td>
416 <td class="mlabels-right">
417<span class="mlabels"><span class="mlabel">default</span></span> </td>
418 </tr>
419</table>
420</div><div class="memdoc">
421
422</div>
423</div>
424<a id="aa68a881b2258017440f00f1bf3cd0e74"></a>
425<h2 class="memtitle"><span class="permalink"><a href="#aa68a881b2258017440f00f1bf3cd0e74">&#9670;&nbsp;</a></span>operator==()</h2>
426
427<div class="memitem">
428<div class="memproto">
429<table class="mlabels">
430 <tr>
431 <td class="mlabels-left">
432 <table class="memname">
433 <tr>
434 <td class="memname">bool operator== </td>
435 <td>(</td>
436 <td class="paramtype">const <a class="el" href="classarmnn_1_1_optional.html">Optional</a>&lt; T &gt; &amp;&#160;</td>
437 <td class="paramname"><em>rhs</em></td><td>)</td>
438 <td> const</td>
439 </tr>
440 </table>
441 </td>
442 <td class="mlabels-right">
443<span class="mlabels"><span class="mlabel">inline</span></span> </td>
444 </tr>
445</table>
446</div><div class="memdoc">
447
448<p>Two optionals are considered equal if they are both empty or both contain values which themselves are considered equal (via their own == operator). </p>
449
450<p class="definition">Definition at line <a class="el" href="_optional_8hpp_source.html#l00288">288</a> of file <a class="el" href="_optional_8hpp_source.html">Optional.hpp</a>.</p>
451<div class="fragment"><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; {</div>
452<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="keywordflow">if</span> (!this-&gt;<a class="code" href="classarmnn_1_1_optional_base.html#a86b749ce2c4bc627fa8a1fcfaf0e314f">has_value</a>() &amp;&amp; !rhs.has_value())</div>
453<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; {</div>
454<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
455<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; }</div>
456<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classarmnn_1_1_optional_base.html#a86b749ce2c4bc627fa8a1fcfaf0e314f">has_value</a>() &amp;&amp; rhs.has_value() &amp;&amp; this-&gt;value() == rhs.value())</div>
457<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; {</div>
458<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
459<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; }</div>
460<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
461<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; }</div>
462</div><!-- fragment -->
463</div>
464</div>
465<hr/>The documentation for this class was generated from the following file:<ul>
466<li>include/armnn/<a class="el" href="_optional_8hpp_source.html">Optional.hpp</a></li>
467</ul>
468</div><!-- contents -->
469</div><!-- doc-content -->
470<div class="ttc" id="a_optional_8hpp_html_acbec11f88a308826fa811f370d363a4a"><div class="ttname"><a href="_optional_8hpp.html#acbec11f88a308826fa811f370d363a4a">CONSTRUCT_IN_PLACE</a></div><div class="ttdeci">#define CONSTRUCT_IN_PLACE</div><div class="ttdef"><b>Definition:</b> <a href="_optional_8hpp_source.html#l00041">Optional.hpp:41</a></div></div>
471<div class="ttc" id="aclassarmnn_1_1_optional_html_ad10f4d634fc3080d680a3a7a004e098f"><div class="ttname"><a href="classarmnn_1_1_optional.html#ad10f4d634fc3080d680a3a7a004e098f">armnn::Optional::BaseSwitch</a></div><div class="ttdeci">OptionalReferenceSwitch&lt; std::is_reference&lt; T &gt;::value, T &gt; BaseSwitch</div><div class="ttdef"><b>Definition:</b> <a href="_optional_8hpp_source.html#l00273">Optional.hpp:273</a></div></div>
472<div class="ttc" id="aclassarmnn_1_1_optional_reference_switch_html_a77c7d528ac063d870b8c8426ec81c1c3"><div class="ttname"><a href="classarmnn_1_1_optional_reference_switch.html#a77c7d528ac063d870b8c8426ec81c1c3">armnn::OptionalReferenceSwitch&lt; std::is_reference&lt; T &gt;::value, T &gt;::value</a></div><div class="ttdeci">const T &amp; value() const</div><div class="ttdef"><b>Definition:</b> <a href="_optional_8hpp_source.html#l00146">Optional.hpp:146</a></div></div>
473<div class="ttc" id="aclassarmnn_1_1_optional_base_html_a86b749ce2c4bc627fa8a1fcfaf0e314f"><div class="ttname"><a href="classarmnn_1_1_optional_base.html#a86b749ce2c4bc627fa8a1fcfaf0e314f">armnn::OptionalBase::has_value</a></div><div class="ttdeci">bool has_value() const noexcept</div><div class="ttdef"><b>Definition:</b> <a href="_optional_8hpp_source.html#l00053">Optional.hpp:53</a></div></div>
474<!-- start footer part -->
475<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
476 <ul>
477 <li class="navelem"><a class="el" href="namespacearmnn.html">armnn</a></li><li class="navelem"><a class="el" href="classarmnn_1_1_optional.html">Optional</a></li>
Nikhil Raj1dc83fe2024-05-16 09:47:51 +0100478 <li class="footer">Generated on Thu May 16 2024 09:31:58 for Arm NN by
Nikhil Raj03c7ff32023-08-22 12:00:04 +0100479 <a href="http://www.doxygen.org/index.html">
480 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
481 </ul>
482</div>
483</body>
484</html>