<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.15"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>libzypp: zypp/base/Easy.h File 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="navtree.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="resize.js"></script> <script type="text/javascript" src="navtreedata.js"></script> <script type="text/javascript" src="navtree.js"></script> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ $(document).ready(initResizable); /* @license-end */</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">libzypp  <span id="projectnumber">17.9.0</span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.15 --> <script type="text/javascript" src="menudata.js"></script> <script type="text/javascript" src="menu.js"></script> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ $(function() { initMenu('',false,false,'search.php','Search'); }); /* @license-end */</script> <div id="main-nav"></div> </div><!-- top --> <div id="side-nav" class="ui-resizable side-nav-resizable"> <div id="nav-tree"> <div id="nav-tree-contents"> <div id="nav-sync" class="sync"></div> </div> </div> <div id="splitbar" style="-moz-user-select:none;" class="ui-resizable-handle"> </div> </div> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ $(document).ready(function(){initNavTree('Easy_8h.html','');}); /* @license-end */ </script> <div id="doc-content"> <div class="header"> <div class="summary"> <a href="#namespaces">Namespaces</a> | <a href="#define-members">Macros</a> </div> <div class="headertitle"> <div class="title">Easy.h File Reference</div> </div> </div><!--header--> <div class="contents"> <div class="textblock"><code>#include <cstdio></code><br /> </div><div class="textblock"><div class="dynheader"> Include dependency graph for Easy.h:</div> <div class="dyncontent"> <div class="center"><img src="Easy_8h__incl.png" border="0" usemap="#zypp_2base_2Easy_8h" alt=""/></div> <map name="zypp_2base_2Easy_8h" id="zypp_2base_2Easy_8h"> <area shape="rect" title=" " alt="" coords="5,5,132,32"/> <area shape="rect" title=" " alt="" coords="39,80,98,107"/> </map> </div> </div><div class="textblock"><div class="dynheader"> This graph shows which files directly or indirectly include this file:</div> <div class="dyncontent"> <div class="center"><img src="Easy_8h__dep__incl.png" border="0" usemap="#zypp_2base_2Easy_8hdep" alt=""/></div> <map name="zypp_2base_2Easy_8hdep" id="zypp_2base_2Easy_8hdep"> <area shape="rect" title=" " alt="" coords="4272,5,4399,32"/> <area shape="rect" href="APIConfig_8h.html" title="Provides API related macros." alt="" coords="1644,80,1773,107"/> <area shape="rect" href="DiskUsageCounter_8cc.html" title=" " alt="" coords="2716,244,2899,271"/> <area shape="rect" href="Fetcher_8cc.html" title=" " alt="" coords="3398,244,3515,271"/> <area shape="rect" href="pool_2PoolImpl_8h.html" title=" " alt="" coords="5,244,161,271"/> <area shape="rect" href="sat_2detail_2PoolImpl_8cc.html" title=" " alt="" coords="3758,319,3947,345"/> <area shape="rect" href="Xml_8h.html" title=" " alt="" coords="3895,244,4019,271"/> <area shape="rect" href="CredentialManager_8cc.html" title=" " alt="" coords="4041,319,4272,345"/> <area shape="rect" href="Json_8h.html" title=" " alt="" coords="2693,162,2821,189"/> <area shape="rect" href="LocaleGuard_8h.html" title=" " alt="" coords="5157,80,5333,107"/> <area shape="rect" href="SetRelationMixin_8h.html" title=" " alt="" coords="4775,80,4978,107"/> <area shape="rect" href="String_8h.html" title=" " alt="" coords="3552,80,3689,107"/> <area shape="rect" href="Glob_8h.html" title=" " alt="" coords="4692,244,4789,271"/> <area shape="rect" href="PoolMember_8h.html" title=" " alt="" coords="4231,162,4439,189"/> <area shape="rect" href="Pool_8cc.html" title=" " alt="" coords="5357,80,5479,107"/> <area shape="rect" href="RpmHeader_8cc.html" title=" " alt="" coords="5503,80,5719,107"/> <area shape="rect" href="CleanerThread__p_8h.html" title="This file contains private API, it will change without notice." alt="" coords="2411,162,2617,189"/> <area shape="rect" href="LogTools_8h.html" title=" " alt="" coords="2946,162,3103,189"/> <area shape="rect" href="Capability_8h.html" title=" " alt="" coords="4043,244,4169,271"/> <area shape="rect" href="ExternalProgram_8h.html" title=" " alt="" coords="1797,162,1967,189"/> <area shape="rect" href="HistoryLogData_8h.html" title=" " alt="" coords="3539,244,3702,271"/> <area shape="rect" href="MediaAccess_8h.html" title=" " alt="" coords="1066,162,1253,189"/> <area shape="rect" href="MediaManager_8h.html" title=" " alt="" coords="715,244,915,271"/> <area shape="rect" href="MediaHandler_8h.html" title=" " alt="" coords="421,162,615,189"/> <area shape="rect" href="MediaUserAuth_8h.html" title="Convenience interface for handling authentication data of media user." alt="" coords="639,162,842,189"/> <area shape="rect" href="OnMediaLocation_8h.html" title=" " alt="" coords="867,162,1041,189"/> <area shape="rect" href="XmlEscape_8h.html" title=" " alt="" coords="3693,162,3895,189"/> <area shape="rect" href="RepoInfoBase_8h.html" title=" " alt="" coords="1327,162,1514,189"/> <area shape="rect" href="RepoInfo_8h.html" title=" " alt="" coords="1321,244,1445,271"/> <area shape="rect" href="ResKind_8h.html" title=" " alt="" coords="3280,162,3396,189"/> <area shape="rect" href="ResObject_8h.html" title=" " alt="" coords="1593,244,1721,271"/> <area shape="rect" href="Resolvable_8h.html" title=" " alt="" coords="1538,162,1671,189"/> <area shape="rect" href="ResPool_8h.html" title=" " alt="" coords="178,162,295,189"/> <area shape="rect" href="Target_8h.html" title=" " alt="" coords="186,244,293,271"/> <area shape="rect" href="ZYpp_8h.html" title=" " alt="" coords="283,319,383,345"/> <area shape="rect" href="ShutdownLock__p_8h.html" title=" " alt="" coords="1973,244,2146,271"/> <area shape="rect" href="WebpinResult_8h.html" title=" " alt="" coords="1992,162,2167,189"/> <area shape="rect" href="ZConfig_8h.html" title=" " alt="" coords="3726,244,3843,271"/> <area shape="rect" href="ZYppReadOnlyHack_8h.html" title=" " alt="" coords="2191,155,2386,196"/> <area shape="rect" href="Backtrace_8cc.html" title=" " alt="" coords="3025,244,3187,271"/> <area shape="rect" href="Exception_8cc.html" title=" " alt="" coords="3211,244,3374,271"/> <area shape="rect" href="TargetImpl_8cc.html" title=" " alt="" coords="2423,319,2605,345"/> <area shape="rect" href="Debug_8h.html" title="Debuging tools which should not be used in released code." alt="" coords="2552,244,2692,271"/> <area shape="rect" href="RpmDb_8cc.html" title=" " alt="" coords="4432,319,4623,345"/> <area shape="rect" href="SetRelationMixin_8cc.html" title=" " alt="" coords="4773,162,4980,189"/> <area shape="rect" href="CpeId_8h.html" title=" " alt="" coords="4565,244,4668,271"/> <area shape="rect" href="Arch_8h.html" title=" " alt="" coords="3573,162,3668,189"/> <area shape="rect" href="DrunkenBishop_8cc.html" title=" " alt="" coords="4292,244,4491,271"/> <area shape="rect" href="Errno_8h.html" title=" " alt="" coords="4021,162,4156,189"/> <area shape="rect" href="Flags_8h.html" title=" " alt="" coords="4565,162,4698,189"/> </map> </div> </div> <p><a href="Easy_8h_source.html">Go to the source code of this file.</a></p> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a> Namespaces</h2></td></tr> <tr class="memitem:namespacezypp"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacezypp.html">zypp</a></td></tr> <tr class="memdesc:namespacezypp"><td class="mdescLeft"> </td><td class="mdescRight">Easy-to use interface to the ZYPP dependency resolver. <br /></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a> Macros</h2></td></tr> <tr class="memitem:a7887338b8a0727becb37d8061fcbfc0e"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="Easy_8h.html#a7887338b8a0727becb37d8061fcbfc0e">for_</a>(IT, BEG, END)   for ( __typeof__(BEG) IT = BEG, _for_end = END; IT != _for_end; ++IT )</td></tr> <tr class="memdesc:a7887338b8a0727becb37d8061fcbfc0e"><td class="mdescLeft"> </td><td class="mdescRight">Convenient for-loops using iterator. <a href="#a7887338b8a0727becb37d8061fcbfc0e">More...</a><br /></td></tr> <tr class="separator:a7887338b8a0727becb37d8061fcbfc0e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af0ff297568cc3ea25c31940e5493e666"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="Easy_8h.html#af0ff297568cc3ea25c31940e5493e666">for_each_</a>(IT, CONT)   <a class="el" href="Easy_8h.html#a7887338b8a0727becb37d8061fcbfc0e">for_</a>( IT, (CONT).begin(), (CONT).end() )</td></tr> <tr class="separator:af0ff297568cc3ea25c31940e5493e666"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a51d11a451024ed71a6cfd13da9d7e16e"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="Easy_8h.html#a51d11a451024ed71a6cfd13da9d7e16e">arrayBegin</a>(A)   (&A[0])</td></tr> <tr class="memdesc:a51d11a451024ed71a6cfd13da9d7e16e"><td class="mdescLeft"> </td><td class="mdescRight">Simple C-array iterator. <a href="#a51d11a451024ed71a6cfd13da9d7e16e">More...</a><br /></td></tr> <tr class="separator:a51d11a451024ed71a6cfd13da9d7e16e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:abb08d90dc40063dbc1ad530a96a1b5d9"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="Easy_8h.html#abb08d90dc40063dbc1ad530a96a1b5d9">arraySize</a>(A)   (sizeof(A)/sizeof(*A))</td></tr> <tr class="separator:abb08d90dc40063dbc1ad530a96a1b5d9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:acc5d6511303d9dd6982667c5166fc14f"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="Easy_8h.html#acc5d6511303d9dd6982667c5166fc14f">arrayEnd</a>(A)   (&A[0] + <a class="el" href="Easy_8h.html#abb08d90dc40063dbc1ad530a96a1b5d9">arraySize</a>(A))</td></tr> <tr class="separator:acc5d6511303d9dd6982667c5166fc14f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:afe38b77334294e5f0f41c3225ef83dbe"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="Easy_8h.html#afe38b77334294e5f0f41c3225ef83dbe">defConstStr</a>(FNC, STR)   inline const std::string & FNC { static const std::string val( STR ); return val; }</td></tr> <tr class="separator:afe38b77334294e5f0f41c3225ef83dbe"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:adbba0f726fc66d7100916c683b7568ae"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="Easy_8h.html#adbba0f726fc66d7100916c683b7568ae">GCC_VERSION</a>   (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__)</td></tr> <tr class="separator:adbba0f726fc66d7100916c683b7568ae"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab979d9d4b4923f7c54d6caa6e1a61936"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="Easy_8h.html#ab979d9d4b4923f7c54d6caa6e1a61936">nullptr</a>   NULL</td></tr> <tr class="separator:ab979d9d4b4923f7c54d6caa6e1a61936"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a21cf67b80be4e286a7e86e055341b67d"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="Easy_8h.html#a21cf67b80be4e286a7e86e055341b67d">NON_COPYABLE</a>(CLASS)</td></tr> <tr class="memdesc:a21cf67b80be4e286a7e86e055341b67d"><td class="mdescLeft"> </td><td class="mdescRight">Delete copy ctor and copy assign. <a href="#a21cf67b80be4e286a7e86e055341b67d">More...</a><br /></td></tr> <tr class="separator:a21cf67b80be4e286a7e86e055341b67d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0567f843037be2b69f1d021ba8ae18f8"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="Easy_8h.html#a0567f843037be2b69f1d021ba8ae18f8">DEFAULT_COPYABLE</a>(CLASS)</td></tr> <tr class="memdesc:a0567f843037be2b69f1d021ba8ae18f8"><td class="mdescLeft"> </td><td class="mdescRight">Default copy ctor and copy assign. <a href="#a0567f843037be2b69f1d021ba8ae18f8">More...</a><br /></td></tr> <tr class="separator:a0567f843037be2b69f1d021ba8ae18f8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af37d5ea5e279e14de6189c881896a818"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="Easy_8h.html#af37d5ea5e279e14de6189c881896a818">NON_MOVABLE</a>(CLASS)</td></tr> <tr class="memdesc:af37d5ea5e279e14de6189c881896a818"><td class="mdescLeft"> </td><td class="mdescRight">Delete move ctor and move assign. <a href="#af37d5ea5e279e14de6189c881896a818">More...</a><br /></td></tr> <tr class="separator:af37d5ea5e279e14de6189c881896a818"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a7f88d3c54d8afed6d95d67ca8210603d"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="Easy_8h.html#a7f88d3c54d8afed6d95d67ca8210603d">DEFAULT_MOVABLE</a>(CLASS)</td></tr> <tr class="memdesc:a7f88d3c54d8afed6d95d67ca8210603d"><td class="mdescLeft"> </td><td class="mdescRight">Default move ctor and move assign. <a href="#a7f88d3c54d8afed6d95d67ca8210603d">More...</a><br /></td></tr> <tr class="separator:a7f88d3c54d8afed6d95d67ca8210603d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a80afdbc73e6244f136c2fb4bc3b2fc76"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="Easy_8h.html#a80afdbc73e6244f136c2fb4bc3b2fc76">NON_COPYABLE_BUT_MOVE</a>(CLASS)</td></tr> <tr class="memdesc:a80afdbc73e6244f136c2fb4bc3b2fc76"><td class="mdescLeft"> </td><td class="mdescRight">Delete copy ctor and copy assign but enable default move. <a href="#a80afdbc73e6244f136c2fb4bc3b2fc76">More...</a><br /></td></tr> <tr class="separator:a80afdbc73e6244f136c2fb4bc3b2fc76"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a03714e2a975a2f53a0be6fc48e4d50a2"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="Easy_8h.html#a03714e2a975a2f53a0be6fc48e4d50a2">NON_MOVABLE_BUT_COPY</a>(CLASS)</td></tr> <tr class="memdesc:a03714e2a975a2f53a0be6fc48e4d50a2"><td class="mdescLeft"> </td><td class="mdescRight">Default move ctor and move assign but enable default copy. <a href="#a03714e2a975a2f53a0be6fc48e4d50a2">More...</a><br /></td></tr> <tr class="separator:a03714e2a975a2f53a0be6fc48e4d50a2"><td class="memSeparator" colspan="2"> </td></tr> </table> <h2 class="groupheader">Macro Definition Documentation</h2> <a id="a7887338b8a0727becb37d8061fcbfc0e"></a> <h2 class="memtitle"><span class="permalink"><a href="#a7887338b8a0727becb37d8061fcbfc0e">◆ </a></span>for_</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define for_</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">IT, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">BEG, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">END </td> </tr> <tr> <td></td> <td>)</td> <td></td><td>   for ( __typeof__(BEG) IT = BEG, _for_end = END; IT != _for_end; ++IT )</td> </tr> </table> </div><div class="memdoc"> <p>Convenient for-loops using iterator. </p> <div class="fragment"><div class="line">std::set<std::string>; _store;</div><div class="line"><a class="code" href="Easy_8h.html#a7887338b8a0727becb37d8061fcbfc0e">for_</a>( it, _store.begin(), _store.end() )</div><div class="line">{</div><div class="line"> cout << *it << endl;</div><div class="line">}</div></div><!-- fragment --> <p class="definition">Definition at line <a class="el" href="Easy_8h_source.html#l00027">27</a> of file <a class="el" href="Easy_8h_source.html">Easy.h</a>.</p> </div> </div> <a id="af0ff297568cc3ea25c31940e5493e666"></a> <h2 class="memtitle"><span class="permalink"><a href="#af0ff297568cc3ea25c31940e5493e666">◆ </a></span>for_each_</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define for_each_</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">IT, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">CONT </td> </tr> <tr> <td></td> <td>)</td> <td></td><td>   <a class="el" href="Easy_8h.html#a7887338b8a0727becb37d8061fcbfc0e">for_</a>( IT, (CONT).begin(), (CONT).end() )</td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="Easy_8h_source.html#l00031">31</a> of file <a class="el" href="Easy_8h_source.html">Easy.h</a>.</p> </div> </div> <a id="a51d11a451024ed71a6cfd13da9d7e16e"></a> <h2 class="memtitle"><span class="permalink"><a href="#a51d11a451024ed71a6cfd13da9d7e16e">◆ </a></span>arrayBegin</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define arrayBegin</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">A</td><td>)</td> <td>   (&A[0])</td> </tr> </table> </div><div class="memdoc"> <p>Simple C-array iterator. </p> <div class="fragment"><div class="line"><span class="keyword">const</span> <span class="keywordtype">char</span> * defstrings[] = { <span class="stringliteral">""</span>, <span class="stringliteral">"a"</span>, <span class="stringliteral">"default"</span>, <span class="stringliteral">"two words"</span> };</div><div class="line"><a class="code" href="Easy_8h.html#a7887338b8a0727becb37d8061fcbfc0e">for_</a>( it, <a class="code" href="Easy_8h.html#a51d11a451024ed71a6cfd13da9d7e16e">arrayBegin</a>(defstrings), <a class="code" href="Easy_8h.html#acc5d6511303d9dd6982667c5166fc14f">arrayEnd</a>(defstrings) )</div><div class="line"> cout << *it << endl;</div></div><!-- fragment --> <p class="definition">Definition at line <a class="el" href="Easy_8h_source.html#l00040">40</a> of file <a class="el" href="Easy_8h_source.html">Easy.h</a>.</p> </div> </div> <a id="abb08d90dc40063dbc1ad530a96a1b5d9"></a> <h2 class="memtitle"><span class="permalink"><a href="#abb08d90dc40063dbc1ad530a96a1b5d9">◆ </a></span>arraySize</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define arraySize</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">A</td><td>)</td> <td>   (sizeof(A)/sizeof(*A))</td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="Easy_8h_source.html#l00041">41</a> of file <a class="el" href="Easy_8h_source.html">Easy.h</a>.</p> </div> </div> <a id="acc5d6511303d9dd6982667c5166fc14f"></a> <h2 class="memtitle"><span class="permalink"><a href="#acc5d6511303d9dd6982667c5166fc14f">◆ </a></span>arrayEnd</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define arrayEnd</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">A</td><td>)</td> <td>   (&A[0] + <a class="el" href="Easy_8h.html#abb08d90dc40063dbc1ad530a96a1b5d9">arraySize</a>(A))</td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="Easy_8h_source.html#l00042">42</a> of file <a class="el" href="Easy_8h_source.html">Easy.h</a>.</p> </div> </div> <a id="afe38b77334294e5f0f41c3225ef83dbe"></a> <h2 class="memtitle"><span class="permalink"><a href="#afe38b77334294e5f0f41c3225ef83dbe">◆ </a></span>defConstStr</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define defConstStr</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">FNC, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">STR </td> </tr> <tr> <td></td> <td>)</td> <td></td><td>   inline const std::string & FNC { static const std::string val( STR ); return val; }</td> </tr> </table> </div><div class="memdoc"> <div class="fragment"><div class="line"><a class="code" href="Easy_8h.html#afe38b77334294e5f0f41c3225ef83dbe">defConstStr</a>( strANY(), <span class="stringliteral">"ANY"</span> );</div><div class="line">std::str <a class="code" href="namespacestr.html">str</a> = strANY();</div></div><!-- fragment --> <p class="definition">Definition at line <a class="el" href="Easy_8h_source.html#l00050">50</a> of file <a class="el" href="Easy_8h_source.html">Easy.h</a>.</p> </div> </div> <a id="adbba0f726fc66d7100916c683b7568ae"></a> <h2 class="memtitle"><span class="permalink"><a href="#adbba0f726fc66d7100916c683b7568ae">◆ </a></span>GCC_VERSION</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define GCC_VERSION   (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__)</td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="Easy_8h_source.html#l00052">52</a> of file <a class="el" href="Easy_8h_source.html">Easy.h</a>.</p> </div> </div> <a id="ab979d9d4b4923f7c54d6caa6e1a61936"></a> <h2 class="memtitle"><span class="permalink"><a href="#ab979d9d4b4923f7c54d6caa6e1a61936">◆ </a></span>nullptr</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define nullptr   NULL</td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="Easy_8h_source.html#l00054">54</a> of file <a class="el" href="Easy_8h_source.html">Easy.h</a>.</p> </div> </div> <a id="a21cf67b80be4e286a7e86e055341b67d"></a> <h2 class="memtitle"><span class="permalink"><a href="#a21cf67b80be4e286a7e86e055341b67d">◆ </a></span>NON_COPYABLE</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define NON_COPYABLE</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">CLASS</td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <b>Value:</b><div class="fragment"><div class="line">CLASS( <span class="keyword">const</span> CLASS & ) = <span class="keyword">delete</span>; \</div><div class="line"> CLASS & operator=( <span class="keyword">const</span> CLASS & ) = <span class="keyword">delete</span></div></div><!-- fragment --> <p>Delete copy ctor and copy assign. </p> <p class="definition">Definition at line <a class="el" href="Easy_8h_source.html#l00058">58</a> of file <a class="el" href="Easy_8h_source.html">Easy.h</a>.</p> </div> </div> <a id="a0567f843037be2b69f1d021ba8ae18f8"></a> <h2 class="memtitle"><span class="permalink"><a href="#a0567f843037be2b69f1d021ba8ae18f8">◆ </a></span>DEFAULT_COPYABLE</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define DEFAULT_COPYABLE</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">CLASS</td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <b>Value:</b><div class="fragment"><div class="line">CLASS( <span class="keyword">const</span> CLASS & ) = <span class="keywordflow">default</span>; \</div><div class="line"> CLASS & operator=( <span class="keyword">const</span> CLASS & ) = <span class="keywordflow">default</span></div></div><!-- fragment --> <p>Default copy ctor and copy assign. </p> <p class="definition">Definition at line <a class="el" href="Easy_8h_source.html#l00063">63</a> of file <a class="el" href="Easy_8h_source.html">Easy.h</a>.</p> </div> </div> <a id="af37d5ea5e279e14de6189c881896a818"></a> <h2 class="memtitle"><span class="permalink"><a href="#af37d5ea5e279e14de6189c881896a818">◆ </a></span>NON_MOVABLE</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define NON_MOVABLE</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">CLASS</td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <b>Value:</b><div class="fragment"><div class="line">CLASS( CLASS && ) = <span class="keyword">delete</span>; \</div><div class="line"> CLASS & operator=( CLASS && ) = <span class="keyword">delete</span></div></div><!-- fragment --> <p>Delete move ctor and move assign. </p> <p class="definition">Definition at line <a class="el" href="Easy_8h_source.html#l00069">69</a> of file <a class="el" href="Easy_8h_source.html">Easy.h</a>.</p> </div> </div> <a id="a7f88d3c54d8afed6d95d67ca8210603d"></a> <h2 class="memtitle"><span class="permalink"><a href="#a7f88d3c54d8afed6d95d67ca8210603d">◆ </a></span>DEFAULT_MOVABLE</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define DEFAULT_MOVABLE</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">CLASS</td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <b>Value:</b><div class="fragment"><div class="line">CLASS( CLASS && ) = <span class="keywordflow">default</span>; \</div><div class="line"> CLASS & operator=( CLASS && ) = <span class="keywordflow">default</span></div></div><!-- fragment --> <p>Default move ctor and move assign. </p> <p class="definition">Definition at line <a class="el" href="Easy_8h_source.html#l00074">74</a> of file <a class="el" href="Easy_8h_source.html">Easy.h</a>.</p> </div> </div> <a id="a80afdbc73e6244f136c2fb4bc3b2fc76"></a> <h2 class="memtitle"><span class="permalink"><a href="#a80afdbc73e6244f136c2fb4bc3b2fc76">◆ </a></span>NON_COPYABLE_BUT_MOVE</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define NON_COPYABLE_BUT_MOVE</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">CLASS</td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <b>Value:</b><div class="fragment"><div class="line"><a class="code" href="Easy_8h.html#a21cf67b80be4e286a7e86e055341b67d">NON_COPYABLE</a>(CLASS); \</div><div class="line"> DEFAULT_MOVABLE(CLASS)</div><div class="ttc" id="Easy_8h_html_a21cf67b80be4e286a7e86e055341b67d"><div class="ttname"><a href="Easy_8h.html#a21cf67b80be4e286a7e86e055341b67d">NON_COPYABLE</a></div><div class="ttdeci">#define NON_COPYABLE(CLASS)</div><div class="ttdoc">Delete copy ctor and copy assign.</div><div class="ttdef"><b>Definition:</b> <a href="Easy_8h_source.html#l00058">Easy.h:58</a></div></div> </div><!-- fragment --> <p>Delete copy ctor and copy assign but enable default move. </p> <p class="definition">Definition at line <a class="el" href="Easy_8h_source.html#l00083">83</a> of file <a class="el" href="Easy_8h_source.html">Easy.h</a>.</p> </div> </div> <a id="a03714e2a975a2f53a0be6fc48e4d50a2"></a> <h2 class="memtitle"><span class="permalink"><a href="#a03714e2a975a2f53a0be6fc48e4d50a2">◆ </a></span>NON_MOVABLE_BUT_COPY</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define NON_MOVABLE_BUT_COPY</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">CLASS</td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <b>Value:</b><div class="fragment"><div class="line"><a class="code" href="Easy_8h.html#af37d5ea5e279e14de6189c881896a818">NON_MOVABLE</a>(CLASS); \</div><div class="line"> DEFAULT_COPYABLE(CLASS)</div><div class="ttc" id="Easy_8h_html_af37d5ea5e279e14de6189c881896a818"><div class="ttname"><a href="Easy_8h.html#af37d5ea5e279e14de6189c881896a818">NON_MOVABLE</a></div><div class="ttdeci">#define NON_MOVABLE(CLASS)</div><div class="ttdoc">Delete move ctor and move assign.</div><div class="ttdef"><b>Definition:</b> <a href="Easy_8h_source.html#l00069">Easy.h:69</a></div></div> </div><!-- fragment --> <p>Default move ctor and move assign but enable default copy. </p> <p class="definition">Definition at line <a class="el" href="Easy_8h_source.html#l00088">88</a> of file <a class="el" href="Easy_8h_source.html">Easy.h</a>.</p> </div> </div> </div><!-- contents --> </div><!-- doc-content --> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> <ul> <li class="navelem"><a class="el" href="dir_c187b43c6f283d9fc95eff3f44ce072a.html">zypp</a></li><li class="navelem"><a class="el" href="dir_76651d3a0256a4372f696a008d71ee69.html">base</a></li><li class="navelem"><a class="el" href="Easy_8h.html">Easy.h</a></li> <li class="footer">Generated by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.15 </li> </ul> </div> </body> </html>