2007-02-15 23:11:24 +00:00
< html >
< head >
< meta http-equiv = "Content-Type" content = "text/html; charset=ISO-8859-1" >
< title > Functions< / title >
< link rel = "stylesheet" href = "../../../boostbook.css" type = "text/css" >
< meta name = "generator" content = "DocBook XSL Stylesheets V1.68.1" >
< link rel = "start" href = "../../../index.html" title = "Chapter<65> 1.<2E> Fusion 2.0" >
< link rel = "up" href = "../generation.html" title = "Generation" >
< link rel = "prev" href = "../generation.html" title = "Generation" >
2007-02-25 21:12:10 +00:00
< link rel = "next" href = "metafunctions.html" title = "Metafunctions" >
2007-02-15 23:11:24 +00:00
< / head >
< body bgcolor = "white" text = "black" link = "#0000FF" vlink = "#840084" alink = "#0000FF" >
< table cellpadding = "2" width = "100%" >
< td valign = "top" > < img alt = "Boost C++ Libraries" width = "277" height = "86" src = "../../../../../../../boost.png" > < / td >
< td align = "center" > < a href = "../../../../../../../index.htm" > Home< / a > < / td >
< td align = "center" > < a href = "../../../../../../libraries.htm" > Libraries< / a > < / td >
< td align = "center" > < a href = "../../../../../../../people/people.htm" > People< / a > < / td >
< td align = "center" > < a href = "../../../../../../../more/faq.htm" > FAQ< / a > < / td >
< td align = "center" > < a href = "../../../../../../../more/index.htm" > More< / a > < / td >
< / table >
< hr >
< div class = "spirit-nav" >
2007-02-25 21:12:10 +00:00
< a accesskey = "p" href = "../generation.html" > < img src = "../../../images/prev.png" alt = "Prev" > < / a > < a accesskey = "u" href = "../generation.html" > < img src = "../../../images/up.png" alt = "Up" > < / a > < a accesskey = "h" href = "../../../index.html" > < img src = "../../../images/home.png" alt = "Home" > < / a > < a accesskey = "n" href = "metafunctions.html" > < img src = "../../../images/next.png" alt = "Next" > < / a >
2007-02-15 23:11:24 +00:00
< / div >
< div class = "section" lang = "en" >
< div class = "titlepage" > < div > < div > < h4 class = "title" >
< a name = "fusion.functional.generation.functions" > < / a > < a href = "functions.html" title = "Functions" > Functions< / a > < / h4 > < / div > < / div > < / div >
< div class = "toc" > < dl >
2007-02-25 21:12:10 +00:00
< dt > < span class = "section" > < a href = "functions.html#fusion.functional.generation.functions.make_fused" > make_fused< / a > < / span > < / dt >
< dt > < span class = "section" > < a href = "functions.html#fusion.functional.generation.functions.make_fused_procedure" > make_fused_procedure< / a > < / span > < / dt >
< dt > < span class = "section" > < a href = "functions.html#fusion.functional.generation.functions.make_fused_function_object" > make_fused_function_object< / a > < / span > < / dt >
< dt > < span class = "section" > < a href = "functions.html#fusion.functional.generation.functions.make_unfused_generic" > make_unfused_generic< / a > < / span > < / dt >
< dt > < span class = "section" > < a href = "functions.html#fusion.functional.generation.functions.make_unfused_lvalue_args" > make_unfused_lvalue_args< / a > < / span > < / dt >
< dt > < span class = "section" > < a href = "functions.html#fusion.functional.generation.functions.make_unfused_rvalue_args" > make_unfused_rvalue_args< / a > < / span > < / dt >
2007-02-15 23:11:24 +00:00
< / dl > < / div >
2007-02-25 21:12:10 +00:00
< div class = "section" lang = "en" >
< div class = "titlepage" > < div > < div > < h5 class = "title" >
< a name = "fusion.functional.generation.functions.make_fused" > < / a > < a href = "functions.html#fusion.functional.generation.functions.make_fused" title = "make_fused" > make_fused< / a > < / h5 > < / div > < / div > < / div >
< a name = "fusion.functional.generation.functions.make_fused.description" > < / a > < h6 >
< a name = "id1220368" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_fused.description" > Description< / a >
< / h6 >
< p >
Creates a < a href = "../adapters/fused.html" title = "fused" > < code class = "computeroutput" > < span class = "identifier" > fused< / span > < / code > < / a > adapter for a given < a href = "../concepts/def_callable.html" title = " Deferred
Callable Object">Deferred Callable Object< / a > .
The usual < a href = "../../notes.html#fusion.notes.element_conversion" > < span class = "emphasis" > < em > element
conversion< / em > < / span > < / a > is applied to the target function.
< / p >
< a name = "fusion.functional.generation.functions.make_fused.synopsis" > < / a > < h6 >
< a name = "id1220428" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_fused.synopsis" > Synopsis< / a >
< / h6 >
< pre class = "programlisting" >
< span class = "keyword" > template< / span > < span class = "special" > < < / span > < span class = "keyword" > typename< / span > < span class = "identifier" > F< / span > < span class = "special" > > < / span >
< span class = "keyword" > inline< / span > < span class = "keyword" > typename< / span > < a href = "metafunctions.html#fusion.functional.generation.metafunctions.make_fused" title = "make_fused" > < code class = "computeroutput" > < span class = "identifier" > make_fused< / span > < / code > < / a > < span class = "special" > < < / span > < span class = "identifier" > F< / span > < span class = "special" > > ::< / span > < span class = "identifier" > type< / span >
< span class = "identifier" > make_fused< / span > < span class = "special" > (< / span > < span class = "identifier" > F< / span > < span class = "keyword" > const< / span > < span class = "special" > & < / span > < span class = "identifier" > f< / span > < span class = "special" > );< / span >
< / pre >
< a name = "fusion.functional.generation.functions.make_fused.parameters" > < / a > < h6 >
< a name = "id1220562" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_fused.parameters" > Parameters< / a >
< / h6 >
< div class = "informaltable" > < table class = "table" >
< colgroup >
< col >
< col >
< col >
< / colgroup >
< thead > < tr >
< th > Parameter< / th >
< th > Requirement< / th >
< th > Description< / th >
< / tr > < / thead >
< tbody > < tr >
< td > < code class = "computeroutput" > < span class = "identifier" > f< / span > < / code > < / td >
< td > Model
of < a href = "../concepts/def_callable.html" title = " Deferred
Callable Object">Deferred
Callable Object< / a >
< / td >
< td > The function to transform.< / td >
< / tr > < / tbody >
< / table > < / div >
< a name = "fusion.functional.generation.functions.make_fused.expression_semantics" > < / a > < h6 >
< a name = "id1220641" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_fused.expression_semantics" > Expression
Semantics< / a >
< / h6 >
< pre class = "programlisting" >
< span class = "identifier" > make_fused< / span > < span class = "special" > (< / span > < span class = "identifier" > f< / span > < span class = "special" > );< / span >
< / pre >
< p >
< span class = "bold" > < strong > Return type< / strong > < / span > : A specialization of < a href = "../adapters/fused.html" title = "fused" > < code class = "computeroutput" > < span class = "identifier" > fused< / span > < / code > < / a > .
< / p >
< p >
< span class = "bold" > < strong > Semantics< / strong > < / span > : Returns a < a href = "../adapters/fused.html" title = "fused" > < code class = "computeroutput" > < span class = "identifier" > fused< / span > < / code > < / a > adapter for < code class = "computeroutput" > < span class = "identifier" > f< / span > < / code > .
< / p >
< a name = "fusion.functional.generation.functions.make_fused.header" > < / a > < h6 >
< a name = "id1220745" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_fused.header" > Header< / a >
< / h6 >
< pre class = "programlisting" >
< span class = "preprocessor" > #include< / span > < span class = "special" > < < / span > < span class = "identifier" > boost< / span > < span class = "special" > /< / span > < span class = "identifier" > fusion< / span > < span class = "special" > /< / span > < span class = "identifier" > functional< / span > < span class = "special" > /< / span > < span class = "identifier" > generation< / span > < span class = "special" > /< / span > < span class = "identifier" > make_fused< / span > < span class = "special" > .< / span > < span class = "identifier" > hpp< / span > < span class = "special" > > < / span >
< / pre >
< a name = "fusion.functional.generation.functions.make_fused.example" > < / a > < h6 >
< a name = "id1220837" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_fused.example" > Example< / a >
< / h6 >
< pre class = "programlisting" >
< span class = "keyword" > float< / span > < span class = "identifier" > sub< / span > < span class = "special" > (< / span > < span class = "keyword" > float< / span > < span class = "identifier" > a< / span > < span class = "special" > ,< / span > < span class = "keyword" > float< / span > < span class = "identifier" > b< / span > < span class = "special" > )< / span > < span class = "special" > {< / span > < span class = "keyword" > return< / span > < span class = "identifier" > a< / span > < span class = "special" > -< / span > < span class = "identifier" > b< / span > < span class = "special" > ;< / span > < span class = "special" > }< / span >
< span class = "keyword" > void< / span > < span class = "identifier" > try_it< / span > < span class = "special" > ()< / span >
< span class = "special" > {< / span >
< a href = "../../sequences/containers/vector.html" title = "vector" > < code class = "computeroutput" > < span class = "identifier" > vector< / span > < / code > < / a > < span class = "special" > < < / span > < span class = "keyword" > int< / span > < span class = "special" > ,< / span > < span class = "keyword" > float< / span > < span class = "special" > > < / span > < span class = "identifier" > a< / span > < span class = "special" > (< / span > < span class = "number" > 2< / span > < span class = "special" > ,< / span > < span class = "number" > 2.0f< / span > < span class = "special" > );< / span >
< a href = "../../sequences/containers/vector.html" title = "vector" > < code class = "computeroutput" > < span class = "identifier" > vector< / span > < / code > < / a > < span class = "special" > < < / span > < span class = "keyword" > int< / span > < span class = "special" > ,< / span > < span class = "keyword" > float< / span > < span class = "special" > > < / span > < span class = "identifier" > b< / span > < span class = "special" > (< / span > < span class = "number" > 1< / span > < span class = "special" > ,< / span > < span class = "number" > 1.5f< / span > < span class = "special" > );< / span >
< a href = "../../sequences/containers/vector.html" title = "vector" > < code class = "computeroutput" > < span class = "identifier" > vector< / span > < / code > < / a > < span class = "special" > < < / span > < span class = "keyword" > float< / span > < span class = "special" > ,< / span > < span class = "keyword" > float< / span > < span class = "special" > > < / span > < span class = "identifier" > c< / span > < span class = "special" > (< / span > < span class = "number" > 1.0f< / span > < span class = "special" > ,< / span > < span class = "number" > 0.5f< / span > < span class = "special" > );< / span >
< span class = "identifier" > assert< / span > < span class = "special" > (< / span > < span class = "identifier" > c< / span > < span class = "special" > ==< / span > < a href = "../../algorithms/transformation/functions.html#fusion.algorithms.transformation.functions.transform" title = "transform" > < code class = "computeroutput" > < span class = "identifier" > transform< / span > < / code > < / a > < span class = "special" > (< / span > < a href = "../../algorithms/transformation/functions.html#fusion.algorithms.transformation.functions.zip" title = "zip" > < code class = "computeroutput" > < span class = "identifier" > zip< / span > < / code > < / a > < span class = "special" > (< / span > < span class = "identifier" > a< / span > < span class = "special" > ,< / span > < span class = "identifier" > b< / span > < span class = "special" > ),< / span > < span class = "identifier" > make_fused< / span > < span class = "special" > (& < / span > < span class = "identifier" > sub< / span > < span class = "special" > )));< / span >
< span class = "identifier" > assert< / span > < span class = "special" > (< / span > < span class = "identifier" > c< / span > < span class = "special" > ==< / span > < a href = "../../algorithms/transformation/functions.html#fusion.algorithms.transformation.functions.transform" title = "transform" > < code class = "computeroutput" > < span class = "identifier" > transform< / span > < / code > < / a > < span class = "special" > (< / span > < a href = "../../algorithms/transformation/functions.html#fusion.algorithms.transformation.functions.zip" title = "zip" > < code class = "computeroutput" > < span class = "identifier" > zip< / span > < / code > < / a > < span class = "special" > (< / span > < span class = "identifier" > a< / span > < span class = "special" > ,< / span > < span class = "identifier" > b< / span > < span class = "special" > ),< / span > < span class = "identifier" > make_fused< / span > < span class = "special" > (< / span > < a href = "http://www.sgi.com/tech/stl/minus.html" target = "_top" > < code class = "computeroutput" > < span class = "identifier" > std< / span > < span class = "special" > ::< / span > < span class = "identifier" > minus< / span > < / code > < / a > < span class = "special" > < < / span > < span class = "keyword" > float< / span > < span class = "special" > > ())));< / span >
< span class = "special" > }< / span >
< / pre >
< a name = "fusion.functional.generation.functions.make_fused.see_also" > < / a > < h6 >
< a name = "id1221372" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_fused.see_also" > See
also< / a >
< / h6 >
< div class = "itemizedlist" > < ul type = "disc" >
< li > < a href = "../adapters/fused.html" title = "fused" > < code class = "computeroutput" > < span class = "identifier" > fused< / span > < / code > < / a > < / li >
< li > < a href = "../../support/deduce.html" title = "deduce" > < code class = "computeroutput" > < span class = "identifier" > deduce< / span > < / code > < / a > < / li >
< li > < a href = "metafunctions.html#fusion.functional.generation.metafunctions.make_fused" title = "make_fused" > < code class = "computeroutput" > < span class = "identifier" > make_fused< / span > < / code > < / a > < / li >
< / ul > < / div >
< / div >
< div class = "section" lang = "en" >
< div class = "titlepage" > < div > < div > < h5 class = "title" >
< a name = "fusion.functional.generation.functions.make_fused_procedure" > < / a > < a href = "functions.html#fusion.functional.generation.functions.make_fused_procedure" title = "make_fused_procedure" > make_fused_procedure< / a > < / h5 > < / div > < / div > < / div >
< a name = "fusion.functional.generation.functions.make_fused_procedure.description" > < / a > < h6 >
< a name = "id1221473" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_fused_procedure.description" > Description< / a >
< / h6 >
< p >
Creates a < a href = "../adapters/fused_procedure.html" title = "fused_procedure" > < code class = "computeroutput" > < span class = "identifier" > fused_procedure< / span > < / code > < / a > adapter for
a given < a href = "../concepts/def_callable.html" title = " Deferred
Callable Object">Deferred
Callable Object< / a > . The usual < a href = "../../notes.html#fusion.notes.element_conversion" > < span class = "emphasis" > < em > element
conversion< / em > < / span > < / a > applied to the target function.
< / p >
< a name = "fusion.functional.generation.functions.make_fused_procedure.synopsis" > < / a > < h6 >
< a name = "id1221535" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_fused_procedure.synopsis" > Synopsis< / a >
< / h6 >
< pre class = "programlisting" >
< span class = "keyword" > template< / span > < span class = "special" > < < / span > < span class = "keyword" > typename< / span > < span class = "identifier" > F< / span > < span class = "special" > > < / span >
< span class = "keyword" > inline< / span > < span class = "keyword" > typename< / span > < a href = "metafunctions.html#fusion.functional.generation.metafunctions.make_fused_procedure" title = "make_fused_procedure" > < code class = "computeroutput" > < span class = "identifier" > make_fused_procedure< / span > < / code > < / a > < span class = "special" > < < / span > < span class = "identifier" > F< / span > < span class = "special" > > ::< / span > < span class = "identifier" > type< / span >
< span class = "identifier" > make_fused_procedure< / span > < span class = "special" > (< / span > < span class = "identifier" > F< / span > < span class = "keyword" > const< / span > < span class = "special" > & < / span > < span class = "identifier" > f< / span > < span class = "special" > );< / span >
< / pre >
< a name = "fusion.functional.generation.functions.make_fused_procedure.parameters" > < / a > < h6 >
< a name = "id1221672" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_fused_procedure.parameters" > Parameters< / a >
< / h6 >
< div class = "informaltable" > < table class = "table" >
< colgroup >
< col >
< col >
< col >
< / colgroup >
< thead > < tr >
< th > Parameter< / th >
< th > Requirement< / th >
< th > Description< / th >
< / tr > < / thead >
< tbody > < tr >
< td > < code class = "computeroutput" > < span class = "identifier" > f< / span > < / code > < / td >
< td > Model
of < a href = "../concepts/callable.html" title = " Callable Object" > Callable
Object< / a >
< / td >
< td > The function to transform.< / td >
< / tr > < / tbody >
< / table > < / div >
< a name = "fusion.functional.generation.functions.make_fused_procedure.expression_semantics" > < / a > < h6 >
< a name = "id1221752" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_fused_procedure.expression_semantics" > Expression
Semantics< / a >
< / h6 >
< pre class = "programlisting" >
< span class = "identifier" > make_fused_procedure< / span > < span class = "special" > (< / span > < span class = "identifier" > f< / span > < span class = "special" > );< / span >
< / pre >
< p >
< span class = "bold" > < strong > Return type< / strong > < / span > : A specialization of < a href = "../adapters/fused_procedure.html" title = "fused_procedure" > < code class = "computeroutput" > < span class = "identifier" > fused_procedure< / span > < / code > < / a > .
< / p >
< p >
< span class = "bold" > < strong > Semantics< / strong > < / span > : Returns a < a href = "../adapters/fused_procedure.html" title = "fused_procedure" > < code class = "computeroutput" > < span class = "identifier" > fused_procedure< / span > < / code > < / a > adapter for
< code class = "computeroutput" > < span class = "identifier" > f< / span > < / code > .
< / p >
< a name = "fusion.functional.generation.functions.make_fused_procedure.header" > < / a > < h6 >
< a name = "id1221857" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_fused_procedure.header" > Header< / a >
< / h6 >
< pre class = "programlisting" >
< span class = "preprocessor" > #include< / span > < span class = "special" > < < / span > < span class = "identifier" > boost< / span > < span class = "special" > /< / span > < span class = "identifier" > fusion< / span > < span class = "special" > /< / span > < span class = "identifier" > functional< / span > < span class = "special" > /< / span > < span class = "identifier" > generation< / span > < span class = "special" > /< / span > < span class = "identifier" > make_fused_procedure< / span > < span class = "special" > .< / span > < span class = "identifier" > hpp< / span > < span class = "special" > > < / span >
< / pre >
< a name = "fusion.functional.generation.functions.make_fused_procedure.example" > < / a > < h6 >
< a name = "id1221952" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_fused_procedure.example" > Example< / a >
< / h6 >
< pre class = "programlisting" >
< a href = "../../sequences/containers/vector.html" title = "vector" > < code class = "computeroutput" > < span class = "identifier" > vector< / span > < / code > < / a > < span class = "special" > < < / span > < span class = "keyword" > int< / span > < span class = "special" > ,< / span > < span class = "keyword" > int< / span > < span class = "special" > ,< / span > < span class = "keyword" > int< / span > < span class = "special" > > < / span > < span class = "identifier" > v< / span > < span class = "special" > (< / span > < span class = "number" > 1< / span > < span class = "special" > ,< / span > < span class = "number" > 2< / span > < span class = "special" > ,< / span > < span class = "number" > 3< / span > < span class = "special" > );< / span >
< span class = "keyword" > using< / span > < span class = "keyword" > namespace< / span > < span class = "identifier" > boost< / span > < span class = "special" > ::< / span > < span class = "identifier" > lambda< / span > < span class = "special" > ;< / span >
< span class = "identifier" > make_fused_procedure< / span > < span class = "special" > (< / span > < span class = "identifier" > _1< / span > < span class = "special" > +=< / span > < span class = "identifier" > _2< / span > < span class = "special" > -< / span > < span class = "identifier" > _3< / span > < span class = "special" > )(< / span > < span class = "identifier" > v< / span > < span class = "special" > );< / span >
< span class = "identifier" > assert< / span > < span class = "special" > (< / span > < a href = "../../sequences/intrinsics/functions.html#fusion.sequences.intrinsics.functions.front" title = "front" > < code class = "computeroutput" > < span class = "identifier" > front< / span > < / code > < / a > < span class = "special" > (< / span > < span class = "identifier" > v< / span > < span class = "special" > )< / span > < span class = "special" > ==< / span > < span class = "number" > 0< / span > < span class = "special" > );< / span >
< / pre >
< a name = "fusion.functional.generation.functions.make_fused_procedure.see_also" > < / a > < h6 >
< a name = "id1222190" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_fused_procedure.see_also" > See
also< / a >
< / h6 >
< div class = "itemizedlist" > < ul type = "disc" >
< li > < a href = "../adapters/fused_procedure.html" title = "fused_procedure" > < code class = "computeroutput" > < span class = "identifier" > fused_procedure< / span > < / code > < / a > < / li >
< li > < a href = "../../support/deduce.html" title = "deduce" > < code class = "computeroutput" > < span class = "identifier" > deduce< / span > < / code > < / a > < / li >
< li > < a href = "metafunctions.html#fusion.functional.generation.metafunctions.make_fused_procedure" title = "make_fused_procedure" > < code class = "computeroutput" > < span class = "identifier" > make_fused_procedure< / span > < / code > < / a > < / li >
< / ul > < / div >
< / div >
< div class = "section" lang = "en" >
< div class = "titlepage" > < div > < div > < h5 class = "title" >
< a name = "fusion.functional.generation.functions.make_fused_function_object" > < / a > < a href = "functions.html#fusion.functional.generation.functions.make_fused_function_object" title = "make_fused_function_object" > make_fused_function_object< / a > < / h5 > < / div > < / div > < / div >
< a name = "fusion.functional.generation.functions.make_fused_function_object.description" > < / a > < h6 >
< a name = "id1222293" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_fused_function_object.description" > Description< / a >
< / h6 >
< p >
Creates a < a href = "../adapters/fused_function_object.html" title = "fused_function_object" > < code class = "computeroutput" > < span class = "identifier" > fused_function_object< / span > < / code > < / a > adapter
for a given < a href = "../concepts/def_callable.html" title = " Deferred
Callable Object">Deferred
Callable Object< / a > . The usual < a href = "../../notes.html#fusion.notes.element_conversion" > < span class = "emphasis" > < em > element
conversion< / em > < / span > < / a > is applied to the target function.
< / p >
< a name = "fusion.functional.generation.functions.make_fused_function_object.synopsis" > < / a > < h6 >
< a name = "id1222355" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_fused_function_object.synopsis" > Synopsis< / a >
< / h6 >
< pre class = "programlisting" >
< span class = "keyword" > template< / span > < span class = "special" > < < / span > < span class = "keyword" > typename< / span > < span class = "identifier" > F< / span > < span class = "special" > > < / span >
< span class = "keyword" > inline< / span > < span class = "keyword" > typename< / span > < a href = "metafunctions.html#fusion.functional.generation.metafunctions.make_fused_function_object" title = "make_fused_function_object" > < code class = "computeroutput" > < span class = "identifier" > make_fused_function_object< / span > < / code > < / a > < span class = "special" > < < / span > < span class = "identifier" > F< / span > < span class = "special" > > ::< / span > < span class = "identifier" > type< / span >
< span class = "identifier" > make_fused_function_object< / span > < span class = "special" > (< / span > < span class = "identifier" > F< / span > < span class = "keyword" > const< / span > < span class = "special" > & < / span > < span class = "identifier" > f< / span > < span class = "special" > );< / span >
< / pre >
< a name = "fusion.functional.generation.functions.make_fused_function_object.parameters" > < / a > < h6 >
< a name = "id1222493" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_fused_function_object.parameters" > Parameters< / a >
< / h6 >
< div class = "informaltable" > < table class = "table" >
< colgroup >
< col >
< col >
< col >
< / colgroup >
< thead > < tr >
< th > Parameter< / th >
< th > Requirement< / th >
< th > Description< / th >
< / tr > < / thead >
< tbody > < tr >
< td > < code class = "computeroutput" > < span class = "identifier" > f< / span > < / code > < / td >
< td > Model
of < a href = "../concepts/poly.html" title = " Polymorphic Function
Object">Polymorphic
Function Object< / a >
< / td >
< td > The function to transform.< / td >
< / tr > < / tbody >
< / table > < / div >
< a name = "fusion.functional.generation.functions.make_fused_function_object.expression_semantics" > < / a > < h6 >
< a name = "id1222572" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_fused_function_object.expression_semantics" > Expression
Semantics< / a >
< / h6 >
< pre class = "programlisting" >
< span class = "identifier" > make_fused_function_object< / span > < span class = "special" > (< / span > < span class = "identifier" > f< / span > < span class = "special" > );< / span >
< / pre >
< p >
< span class = "bold" > < strong > Return type< / strong > < / span > : A specialization of < a href = "../adapters/fused_function_object.html" title = "fused_function_object" > < code class = "computeroutput" > < span class = "identifier" > fused_function_object< / span > < / code > < / a > .
< / p >
< p >
< span class = "bold" > < strong > Semantics< / strong > < / span > : Returns a < a href = "../adapters/fused_function_object.html" title = "fused_function_object" > < code class = "computeroutput" > < span class = "identifier" > fused_function_object< / span > < / code > < / a > adapter
for < code class = "computeroutput" > < span class = "identifier" > f< / span > < / code > .
< / p >
< a name = "fusion.functional.generation.functions.make_fused_function_object.header" > < / a > < h6 >
< a name = "id1222681" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_fused_function_object.header" > Header< / a >
< / h6 >
< pre class = "programlisting" >
< span class = "preprocessor" > #include< / span > < span class = "special" > < < / span > < span class = "identifier" > boost< / span > < span class = "special" > /< / span > < span class = "identifier" > fusion< / span > < span class = "special" > /< / span > < span class = "identifier" > functional< / span > < span class = "special" > /< / span > < span class = "identifier" > generation< / span > < span class = "special" > /< / span > < span class = "identifier" > make_fused_function_object< / span > < span class = "special" > .< / span > < span class = "identifier" > hpp< / span > < span class = "special" > > < / span >
< / pre >
< a name = "fusion.functional.generation.functions.make_fused_function_object.example" > < / a > < h6 >
< a name = "id1222775" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_fused_function_object.example" > Example< / a >
< / h6 >
< pre class = "programlisting" >
< span class = "keyword" > struct< / span > < span class = "identifier" > sub< / span >
< span class = "special" > {< / span >
< span class = "keyword" > template< / span > < span class = "special" > < < / span > < span class = "keyword" > typename< / span > < span class = "identifier" > T< / span > < span class = "special" > ,< / span > < span class = "keyword" > typename< / span > < span class = "identifier" > _< / span > < span class = "special" > > < / span >
< span class = "keyword" > struct< / span > < span class = "identifier" > result< / span >
< span class = "special" > {< / span >
< span class = "keyword" > typedef< / span > < span class = "identifier" > T< / span > < span class = "identifier" > type< / span > < span class = "special" > ;< / span >
< span class = "special" > };< / span >
< span class = "keyword" > template< / span > < span class = "special" > < < / span > < span class = "keyword" > typename< / span > < span class = "identifier" > T< / span > < span class = "special" > > < / span >
< span class = "identifier" > T< / span > < span class = "keyword" > operator< / span > < span class = "special" > ()(< / span > < span class = "identifier" > T< / span > < span class = "identifier" > lhs< / span > < span class = "special" > ,< / span > < span class = "identifier" > T< / span > < span class = "identifier" > rhs< / span > < span class = "special" > )< / span > < span class = "keyword" > const< / span >
< span class = "special" > {< / span >
< span class = "keyword" > return< / span > < span class = "identifier" > lhs< / span > < span class = "special" > -< / span > < span class = "identifier" > rhs< / span > < span class = "special" > ;< / span >
< span class = "special" > }< / span >
< span class = "special" > };< / span >
< span class = "keyword" > void< / span > < span class = "identifier" > try_it< / span > < span class = "special" > ()< / span >
< span class = "special" > {< / span >
< a href = "../../sequences/containers/vector.html" title = "vector" > < code class = "computeroutput" > < span class = "identifier" > vector< / span > < / code > < / a > < span class = "special" > < < / span > < span class = "keyword" > int< / span > < span class = "special" > ,< / span > < span class = "keyword" > float< / span > < span class = "special" > > < / span > < span class = "identifier" > a< / span > < span class = "special" > (< / span > < span class = "number" > 2< / span > < span class = "special" > ,< / span > < span class = "number" > 2.0f< / span > < span class = "special" > );< / span >
< a href = "../../sequences/containers/vector.html" title = "vector" > < code class = "computeroutput" > < span class = "identifier" > vector< / span > < / code > < / a > < span class = "special" > < < / span > < span class = "keyword" > int< / span > < span class = "special" > ,< / span > < span class = "keyword" > float< / span > < span class = "special" > > < / span > < span class = "identifier" > b< / span > < span class = "special" > (< / span > < span class = "number" > 1< / span > < span class = "special" > ,< / span > < span class = "number" > 1.5f< / span > < span class = "special" > );< / span >
< a href = "../../sequences/containers/vector.html" title = "vector" > < code class = "computeroutput" > < span class = "identifier" > vector< / span > < / code > < / a > < span class = "special" > < < / span > < span class = "keyword" > int< / span > < span class = "special" > ,< / span > < span class = "keyword" > float< / span > < span class = "special" > > < / span > < span class = "identifier" > c< / span > < span class = "special" > (< / span > < span class = "number" > 1< / span > < span class = "special" > ,< / span > < span class = "number" > 0.5f< / span > < span class = "special" > );< / span >
< span class = "identifier" > assert< / span > < span class = "special" > (< / span > < span class = "identifier" > c< / span > < span class = "special" > ==< / span > < a href = "../../algorithms/transformation/functions.html#fusion.algorithms.transformation.functions.transform" title = "transform" > < code class = "computeroutput" > < span class = "identifier" > transform< / span > < / code > < / a > < span class = "special" > (< / span > < a href = "../../algorithms/transformation/functions.html#fusion.algorithms.transformation.functions.zip" title = "zip" > < code class = "computeroutput" > < span class = "identifier" > zip< / span > < / code > < / a > < span class = "special" > (< / span > < span class = "identifier" > a< / span > < span class = "special" > ,< / span > < span class = "identifier" > b< / span > < span class = "special" > ),< / span > < span class = "identifier" > make_fused_function_object< / span > < span class = "special" > (< / span > < span class = "identifier" > sub< / span > < span class = "special" > ())));< / span >
< span class = "special" > }< / span >
< / pre >
< a name = "fusion.functional.generation.functions.make_fused_function_object.see_also" > < / a > < h6 >
< a name = "id1223328" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_fused_function_object.see_also" > See
also< / a >
< / h6 >
< div class = "itemizedlist" > < ul type = "disc" >
< li > < a href = "../adapters/fused_function_object.html" title = "fused_function_object" > < code class = "computeroutput" > < span class = "identifier" > fused_function_object< / span > < / code > < / a > < / li >
< li > < a href = "../../support/deduce.html" title = "deduce" > < code class = "computeroutput" > < span class = "identifier" > deduce< / span > < / code > < / a > < / li >
< li > < a href = "metafunctions.html#fusion.functional.generation.metafunctions.make_fused_function_object" title = "make_fused_function_object" > < code class = "computeroutput" > < span class = "identifier" > make_fused_function_object< / span > < / code > < / a > < / li >
< / ul > < / div >
< / div >
< div class = "section" lang = "en" >
< div class = "titlepage" > < div > < div > < h5 class = "title" >
< a name = "fusion.functional.generation.functions.make_unfused_generic" > < / a > < a href = "functions.html#fusion.functional.generation.functions.make_unfused_generic" title = "make_unfused_generic" > make_unfused_generic< / a > < / h5 > < / div > < / div > < / div >
< a name = "fusion.functional.generation.functions.make_unfused_generic.description" > < / a > < h6 >
< a name = "id1240906" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_unfused_generic.description" > Description< / a >
< / h6 >
< p >
Creates a < a href = "../adapters/unfused_generic.html" title = "unfused_generic" > < code class = "computeroutput" > < span class = "identifier" > unfused_generic< / span > < / code > < / a > adapter for
a given, unary < a href = "../concepts/poly.html" title = " Polymorphic Function
Object">Polymorphic
Function Object< / a > . The usual < a href = "../../notes.html#fusion.notes.element_conversion" > < span class = "emphasis" > < em > element
conversion< / em > < / span > < / a > is applied to the target function.
< / p >
< a name = "fusion.functional.generation.functions.make_unfused_generic.synopsis" > < / a > < h6 >
< a name = "id1240966" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_unfused_generic.synopsis" > Synopsis< / a >
< / h6 >
< pre class = "programlisting" >
< span class = "keyword" > template< / span > < span class = "special" > < < / span > < span class = "keyword" > typename< / span > < span class = "identifier" > F< / span > < span class = "special" > > < / span >
< span class = "keyword" > inline< / span > < span class = "keyword" > typename< / span > < a href = "metafunctions.html#fusion.functional.generation.metafunctions.make_unfused_generic" title = "make_unfused_generic" > < code class = "computeroutput" > < span class = "identifier" > make_unfused_generic< / span > < / code > < / a > < span class = "special" > < < / span > < span class = "identifier" > F< / span > < span class = "special" > > ::< / span > < span class = "identifier" > type< / span >
< span class = "identifier" > make_unfused_generic< / span > < span class = "special" > (< / span > < span class = "identifier" > F< / span > < span class = "keyword" > const< / span > < span class = "special" > & < / span > < span class = "identifier" > f< / span > < span class = "special" > );< / span >
< / pre >
< a name = "fusion.functional.generation.functions.make_unfused_generic.parameters" > < / a > < h6 >
< a name = "id1241104" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_unfused_generic.parameters" > Parameters< / a >
< / h6 >
< div class = "informaltable" > < table class = "table" >
< colgroup >
< col >
< col >
< col >
< / colgroup >
< thead > < tr >
< th > Parameter< / th >
< th > Requirement< / th >
< th > Description< / th >
< / tr > < / thead >
< tbody > < tr >
< td > < code class = "computeroutput" > < span class = "identifier" > f< / span > < / code > < / td >
< td > Model
of < a href = "../concepts/poly.html" title = " Polymorphic Function
Object">Polymorphic
Function Object< / a >
< / td >
< td > The function to transform.< / td >
< / tr > < / tbody >
< / table > < / div >
< a name = "fusion.functional.generation.functions.make_unfused_generic.expression_semantics" > < / a > < h6 >
< a name = "id1241184" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_unfused_generic.expression_semantics" > Expression
Semantics< / a >
< / h6 >
< pre class = "programlisting" >
< span class = "identifier" > make_unfused_generic< / span > < span class = "special" > (< / span > < span class = "identifier" > f< / span > < span class = "special" > );< / span >
< / pre >
< p >
< span class = "bold" > < strong > Return type< / strong > < / span > : A specialization of < a href = "../adapters/unfused_generic.html" title = "unfused_generic" > < code class = "computeroutput" > < span class = "identifier" > unfused_generic< / span > < / code > < / a > .
< / p >
< p >
< span class = "bold" > < strong > Semantics< / strong > < / span > : Returns a < a href = "../adapters/unfused_generic.html" title = "unfused_generic" > < code class = "computeroutput" > < span class = "identifier" > unfused_generic< / span > < / code > < / a > adapter for
< code class = "computeroutput" > < span class = "identifier" > f< / span > < / code > .
< / p >
< a name = "fusion.functional.generation.functions.make_unfused_generic.header" > < / a > < h6 >
< a name = "id1241290" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_unfused_generic.header" > Header< / a >
< / h6 >
< pre class = "programlisting" >
< span class = "preprocessor" > #include< / span > < span class = "special" > < < / span > < span class = "identifier" > boost< / span > < span class = "special" > /< / span > < span class = "identifier" > fusion< / span > < span class = "special" > /< / span > < span class = "identifier" > functional< / span > < span class = "special" > /< / span > < span class = "identifier" > generation< / span > < span class = "special" > /< / span > < span class = "identifier" > make_unfused_generic< / span > < span class = "special" > .< / span > < span class = "identifier" > hpp< / span > < span class = "special" > > < / span >
< / pre >
< a name = "fusion.functional.generation.functions.make_unfused_generic.example" > < / a > < h6 >
< a name = "id1241384" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_unfused_generic.example" > Example< / a >
< / h6 >
< pre class = "programlisting" >
< span class = "keyword" > struct< / span > < span class = "identifier" > bottles_song< / span >
< span class = "special" > {< / span >
< span class = "keyword" > template< / span > < span class = "special" > < < / span > < span class = "keyword" > class< / span > < span class = "identifier" > Seq< / span > < span class = "special" > > < / span >
< span class = "keyword" > struct< / span > < span class = "identifier" > result< / span >
< span class = "special" > :< / span > < span class = "identifier" > mpl< / span > < span class = "special" > ::< / span > < span class = "identifier" > if_< / span > < span class = "special" > < < / span > < span class = "identifier" > mpl< / span > < span class = "special" > ::< / span > < span class = "identifier" > less< / span > < span class = "special" > < < / span > < a href = "../../sequences/intrinsics/metafunctions.html#fusion.sequences.intrinsics.metafunctions.size" title = "size" > < code class = "computeroutput" > < span class = "identifier" > result_of< / span > < span class = "special" > ::< / span > < span class = "identifier" > size< / span > < / code > < / a > < span class = "special" > < < / span > < span class = "identifier" > Seq< / span > < span class = "special" > > ,< / span > < span class = "identifier" > mpl< / span > < span class = "special" > ::< / span > < span class = "identifier" > int_< / span > < span class = "special" > < < / span > < span class = "number" > 2< / span > < span class = "special" > > < / span > < span class = "special" > > ,< / span >
< span class = "identifier" > boost< / span > < span class = "special" > ::< / span > < span class = "identifier" > blank< / span > < span class = "special" > ,< / span > < span class = "identifier" > mpl< / span > < span class = "special" > ::< / span > < span class = "identifier" > identity< / span > < span class = "special" > < < / span > < span class = "keyword" > void< / span > < span class = "special" > > < / span > < span class = "special" > > ::< / span > < span class = "identifier" > type< / span >
< span class = "special" > {< / span > < span class = "special" > };< / span >
< span class = "keyword" > template< / span > < span class = "special" > < < / span > < span class = "keyword" > class< / span > < span class = "identifier" > Seq< / span > < span class = "special" > > < / span >
< span class = "keyword" > void< / span > < span class = "keyword" > operator< / span > < span class = "special" > ()(< / span > < span class = "identifier" > Seq< / span > < span class = "special" > & < / span > < span class = "identifier" > s< / span > < span class = "special" > )< / span > < span class = "keyword" > const< / span >
< span class = "special" > {< / span >
< span class = "keyword" > typename< / span > < span class = "identifier" > result_of< / span > < span class = "special" > ::< / span > < span class = "identifier" > at_c< / span > < span class = "special" > < < / span > < span class = "identifier" > Seq< / span > < span class = "special" > ,< / span > < span class = "number" > 0< / span > < span class = "special" > > ::< / span > < span class = "identifier" > type< / span > < span class = "identifier" > n< / span > < span class = "special" > =< / span > < span class = "identifier" > at_c< / span > < span class = "special" > < < / span > < span class = "number" > 0< / span > < span class = "special" > > (< / span > < span class = "identifier" > s< / span > < span class = "special" > );< / span >
< span class = "keyword" > typename< / span > < span class = "identifier" > result_of< / span > < span class = "special" > ::< / span > < span class = "identifier" > at_c< / span > < span class = "special" > < < / span > < span class = "identifier" > Seq< / span > < span class = "special" > ,< / span > < span class = "number" > 1< / span > < span class = "special" > > ::< / span > < span class = "identifier" > type< / span > < span class = "identifier" > what< / span > < span class = "special" > =< / span > < span class = "identifier" > at_c< / span > < span class = "special" > < < / span > < span class = "number" > 1< / span > < span class = "special" > > (< / span > < span class = "identifier" > s< / span > < span class = "special" > );< / span >
< span class = "identifier" > std< / span > < span class = "special" > ::< / span > < span class = "identifier" > cout< / span >
< span class = "special" > < < < / span > < span class = "identifier" > n< / span > < span class = "special" > < < < / span > < span class = "string" > " bottles of "< / span > < span class = "special" > < < < / span > < span class = "identifier" > what< / span > < span class = "special" > < < < / span > < span class = "string" > " on the wall.\n"< / span >
< span class = "special" > < < < / span > < span class = "identifier" > n< / span > < span class = "special" > < < < / span > < span class = "string" > " bottles of "< / span > < span class = "special" > < < < / span > < span class = "identifier" > what< / span > < span class = "special" > < < < / span > < span class = "string" > "!\n"< / span >
< span class = "special" > < < < / span > < span class = "string" > "Take one down - pass it around.\n"< / span > < span class = "special" > ;< / span >
< span class = "identifier" > n< / span > < span class = "special" > -=< / span > < span class = "number" > 1< / span > < span class = "special" > ;< / span > < span class = "comment" > // glug glug...
< / span >
< span class = "identifier" > std< / span > < span class = "special" > ::< / span > < span class = "identifier" > cout< / span >
< span class = "special" > < < < / span > < span class = "identifier" > n< / span > < span class = "special" > < < < / span > < span class = "string" > " bottles of "< / span > < span class = "special" > < < < / span > < span class = "identifier" > what< / span > < span class = "special" > < < < / span > < span class = "string" > " on the wall.\n"< / span >
< span class = "special" > < < < / span > < span class = "identifier" > std< / span > < span class = "special" > ::< / span > < span class = "identifier" > endl< / span > < span class = "special" > ;< / span >
< span class = "special" > }< / span >
< span class = "special" > };< / span >
< span class = "keyword" > void< / span > < span class = "identifier" > try_it< / span > < span class = "special" > ()< / span >
< span class = "special" > {< / span >
< span class = "keyword" > unsigned< / span > < span class = "identifier" > n_milk< / span > < span class = "special" > =< / span > < span class = "number" > 99< / span > < span class = "special" > ;< / span >
< span class = "keyword" > for< / span > < span class = "special" > (< / span > < span class = "keyword" > int< / span > < span class = "identifier" > i< / span > < span class = "special" > =< / span > < span class = "number" > 0< / span > < span class = "special" > ;< / span > < span class = "identifier" > i< / span > < span class = "special" > < < / span > < span class = "number" > 3< / span > < span class = "special" > ;< / span > < span class = "special" > ++< / span > < span class = "identifier" > i< / span > < span class = "special" > )< / span >
< span class = "identifier" > make_unfused_generic< / span > < span class = "special" > (< / span > < span class = "identifier" > bottles_song< / span > < span class = "special" > ())(< / span > < span class = "identifier" > n_milk< / span > < span class = "special" > ,< / span > < span class = "string" > "milk"< / span > < span class = "special" > );< / span >
< span class = "comment" > // 96 bottles left for me
< / span > < span class = "special" > }< / span >
< / pre >
< a name = "fusion.functional.generation.functions.make_unfused_generic.see_also" > < / a > < h6 >
< a name = "id1242286" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_unfused_generic.see_also" > See
also< / a >
< / h6 >
< div class = "itemizedlist" > < ul type = "disc" >
< li > < a href = "../adapters/unfused_generic.html" title = "unfused_generic" > < code class = "computeroutput" > < span class = "identifier" > unfused_generic< / span > < / code > < / a > < / li >
< li > < a href = "../../support/deduce.html" title = "deduce" > < code class = "computeroutput" > < span class = "identifier" > deduce< / span > < / code > < / a > < / li >
< li > < a href = "metafunctions.html#fusion.functional.generation.metafunctions.make_unfused_generic" title = "make_unfused_generic" > < code class = "computeroutput" > < span class = "identifier" > make_unfused_generic< / span > < / code > < / a > < / li >
< / ul > < / div >
< / div >
< div class = "section" lang = "en" >
< div class = "titlepage" > < div > < div > < h5 class = "title" >
< a name = "fusion.functional.generation.functions.make_unfused_lvalue_args" > < / a > < a href = "functions.html#fusion.functional.generation.functions.make_unfused_lvalue_args" title = "make_unfused_lvalue_args" > make_unfused_lvalue_args< / a > < / h5 > < / div > < / div > < / div >
< a name = "fusion.functional.generation.functions.make_unfused_lvalue_args.description" > < / a > < h6 >
< a name = "id1242387" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_unfused_lvalue_args.description" > Description< / a >
< / h6 >
< p >
Creates a < a href = "../adapters/unfused_lvalue_args.html" title = "unfused_lvalue_args" > < code class = "computeroutput" > < span class = "identifier" > unfused_lvalue_args< / span > < / code > < / a > adapter
for a given, unary < a href = "../concepts/poly.html" title = " Polymorphic Function
Object">Polymorphic
Function Object< / a > . The usual < a href = "../../notes.html#fusion.notes.element_conversion" > < span class = "emphasis" > < em > element
conversion< / em > < / span > < / a > is applied to the target function.
< / p >
< a name = "fusion.functional.generation.functions.make_unfused_lvalue_args.synopsis" > < / a > < h6 >
< a name = "id1242448" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_unfused_lvalue_args.synopsis" > Synopsis< / a >
< / h6 >
< pre class = "programlisting" >
< span class = "keyword" > template< / span > < span class = "special" > < < / span > < span class = "keyword" > typename< / span > < span class = "identifier" > F< / span > < span class = "special" > > < / span >
< span class = "keyword" > inline< / span > < span class = "keyword" > typename< / span > < a href = "metafunctions.html#fusion.functional.generation.metafunctions.make_unfused_lvalue_args" title = "make_unfused_lvalue_args" > < code class = "computeroutput" > < span class = "identifier" > make_unfused_lvalue_args< / span > < / code > < / a > < span class = "special" > < < / span > < span class = "identifier" > F< / span > < span class = "special" > > ::< / span > < span class = "identifier" > type< / span >
< span class = "identifier" > make_unfused_lvalue_args< / span > < span class = "special" > (< / span > < span class = "identifier" > F< / span > < span class = "keyword" > const< / span > < span class = "special" > & < / span > < span class = "identifier" > f< / span > < span class = "special" > );< / span >
< / pre >
< a name = "fusion.functional.generation.functions.make_unfused_lvalue_args.parameters" > < / a > < h6 >
< a name = "id1242586" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_unfused_lvalue_args.parameters" > Parameters< / a >
< / h6 >
< div class = "informaltable" > < table class = "table" >
< colgroup >
< col >
< col >
< col >
< / colgroup >
< thead > < tr >
< th > Parameter< / th >
< th > Requirement< / th >
< th > Description< / th >
< / tr > < / thead >
< tbody > < tr >
< td > < code class = "computeroutput" > < span class = "identifier" > f< / span > < / code > < / td >
< td > Model
of < a href = "../concepts/poly.html" title = " Polymorphic Function
Object">Polymorphic
Function Object< / a >
< / td >
< td > The function to transform.< / td >
< / tr > < / tbody >
< / table > < / div >
< a name = "fusion.functional.generation.functions.make_unfused_lvalue_args.expression_semantics" > < / a > < h6 >
< a name = "id1242665" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_unfused_lvalue_args.expression_semantics" > Expression
Semantics< / a >
< / h6 >
< pre class = "programlisting" >
< span class = "identifier" > make_unfused_lvalue_args< / span > < span class = "special" > (< / span > < span class = "identifier" > f< / span > < span class = "special" > );< / span >
< / pre >
< p >
< span class = "bold" > < strong > Return type< / strong > < / span > : A specialization of < a href = "../adapters/unfused_lvalue_args.html" title = "unfused_lvalue_args" > < code class = "computeroutput" > < span class = "identifier" > unfused_lvalue_args< / span > < / code > < / a > .
< / p >
< p >
< span class = "bold" > < strong > Semantics< / strong > < / span > : Returns a < a href = "../adapters/unfused_lvalue_args.html" title = "unfused_lvalue_args" > < code class = "computeroutput" > < span class = "identifier" > unfused_lvalue_args< / span > < / code > < / a > adapter
for < code class = "computeroutput" > < span class = "identifier" > f< / span > < / code > .
< / p >
< a name = "fusion.functional.generation.functions.make_unfused_lvalue_args.header" > < / a > < h6 >
< a name = "id1242771" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_unfused_lvalue_args.header" > Header< / a >
< / h6 >
< pre class = "programlisting" >
< span class = "preprocessor" > #include< / span > < span class = "special" > < < / span > < span class = "identifier" > boost< / span > < span class = "special" > /< / span > < span class = "identifier" > fusion< / span > < span class = "special" > /< / span > < span class = "identifier" > functional< / span > < span class = "special" > /< / span > < span class = "identifier" > generation< / span > < span class = "special" > /< / span > < span class = "identifier" > make_unfused_lvalue_args< / span > < span class = "special" > .< / span > < span class = "identifier" > hpp< / span > < span class = "special" > > < / span >
< / pre >
< a name = "fusion.functional.generation.functions.make_unfused_lvalue_args.example" > < / a > < h6 >
< a name = "id1242865" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_unfused_lvalue_args.example" > Example< / a >
< / h6 >
< pre class = "programlisting" >
< span class = "keyword" > struct< / span > < span class = "identifier" > fused_incrementer< / span >
< span class = "special" > {< / span >
< span class = "keyword" > template< / span > < span class = "special" > < < / span > < span class = "keyword" > class< / span > < span class = "identifier" > Seq< / span > < span class = "special" > > < / span >
< span class = "keyword" > struct< / span > < span class = "identifier" > result< / span >
< span class = "special" > {< / span >
< span class = "keyword" > typedef< / span > < span class = "keyword" > void< / span > < span class = "identifier" > type< / span > < span class = "special" > ;< / span >
< span class = "special" > };< / span >
< span class = "keyword" > template< / span > < span class = "special" > < < / span > < span class = "keyword" > class< / span > < span class = "identifier" > Seq< / span > < span class = "special" > > < / span >
< span class = "keyword" > void< / span > < span class = "keyword" > operator< / span > < span class = "special" > ()(< / span > < span class = "identifier" > Seq< / span > < span class = "keyword" > const< / span > < span class = "special" > & < / span > < span class = "identifier" > s< / span > < span class = "special" > )< / span > < span class = "keyword" > const< / span >
< span class = "special" > {< / span >
< a href = "../../algorithms/iteration/functions.html#fusion.algorithms.iteration.functions.for_each" title = "for_each" > < code class = "computeroutput" > < span class = "identifier" > for_each< / span > < / code > < / a > < span class = "special" > (< / span > < span class = "identifier" > s< / span > < span class = "special" > ,++< / span > < span class = "identifier" > boost< / span > < span class = "special" > ::< / span > < span class = "identifier" > lambda< / span > < span class = "special" > ::< / span > < span class = "identifier" > _1< / span > < span class = "special" > );< / span >
< span class = "special" > }< / span >
< span class = "special" > };< / span >
< span class = "keyword" > void< / span > < span class = "identifier" > try_it< / span > < span class = "special" > ()< / span >
< span class = "special" > {< / span >
< span class = "keyword" > int< / span > < span class = "identifier" > a< / span > < span class = "special" > =< / span > < span class = "number" > 2< / span > < span class = "special" > ;< / span > < span class = "keyword" > char< / span > < span class = "identifier" > b< / span > < span class = "special" > =< / span > < span class = "char" > 'X'< / span > < span class = "special" > ;< / span >
< span class = "identifier" > make_unfused_lvalue_args< / span > < span class = "special" > (< / span > < span class = "identifier" > fused_incrementer< / span > < span class = "special" > ())(< / span > < span class = "identifier" > a< / span > < span class = "special" > ,< / span > < span class = "identifier" > b< / span > < span class = "special" > );< / span >
< span class = "identifier" > assert< / span > < span class = "special" > (< / span > < span class = "identifier" > a< / span > < span class = "special" > ==< / span > < span class = "number" > 3< / span > < span class = "special" > & & < / span > < span class = "identifier" > b< / span > < span class = "special" > ==< / span > < span class = "char" > 'Y'< / span > < span class = "special" > );< / span >
< span class = "special" > }< / span >
< / pre >
< a name = "fusion.functional.generation.functions.make_unfused_lvalue_args.see_also" > < / a > < h6 >
< a name = "id1243287" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_unfused_lvalue_args.see_also" > See
also< / a >
< / h6 >
< div class = "itemizedlist" > < ul type = "disc" >
< li > < a href = "../adapters/unfused_lvalue_args.html" title = "unfused_lvalue_args" > < code class = "computeroutput" > < span class = "identifier" > unfused_lvalue_args< / span > < / code > < / a > < / li >
< li > < a href = "../../support/deduce.html" title = "deduce" > < code class = "computeroutput" > < span class = "identifier" > deduce< / span > < / code > < / a > < / li >
< li > < a href = "metafunctions.html#fusion.functional.generation.metafunctions.make_unfused_lvalue_args" title = "make_unfused_lvalue_args" > < code class = "computeroutput" > < span class = "identifier" > make_unfused_lvalue_args< / span > < / code > < / a > < / li >
< / ul > < / div >
< / div >
< div class = "section" lang = "en" >
< div class = "titlepage" > < div > < div > < h5 class = "title" >
< a name = "fusion.functional.generation.functions.make_unfused_rvalue_args" > < / a > < a href = "functions.html#fusion.functional.generation.functions.make_unfused_rvalue_args" title = "make_unfused_rvalue_args" > make_unfused_rvalue_args< / a > < / h5 > < / div > < / div > < / div >
< a name = "fusion.functional.generation.functions.make_unfused_rvalue_args.description" > < / a > < h6 >
< a name = "id1243389" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_unfused_rvalue_args.description" > Description< / a >
< / h6 >
< p >
Creates a < a href = "../adapters/unfused_rvalue_args.html" title = "unfused_rvalue_args" > < code class = "computeroutput" > < span class = "identifier" > unfused_rvalue_args< / span > < / code > < / a > adapter
for a given, unary < a href = "../concepts/poly.html" title = " Polymorphic Function
Object">Polymorphic
Function Object< / a > . The usual < a href = "../../notes.html#fusion.notes.element_conversion" > < span class = "emphasis" > < em > element
conversion< / em > < / span > < / a > is applied to the target function.
< / p >
< a name = "fusion.functional.generation.functions.make_unfused_rvalue_args.synopsis" > < / a > < h6 >
< a name = "id1243450" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_unfused_rvalue_args.synopsis" > Synopsis< / a >
< / h6 >
< pre class = "programlisting" >
< span class = "keyword" > template< / span > < span class = "special" > < < / span > < span class = "keyword" > typename< / span > < span class = "identifier" > F< / span > < span class = "special" > > < / span >
< span class = "keyword" > inline< / span > < span class = "keyword" > typename< / span > < a href = "metafunctions.html#fusion.functional.generation.metafunctions.make_unfused_rvalue_args" title = "make_unfused_rvalue_args" > < code class = "computeroutput" > < span class = "identifier" > make_unfused_rvalue_args< / span > < / code > < / a > < span class = "special" > < < / span > < span class = "identifier" > F< / span > < span class = "special" > > ::< / span > < span class = "identifier" > type< / span >
< span class = "identifier" > make_unfused_rvalue_args< / span > < span class = "special" > (< / span > < span class = "identifier" > F< / span > < span class = "keyword" > const< / span > < span class = "special" > & < / span > < span class = "identifier" > f< / span > < span class = "special" > );< / span >
< / pre >
< a name = "fusion.functional.generation.functions.make_unfused_rvalue_args.parameters" > < / a > < h6 >
< a name = "id1243588" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_unfused_rvalue_args.parameters" > Parameters< / a >
< / h6 >
< div class = "informaltable" > < table class = "table" >
< colgroup >
< col >
< col >
< col >
< / colgroup >
< thead > < tr >
< th > Parameter< / th >
< th > Requirement< / th >
< th > Description< / th >
< / tr > < / thead >
< tbody > < tr >
< td > < code class = "computeroutput" > < span class = "identifier" > f< / span > < / code > < / td >
< td > Model
of < a href = "../concepts/poly.html" title = " Polymorphic Function
Object">Polymorphic
Function Object< / a >
< / td >
< td > The function to transform.< / td >
< / tr > < / tbody >
< / table > < / div >
< a name = "fusion.functional.generation.functions.make_unfused_rvalue_args.expression_semantics" > < / a > < h6 >
< a name = "id1243666" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_unfused_rvalue_args.expression_semantics" > Expression
Semantics< / a >
< / h6 >
< pre class = "programlisting" >
< span class = "identifier" > make_unfused_rvalue_args< / span > < span class = "special" > (< / span > < span class = "identifier" > f< / span > < span class = "special" > );< / span >
< / pre >
< p >
< span class = "bold" > < strong > Return type< / strong > < / span > : A specialization of < a href = "../adapters/unfused_rvalue_args.html" title = "unfused_rvalue_args" > < code class = "computeroutput" > < span class = "identifier" > unfused_rvalue_args< / span > < / code > < / a > .
< / p >
< p >
< span class = "bold" > < strong > Semantics< / strong > < / span > : Returns a < a href = "../adapters/unfused_rvalue_args.html" title = "unfused_rvalue_args" > < code class = "computeroutput" > < span class = "identifier" > unfused_rvalue_args< / span > < / code > < / a > adapter
for < code class = "computeroutput" > < span class = "identifier" > f< / span > < / code > .
< / p >
< a name = "fusion.functional.generation.functions.make_unfused_rvalue_args.header" > < / a > < h6 >
< a name = "id1243773" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_unfused_rvalue_args.header" > Header< / a >
< / h6 >
< pre class = "programlisting" >
< span class = "preprocessor" > #include< / span > < span class = "special" > < < / span > < span class = "identifier" > boost< / span > < span class = "special" > /< / span > < span class = "identifier" > fusion< / span > < span class = "special" > /< / span > < span class = "identifier" > functional< / span > < span class = "special" > /< / span > < span class = "identifier" > generation< / span > < span class = "special" > /< / span > < span class = "identifier" > make_unfused_rvalue_args< / span > < span class = "special" > .< / span > < span class = "identifier" > hpp< / span > < span class = "special" > > < / span >
< / pre >
< a name = "fusion.functional.generation.functions.make_unfused_rvalue_args.example" > < / a > < h6 >
< a name = "id1243868" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_unfused_rvalue_args.example" > Example< / a >
< / h6 >
< pre class = "programlisting" >
< span class = "keyword" > struct< / span > < span class = "identifier" > sequence_printer< / span >
< span class = "special" > {< / span >
< span class = "keyword" > template< / span > < span class = "special" > < < / span > < span class = "keyword" > class< / span > < span class = "identifier" > Seq< / span > < span class = "special" > > < / span >
< span class = "keyword" > struct< / span > < span class = "identifier" > result< / span >
< span class = "special" > {< / span >
< span class = "keyword" > typedef< / span > < span class = "keyword" > void< / span > < span class = "identifier" > type< / span > < span class = "special" > ;< / span >
< span class = "special" > };< / span >
< span class = "keyword" > template< / span > < span class = "special" > < < / span > < span class = "keyword" > class< / span > < span class = "identifier" > Seq< / span > < span class = "special" > > < / span >
< span class = "keyword" > void< / span > < span class = "keyword" > operator< / span > < span class = "special" > ()(< / span > < span class = "identifier" > Seq< / span > < span class = "keyword" > const< / span > < span class = "special" > & < / span > < span class = "identifier" > s< / span > < span class = "special" > )< / span > < span class = "keyword" > const< / span >
< span class = "special" > {< / span >
< span class = "identifier" > std< / span > < span class = "special" > ::< / span > < span class = "identifier" > cout< / span > < span class = "special" > < < < / span > < span class = "identifier" > s< / span > < span class = "special" > < < < / span > < span class = "identifier" > std< / span > < span class = "special" > ::< / span > < span class = "identifier" > endl< / span > < span class = "special" > ;< / span >
< span class = "special" > }< / span >
< span class = "special" > };< / span >
< span class = "keyword" > void< / span > < span class = "identifier" > try_it< / span > < span class = "special" > ()< / span >
< span class = "special" > {< / span >
< span class = "identifier" > make_unfused_rvalue_args< / span > < span class = "special" > (< / span > < span class = "identifier" > sequence_printer< / span > < span class = "special" > ())< / span >
< span class = "special" > (< / span > < span class = "number" > 24< / span > < span class = "special" > ,< / span > < span class = "string" > "bottles of beer in"< / span > < span class = "special" > ,< / span > < span class = "char" > 'a'< / span > < span class = "special" > ,< / span > < span class = "string" > "box."< / span > < span class = "special" > );< / span >
< span class = "special" > }< / span >
< / pre >
< a name = "fusion.functional.generation.functions.make_unfused_rvalue_args.see_also" > < / a > < h6 >
< a name = "id1244206" > < / a >
< a href = "functions.html#fusion.functional.generation.functions.make_unfused_rvalue_args.see_also" > See
also< / a >
< / h6 >
< div class = "itemizedlist" > < ul type = "disc" >
< li > < a href = "../adapters/unfused_rvalue_args.html" title = "unfused_rvalue_args" > < code class = "computeroutput" > < span class = "identifier" > unfused_rvalue_args< / span > < / code > < / a > < / li >
< li > < a href = "../../support/deduce.html" title = "deduce" > < code class = "computeroutput" > < span class = "identifier" > deduce< / span > < / code > < / a > < / li >
< li > < a href = "metafunctions.html#fusion.functional.generation.metafunctions.make_unfused_rvalue_args" title = "make_unfused_rvalue_args" > < code class = "computeroutput" > < span class = "identifier" > make_unfused_rvalue_args< / span > < / code > < / a > < / li >
< / ul > < / div >
< / div >
2007-02-15 23:11:24 +00:00
< / div >
< table xmlns:rev = "http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width = "100%" > < tr >
< td align = "left" > < / td >
< td align = "right" > < small > Copyright <20> 2001-2005 Joel de Guzman, Dan Marsden< / small > < / td >
< / tr > < / table >
< hr >
< div class = "spirit-nav" >
2007-02-25 21:12:10 +00:00
< a accesskey = "p" href = "../generation.html" > < img src = "../../../images/prev.png" alt = "Prev" > < / a > < a accesskey = "u" href = "../generation.html" > < img src = "../../../images/up.png" alt = "Up" > < / a > < a accesskey = "h" href = "../../../index.html" > < img src = "../../../images/home.png" alt = "Home" > < / a > < a accesskey = "n" href = "metafunctions.html" > < img src = "../../../images/next.png" alt = "Next" > < / a >
2007-02-15 23:11:24 +00:00
< / div >
< / body >
< / html >