1<?xml version="1.0" encoding="utf-8"?> 2<!-- 3 Copyright 2012 Eric Niebler 4 5 Distributed under the Boost 6 Software License, Version 1.0. (See accompanying 7 file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 8 --> 9<header name="boost/proto/functional/fusion/reverse.hpp"> 10 <para>Includes Proto callable <computeroutput><classname>boost::proto::functional::reverse</classname></computeroutput>.</para> 11 12 <namespace name="boost"> 13 <namespace name="proto"> 14 <namespace name="functional"> 15 16 <!-- proto::functional::reverse --> 17 <struct name="reverse"> 18 <purpose>A <conceptname>PolymorphicFunctionObject</conceptname> type that invokes the 19 <computeroutput>fusion::reverse()</computeroutput> algorithm on its argument. 20 </purpose> 21 <description> 22 <para> 23 A <conceptname>PolymorphicFunctionObject</conceptname> type that invokes the 24 <computeroutput>fusion::reverse()</computeroutput> algorithm on its argument. This is 25 useful for defining a <conceptname>CallableTransform</conceptname> like 26 <computeroutput>reverse(_)</computeroutput>, which reverses the order of the children 27 of a Proto expression node. 28 </para> 29 </description> 30 <inherit> 31 <type><classname>proto::callable</classname></type> 32 </inherit> 33 <struct-specialization name="result"> 34 <template> 35 <template-type-parameter name="This"/> 36 <template-type-parameter name="Seq"/> 37 </template> 38 <specialization> 39 <template-arg>This(Seq)</template-arg> 40 </specialization> 41 <inherit> 42 <type>result< This(Seq const &) ></type> 43 </inherit> 44 </struct-specialization> 45 <struct-specialization name="result"> 46 <template> 47 <template-type-parameter name="This"/> 48 <template-type-parameter name="Seq"/> 49 </template> 50 <specialization> 51 <template-arg>This(Seq &)</template-arg> 52 </specialization> 53 <inherit> 54 <type>fusion::result_of::reverse< Seq ></type> 55 </inherit> 56 </struct-specialization> 57 <method-group name="public member functions"> 58 <method name="operator()" cv="const"> 59 <type>typename fusion::result_of::reverse< Seq >::type</type> 60 <template> 61 <template-type-parameter name="Seq"/> 62 </template> 63 <parameter name="seq"> 64 <paramtype>Seq &</paramtype> 65 </parameter> 66 <returns> 67 <para><computeroutput>fusion::reverse(seq)</computeroutput></para> 68 </returns> 69 </method> 70 <method name="operator()" cv="const"> 71 <type>typename fusion::result_of::reverse< Seq const >::type</type> 72 <template> 73 <template-type-parameter name="Seq"/> 74 </template> 75 <parameter name="seq"> 76 <paramtype>Seq const &</paramtype> 77 </parameter> 78 <returns> 79 <para><computeroutput>fusion::reverse(seq)</computeroutput></para> 80 </returns> 81 </method> 82 </method-group> 83 </struct> 84 85 </namespace> 86 </namespace> 87 </namespace> 88</header> 89