$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r58375 - trunk/libs/proto/doc/reference
From: eric_at_[hidden]
Date: 2009-12-14 05:19:50
Author: eric_niebler
Date: 2009-12-14 05:19:49 EST (Mon, 14 Dec 2009)
New Revision: 58375
URL: http://svn.boost.org/trac/boost/changeset/58375
Log:
updated reference docs for fusion.hpp
Text files modified: 
   trunk/libs/proto/doc/reference/fusion.xml |   125 ++++++++++++++++++++++++++++++++------- 
   1 files changed, 101 insertions(+), 24 deletions(-)
Modified: trunk/libs/proto/doc/reference/fusion.xml
==============================================================================
--- trunk/libs/proto/doc/reference/fusion.xml	(original)
+++ trunk/libs/proto/doc/reference/fusion.xml	2009-12-14 05:19:49 EST (Mon, 14 Dec 2009)
@@ -32,15 +32,33 @@
               <template-arg>This(Expr)</template-arg>
             </specialization>
             <inherit>
-              <type>
-    <classname>proto::result_of::flatten</classname><
-      typename boost::remove_reference< Expr >::type
-    ></type>
+              <type>result< This(Expr const &) ></type>
+            </inherit>
+          </struct-specialization>
+          <struct-specialization name="result">
+            <template>
+              <template-type-parameter name="This"/>
+              <template-type-parameter name="Expr"/>
+            </template>
+            <specialization>
+              <template-arg>This(Expr &)</template-arg>
+            </specialization>
+            <inherit>
+              <type><classname>proto::result_of::flatten</classname>< Expr ></type>
             </inherit>
           </struct-specialization>
           <method-group name="public member functions">
             <method name="operator()" cv="const">
-              <type>typename <classname>proto::result_of::flatten</classname>< Expr const >::type</type>
+              <type>typename <classname>proto::result_of::flatten</classname>< Expr >::type const</type>
+              <template>
+                <template-type-parameter name="Expr"/>
+              </template>
+              <parameter name="expr">
+                <paramtype>Expr &</paramtype>
+              </parameter>
+            </method>
+            <method name="operator()" cv="const">
+              <type>typename <classname>proto::result_of::flatten</classname>< Expr const >::type const</type>
               <template>
                 <template-type-parameter name="Expr"/>
               </template>
@@ -78,21 +96,45 @@
               <template-arg>This(Expr)</template-arg>
             </specialization>
             <inherit>
-              <type>
-    fusion::result_of::pop_front<
-      typename boost::remove_reference< Expr >::type const
-    ></type>
+              <type>result< This(Expr const &) ></type>
+            </inherit>
+          </struct-specialization>
+          <struct-specialization name="result">
+            <template>
+              <template-type-parameter name="This"/>
+              <template-type-parameter name="Expr"/>
+            </template>
+            <specialization>
+              <template-arg>This(Expr &)</template-arg>
+            </specialization>
+            <inherit>
+              <type>fusion::result_of::pop_front< Expr ></type>
             </inherit>
           </struct-specialization>
           <method-group name="public member functions">
             <method name="operator()" cv="const">
-              <type>typename fusion::result_of::pop_front< Expr const  >::type</type>
+              <type>typename fusion::result_of::pop_front< Expr >::type</type>
+              <template>
+                <template-type-parameter name="Expr"/>
+              </template>
+              <parameter name="expr">
+                <paramtype>Expr &</paramtype>
+              </parameter>
+              <returns>
+                <para><computeroutput>fusion::pop_front(expr)</computeroutput></para>
+              </returns>
+            </method>
+            <method name="operator()" cv="const">
+              <type>typename fusion::result_of::pop_front< Expr const >::type</type>
               <template>
                 <template-type-parameter name="Expr"/>
               </template>
               <parameter name="expr">
                 <paramtype>Expr const &</paramtype>
               </parameter>
+              <returns>
+                <para><computeroutput>fusion::pop_front(expr)</computeroutput></para>
+              </returns>
             </method>
           </method-group>
         </struct>
@@ -123,21 +165,45 @@
               <template-arg>This(Expr)</template-arg>
             </specialization>
             <inherit>
-              <type>
-    fusion::result_of::reverse<
-      typename boost::remove_reference< Expr >::type const 
-    ></type>
+              <type>result< This(Expr const &) ></type>
+            </inherit>
+          </struct-specialization>
+          <struct-specialization name="result">
+            <template>
+              <template-type-parameter name="This"/>
+              <template-type-parameter name="Expr"/>
+            </template>
+            <specialization>
+              <template-arg>This(Expr &)</template-arg>
+            </specialization>
+            <inherit>
+              <type>fusion::result_of::reverse< Expr ></type>
             </inherit>
           </struct-specialization>
           <method-group name="public member functions">
             <method name="operator()" cv="const">
-              <type>typename fusion::result_of::reverse< Expr const  >::type</type>
+              <type>typename fusion::result_of::reverse< Expr >::type</type>
+              <template>
+                <template-type-parameter name="Expr"/>
+              </template>
+              <parameter name="expr">
+                <paramtype>Expr &</paramtype>
+              </parameter>
+              <returns>
+                <para><computeroutput>fusion::reverse(expr)</computeroutput></para>
+              </returns>
+            </method>
+            <method name="operator()" cv="const">
+              <type>typename fusion::result_of::reverse< Expr const >::type</type>
               <template>
                 <template-type-parameter name="Expr"/>
               </template>
               <parameter name="expr">
                 <paramtype>Expr const &</paramtype>
               </parameter>
+              <returns>
+                <para><computeroutput>fusion::reverse(expr)</computeroutput></para>
+              </returns>
             </method>
           </method-group>
         </struct>
@@ -158,14 +224,25 @@
       </namespace>
 
       <!-- proto::flatten() -->
-      <function name="flatten">
-        <type>typename <classname>proto::result_of::flatten</classname>< Expr const >::type</type>
-        <template>
-          <template-type-parameter name="Expr"/>
-        </template>
-        <parameter name="expr">
-          <paramtype>Expr const &</paramtype>
-        </parameter>
+      <overloaded-function name="flatten">
+        <signature>
+          <type>typename <classname>proto::result_of::flatten</classname>< Expr >::type const</type>
+          <template>
+            <template-type-parameter name="Expr"/>
+          </template>
+          <parameter name="expr">
+            <paramtype>Expr &</paramtype>
+          </parameter>
+        </signature>
+        <signature>
+          <type>typename <classname>proto::result_of::flatten</classname>< Expr const >::type const</type>
+          <template>
+            <template-type-parameter name="Expr"/>
+          </template>
+          <parameter name="expr">
+            <paramtype>Expr const &</paramtype>
+          </parameter>
+        </signature>
         <purpose>A function that returns a "flattened" view of a Proto expression tree. </purpose>
         <description>
           <para>
@@ -177,7 +254,7 @@
             <computeroutput>((a | b) | c)</computeroutput>.
           </para>
         </description>
-      </function>
+      </overloaded-function>
     </namespace>
   </namespace>
 </header>