Imported Upstream version 2.99.2
[platform/upstream/libsigc++.git] / docs / reference / html / structsigc_1_1compose1__functor.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns="http://www.w3.org/1999/xhtml">
3 <head>
4 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5 <meta http-equiv="X-UA-Compatible" content="IE=9"/>
6 <meta name="generator" content="Doxygen 1.8.9.1"/>
7 <title>libsigc++: sigc::compose1_functor&lt; T_setter, T_getter &gt; Struct Template Reference</title>
8 <link href="tabs.css" rel="stylesheet" type="text/css"/>
9 <script type="text/javascript" src="jquery.js"></script>
10 <script type="text/javascript" src="dynsections.js"></script>
11 <link href="doxygen.css" rel="stylesheet" type="text/css" />
12 <link href="doxygen-extra.css" rel="stylesheet" type="text/css"/>
13 </head>
14 <body>
15 <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
16 <div id="titlearea">
17 <table cellspacing="0" cellpadding="0">
18  <tbody>
19  <tr style="height: 56px;">
20   <td style="padding-left: 0.5em;">
21    <div id="projectname">libsigc++
22    &#160;<span id="projectnumber">2.99.2</span>
23    </div>
24   </td>
25  </tr>
26  </tbody>
27 </table>
28 </div>
29 <!-- end header part -->
30 <!-- Generated by Doxygen 1.8.9.1 -->
31   <div id="navrow1" class="tabs">
32     <ul class="tablist">
33       <li><a href="index.html"><span>Main&#160;Page</span></a></li>
34       <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
35       <li><a href="modules.html"><span>Modules</span></a></li>
36       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
37       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
38     </ul>
39   </div>
40   <div id="navrow2" class="tabs2">
41     <ul class="tablist">
42       <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
43       <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
44       <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
45       <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
46     </ul>
47   </div>
48 <div id="nav-path" class="navpath">
49   <ul>
50 <li class="navelem"><a class="el" href="namespacesigc.html">sigc</a></li><li class="navelem"><a class="el" href="structsigc_1_1compose1__functor.html">compose1_functor</a></li>  </ul>
51 </div>
52 </div><!-- top -->
53 <div class="header">
54   <div class="summary">
55 <a href="#pub-types">Public Types</a> &#124;
56 <a href="#pub-methods">Public Member Functions</a> &#124;
57 <a href="#pub-attribs">Public Attributes</a> &#124;
58 <a href="structsigc_1_1compose1__functor-members.html">List of all members</a>  </div>
59   <div class="headertitle">
60 <div class="title">sigc::compose1_functor&lt; T_setter, T_getter &gt; Struct Template Reference<div class="ingroups"><a class="el" href="group__adaptors.html">Adaptors</a> &raquo; <a class="el" href="group__compose.html">compose()</a></div></div>  </div>
61 </div><!--header-->
62 <div class="contents">
63
64 <p>Adaptor that combines two functors.  
65  <a href="structsigc_1_1compose1__functor.html#details">More...</a></p>
66
67 <p><code>#include &lt;sigc++/adaptors/compose.h&gt;</code></p>
68 <div class="dynheader">
69 Inheritance diagram for sigc::compose1_functor&lt; T_setter, T_getter &gt;:</div>
70 <div class="dyncontent">
71 <div class="center"><img src="structsigc_1_1compose1__functor__inherit__graph.png" border="0" usemap="#sigc_1_1compose1__functor_3_01T__setter_00_01T__getter_01_4_inherit__map" alt="Inheritance graph"/></div>
72 <map name="sigc_1_1compose1__functor_3_01T__setter_00_01T__getter_01_4_inherit__map" id="sigc_1_1compose1__functor_3_01T__setter_00_01T__getter_01_4_inherit__map">
73 <area shape="rect" id="node2" href="structsigc_1_1adapts.html" title="sigc::adapts\&lt; T_setter \&gt;" alt="" coords="5,155,187,181"/><area shape="rect" id="node3" href="structsigc_1_1adaptor__base.html" title="A hint to the compiler. " alt="" coords="25,80,167,107"/><area shape="rect" id="node4" href="structsigc_1_1functor__base.html" title="A hint to the compiler. " alt="" coords="27,5,165,32"/></map>
74 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
75 <table class="memberdecls">
76 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
77 Public Types</h2></td></tr>
78 <tr class="memitem:aebc7b32926c215a7786866d290bbc301"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsigc_1_1compose1__functor.html#aebc7b32926c215a7786866d290bbc301">adaptor_type</a> = typename <a class="el" href="structsigc_1_1adapts.html">adapts</a>&lt; T_setter &gt;::<a class="el" href="structsigc_1_1compose1__functor.html#aebc7b32926c215a7786866d290bbc301">adaptor_type</a></td></tr>
79 <tr class="separator:aebc7b32926c215a7786866d290bbc301"><td class="memSeparator" colspan="2">&#160;</td></tr>
80 <tr class="memitem:ae7a961401a71b60eedca11157de55fc0"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsigc_1_1compose1__functor.html#ae7a961401a71b60eedca11157de55fc0">getter_type</a> = T_getter</td></tr>
81 <tr class="separator:ae7a961401a71b60eedca11157de55fc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
82 <tr class="memitem:aedc6b577f320b08eb9a087494961edb5"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsigc_1_1compose1__functor.html#aedc6b577f320b08eb9a087494961edb5">result_type</a> = typename adaptor_type::result_type</td></tr>
83 <tr class="separator:aedc6b577f320b08eb9a087494961edb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
84 <tr class="memitem:abab9dd3ad04a4ecb007dec3356d5c79e"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsigc_1_1compose1__functor.html#abab9dd3ad04a4ecb007dec3356d5c79e">setter_type</a> = T_setter</td></tr>
85 <tr class="separator:abab9dd3ad04a4ecb007dec3356d5c79e"><td class="memSeparator" colspan="2">&#160;</td></tr>
86 <tr class="inherit_header pub_types_structsigc_1_1adapts"><td colspan="2" onclick="javascript:toggleInherit('pub_types_structsigc_1_1adapts')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="structsigc_1_1adapts.html">sigc::adapts&lt; T_setter &gt;</a></td></tr>
87 <tr class="memitem:a944f414e6d1a98cf42aa48e82b52a079 inherit pub_types_structsigc_1_1adapts"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsigc_1_1adapts.html#a944f414e6d1a98cf42aa48e82b52a079">adaptor_type</a> = typename <a class="el" href="structsigc_1_1adaptor__trait.html">adaptor_trait</a>&lt; T_setter &gt;::<a class="el" href="structsigc_1_1adapts.html#a944f414e6d1a98cf42aa48e82b52a079">adaptor_type</a></td></tr>
88 <tr class="separator:a944f414e6d1a98cf42aa48e82b52a079 inherit pub_types_structsigc_1_1adapts"><td class="memSeparator" colspan="2">&#160;</td></tr>
89 <tr class="memitem:a4514810fc2ec4e274748d8970a7052e2 inherit pub_types_structsigc_1_1adapts"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsigc_1_1adapts.html#a4514810fc2ec4e274748d8970a7052e2">result_type</a> = typename <a class="el" href="structsigc_1_1adaptor__trait.html">adaptor_trait</a>&lt; T_setter &gt;::<a class="el" href="structsigc_1_1adapts.html#a4514810fc2ec4e274748d8970a7052e2">result_type</a></td></tr>
90 <tr class="separator:a4514810fc2ec4e274748d8970a7052e2 inherit pub_types_structsigc_1_1adapts"><td class="memSeparator" colspan="2">&#160;</td></tr>
91 </table><table class="memberdecls">
92 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
93 Public Member Functions</h2></td></tr>
94 <tr class="memitem:a1bb831ebfb46a214a6ffda98e77ad044"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsigc_1_1compose1__functor.html#a1bb831ebfb46a214a6ffda98e77ad044">compose1_functor</a> (const T_setter&amp; _A_setter, const T_getter&amp; _A_getter)</td></tr>
95 <tr class="memdesc:a1bb831ebfb46a214a6ffda98e77ad044"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a <a class="el" href="structsigc_1_1compose1__functor.html" title="Adaptor that combines two functors. ">compose1_functor</a> object that combines the passed functors.  <a href="#a1bb831ebfb46a214a6ffda98e77ad044">More...</a><br /></td></tr>
96 <tr class="separator:a1bb831ebfb46a214a6ffda98e77ad044"><td class="memSeparator" colspan="2">&#160;</td></tr>
97 <tr class="memitem:aef2936bffad958b68d3f6a9bb1c54568"><td class="memItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsigc_1_1compose1__functor.html#aef2936bffad958b68d3f6a9bb1c54568">operator()</a> ()</td></tr>
98 <tr class="separator:aef2936bffad958b68d3f6a9bb1c54568"><td class="memSeparator" colspan="2">&#160;</td></tr>
99 <tr class="memitem:a18cfb096dec206bca811ce1b098064bf"><td class="memTemplParams" colspan="2">template&lt;class... T_arg&gt; </td></tr>
100 <tr class="memitem:a18cfb096dec206bca811ce1b098064bf"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structsigc_1_1compose1__functor.html#a18cfb096dec206bca811ce1b098064bf">operator()</a> (T_arg&amp;&amp;..._A_a)</td></tr>
101 <tr class="separator:a18cfb096dec206bca811ce1b098064bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
102 <tr class="inherit_header pub_methods_structsigc_1_1adapts"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_structsigc_1_1adapts')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="structsigc_1_1adapts.html">sigc::adapts&lt; T_setter &gt;</a></td></tr>
103 <tr class="memitem:a947b69ccbdcabd4ef4163dcab96096f8 inherit pub_methods_structsigc_1_1adapts"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsigc_1_1adapts.html#a947b69ccbdcabd4ef4163dcab96096f8">adapts</a> (const T_setter&amp; _A_functor)</td></tr>
104 <tr class="memdesc:a947b69ccbdcabd4ef4163dcab96096f8 inherit pub_methods_structsigc_1_1adapts"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs an adaptor that wraps the passed functor.  <a href="#a947b69ccbdcabd4ef4163dcab96096f8">More...</a><br /></td></tr>
105 <tr class="separator:a947b69ccbdcabd4ef4163dcab96096f8 inherit pub_methods_structsigc_1_1adapts"><td class="memSeparator" colspan="2">&#160;</td></tr>
106 </table><table class="memberdecls">
107 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
108 Public Attributes</h2></td></tr>
109 <tr class="memitem:abc9151caeb78b1cd79ce1eb6984dc066"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structsigc_1_1compose1__functor.html#ae7a961401a71b60eedca11157de55fc0">getter_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsigc_1_1compose1__functor.html#abc9151caeb78b1cd79ce1eb6984dc066">get_</a></td></tr>
110 <tr class="separator:abc9151caeb78b1cd79ce1eb6984dc066"><td class="memSeparator" colspan="2">&#160;</td></tr>
111 <tr class="inherit_header pub_attribs_structsigc_1_1adapts"><td colspan="2" onclick="javascript:toggleInherit('pub_attribs_structsigc_1_1adapts')"><img src="closed.png" alt="-"/>&#160;Public Attributes inherited from <a class="el" href="structsigc_1_1adapts.html">sigc::adapts&lt; T_setter &gt;</a></td></tr>
112 <tr class="memitem:a2f4b37eb160708baf17de57f2abce7a7 inherit pub_attribs_structsigc_1_1adapts"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structsigc_1_1adapts.html#a944f414e6d1a98cf42aa48e82b52a079">adaptor_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsigc_1_1adapts.html#a2f4b37eb160708baf17de57f2abce7a7">functor_</a></td></tr>
113 <tr class="memdesc:a2f4b37eb160708baf17de57f2abce7a7 inherit pub_attribs_structsigc_1_1adapts"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adaptor that is invoked from operator()().  <a href="#a2f4b37eb160708baf17de57f2abce7a7">More...</a><br /></td></tr>
114 <tr class="separator:a2f4b37eb160708baf17de57f2abce7a7 inherit pub_attribs_structsigc_1_1adapts"><td class="memSeparator" colspan="2">&#160;</td></tr>
115 </table>
116 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
117 <div class="textblock"><h3>template&lt;class T_setter, class T_getter&gt;<br />
118 struct sigc::compose1_functor&lt; T_setter, T_getter &gt;</h3>
119
120 <p>Adaptor that combines two functors. </p>
121 <p>Use the convenience function <a class="el" href="group__compose.html#ga34cf5da8f6323bfdc41bc7113d6ad20a" title="Creates an adaptor of type sigc::compose1_functor which combines two functors. ">sigc::compose()</a> to create an instance of <a class="el" href="structsigc_1_1compose1__functor.html" title="Adaptor that combines two functors. ">sigc::compose1_functor</a>.</p>
122 <p>The following template arguments are used:</p><ul>
123 <li><em>T_setter</em> Type of the setter functor to wrap.</li>
124 <li><em>T_getter</em> Type of the getter functor to wrap. </li>
125 </ul>
126 </div><h2 class="groupheader">Member Typedef Documentation</h2>
127 <a class="anchor" id="aebc7b32926c215a7786866d290bbc301"></a>
128 <div class="memitem">
129 <div class="memproto">
130 <div class="memtemplate">
131 template &lt;class T_setter , class T_getter &gt; </div>
132       <table class="memname">
133         <tr>
134           <td class="memname">using <a class="el" href="structsigc_1_1compose1__functor.html">sigc::compose1_functor</a>&lt; T_setter, T_getter &gt;::<a class="el" href="structsigc_1_1compose1__functor.html#aebc7b32926c215a7786866d290bbc301">adaptor_type</a> =  typename <a class="el" href="structsigc_1_1adapts.html">adapts</a>&lt;T_setter&gt;::<a class="el" href="structsigc_1_1compose1__functor.html#aebc7b32926c215a7786866d290bbc301">adaptor_type</a></td>
135         </tr>
136       </table>
137 </div><div class="memdoc">
138
139 </div>
140 </div>
141 <a class="anchor" id="ae7a961401a71b60eedca11157de55fc0"></a>
142 <div class="memitem">
143 <div class="memproto">
144 <div class="memtemplate">
145 template &lt;class T_setter , class T_getter &gt; </div>
146       <table class="memname">
147         <tr>
148           <td class="memname">using <a class="el" href="structsigc_1_1compose1__functor.html">sigc::compose1_functor</a>&lt; T_setter, T_getter &gt;::<a class="el" href="structsigc_1_1compose1__functor.html#ae7a961401a71b60eedca11157de55fc0">getter_type</a> =  T_getter</td>
149         </tr>
150       </table>
151 </div><div class="memdoc">
152
153 </div>
154 </div>
155 <a class="anchor" id="aedc6b577f320b08eb9a087494961edb5"></a>
156 <div class="memitem">
157 <div class="memproto">
158 <div class="memtemplate">
159 template &lt;class T_setter , class T_getter &gt; </div>
160       <table class="memname">
161         <tr>
162           <td class="memname">using <a class="el" href="structsigc_1_1compose1__functor.html">sigc::compose1_functor</a>&lt; T_setter, T_getter &gt;::<a class="el" href="structsigc_1_1compose1__functor.html#aedc6b577f320b08eb9a087494961edb5">result_type</a> =  typename adaptor_type::result_type</td>
163         </tr>
164       </table>
165 </div><div class="memdoc">
166
167 </div>
168 </div>
169 <a class="anchor" id="abab9dd3ad04a4ecb007dec3356d5c79e"></a>
170 <div class="memitem">
171 <div class="memproto">
172 <div class="memtemplate">
173 template &lt;class T_setter , class T_getter &gt; </div>
174       <table class="memname">
175         <tr>
176           <td class="memname">using <a class="el" href="structsigc_1_1compose1__functor.html">sigc::compose1_functor</a>&lt; T_setter, T_getter &gt;::<a class="el" href="structsigc_1_1compose1__functor.html#abab9dd3ad04a4ecb007dec3356d5c79e">setter_type</a> =  T_setter</td>
177         </tr>
178       </table>
179 </div><div class="memdoc">
180
181 </div>
182 </div>
183 <h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
184 <a class="anchor" id="a1bb831ebfb46a214a6ffda98e77ad044"></a>
185 <div class="memitem">
186 <div class="memproto">
187 <div class="memtemplate">
188 template &lt;class T_setter , class T_getter &gt; </div>
189 <table class="mlabels">
190   <tr>
191   <td class="mlabels-left">
192       <table class="memname">
193         <tr>
194           <td class="memname"><a class="el" href="structsigc_1_1compose1__functor.html">sigc::compose1_functor</a>&lt; T_setter, T_getter &gt;::<a class="el" href="structsigc_1_1compose1__functor.html">compose1_functor</a> </td>
195           <td>(</td>
196           <td class="paramtype">const T_setter &amp;&#160;</td>
197           <td class="paramname"><em>_A_setter</em>, </td>
198         </tr>
199         <tr>
200           <td class="paramkey"></td>
201           <td></td>
202           <td class="paramtype">const T_getter &amp;&#160;</td>
203           <td class="paramname"><em>_A_getter</em>&#160;</td>
204         </tr>
205         <tr>
206           <td></td>
207           <td>)</td>
208           <td></td><td></td>
209         </tr>
210       </table>
211   </td>
212   <td class="mlabels-right">
213 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
214   </tr>
215 </table>
216 </div><div class="memdoc">
217
218 <p>Constructs a <a class="el" href="structsigc_1_1compose1__functor.html" title="Adaptor that combines two functors. ">compose1_functor</a> object that combines the passed functors. </p>
219 <dl class="params"><dt>Parameters</dt><dd>
220   <table class="params">
221     <tr><td class="paramname">_A_setter</td><td>Functor that receives the return values of the invokation of <em>_A_getter1</em> and <em>_A_getter2</em>. </td></tr>
222     <tr><td class="paramname">_A_getter</td><td>Functor to invoke from <a class="el" href="structsigc_1_1compose1__functor.html#aef2936bffad958b68d3f6a9bb1c54568">operator()()</a>. </td></tr>
223   </table>
224   </dd>
225 </dl>
226
227 </div>
228 </div>
229 <h2 class="groupheader">Member Function Documentation</h2>
230 <a class="anchor" id="aef2936bffad958b68d3f6a9bb1c54568"></a>
231 <div class="memitem">
232 <div class="memproto">
233 <div class="memtemplate">
234 template &lt;class T_setter , class T_getter &gt; </div>
235 <table class="mlabels">
236   <tr>
237   <td class="mlabels-left">
238       <table class="memname">
239         <tr>
240           <td class="memname">decltype(auto) <a class="el" href="structsigc_1_1compose1__functor.html">sigc::compose1_functor</a>&lt; T_setter, T_getter &gt;::operator() </td>
241           <td>(</td>
242           <td class="paramname"></td><td>)</td>
243           <td></td>
244         </tr>
245       </table>
246   </td>
247   <td class="mlabels-right">
248 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
249   </tr>
250 </table>
251 </div><div class="memdoc">
252
253 </div>
254 </div>
255 <a class="anchor" id="a18cfb096dec206bca811ce1b098064bf"></a>
256 <div class="memitem">
257 <div class="memproto">
258 <div class="memtemplate">
259 template &lt;class T_setter , class T_getter &gt; </div>
260 <div class="memtemplate">
261 template &lt;class... T_arg&gt; </div>
262 <table class="mlabels">
263   <tr>
264   <td class="mlabels-left">
265       <table class="memname">
266         <tr>
267           <td class="memname">decltype(auto) <a class="el" href="structsigc_1_1compose1__functor.html">sigc::compose1_functor</a>&lt; T_setter, T_getter &gt;::operator() </td>
268           <td>(</td>
269           <td class="paramtype">T_arg &amp;&amp;...&#160;</td>
270           <td class="paramname"><em>_A_a</em></td><td>)</td>
271           <td></td>
272         </tr>
273       </table>
274   </td>
275   <td class="mlabels-right">
276 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
277   </tr>
278 </table>
279 </div><div class="memdoc">
280
281 </div>
282 </div>
283 <h2 class="groupheader">Member Data Documentation</h2>
284 <a class="anchor" id="abc9151caeb78b1cd79ce1eb6984dc066"></a>
285 <div class="memitem">
286 <div class="memproto">
287 <div class="memtemplate">
288 template &lt;class T_setter , class T_getter &gt; </div>
289       <table class="memname">
290         <tr>
291           <td class="memname"><a class="el" href="structsigc_1_1compose1__functor.html#ae7a961401a71b60eedca11157de55fc0">getter_type</a> <a class="el" href="structsigc_1_1compose1__functor.html">sigc::compose1_functor</a>&lt; T_setter, T_getter &gt;::get_</td>
292         </tr>
293       </table>
294 </div><div class="memdoc">
295
296 </div>
297 </div>
298 </div><!-- contents -->
299 <!-- start footer part -->
300 <hr class="footer"/><address class="footer"><small>
301 Generated on Wed Mar 16 2016 20:53:28 for libsigc++ by &#160;<a href="http://www.doxygen.org/index.html">
302 <img class="footer" src="doxygen.png" alt="doxygen"/>
303 </a> 1.8.9.1
304 </small></address>
305 </body>
306 </html>