<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to AutomatedBehaviour</title><link>https://sourceforge.net/p/xml-cpp-class-generator/wiki/AutomatedBehaviour/</link><description>Recent changes to AutomatedBehaviour</description><atom:link href="https://sourceforge.net/p/xml-cpp-class-generator/wiki/AutomatedBehaviour/feed" rel="self"/><language>en</language><lastBuildDate>Sat, 23 Apr 2016 11:18:44 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/xml-cpp-class-generator/wiki/AutomatedBehaviour/feed" rel="self" type="application/rss+xml"/><item><title>AutomatedBehaviour modified by Johan Luisier</title><link>https://sourceforge.net/p/xml-cpp-class-generator/wiki/AutomatedBehaviour/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v3
+++ v4
@@ -32,10 +32,10 @@
         const type&amp;amp; myMember() const;
 ```
 is created, with an appropriated comment. 
-  * the "standard setter", i.e. 
+  * the "standard setter", i.e.
 ```cpp  
         void setMyMember( const type&amp;amp; myMember );
-```cpp
+```
 is created with correct comment. 
   * the "pointer getter", i.e. 
 ```cpp
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Johan Luisier</dc:creator><pubDate>Sat, 23 Apr 2016 11:18:44 -0000</pubDate><guid>https://sourceforge.neta203821e5f19849b6067bbdf844e1fcbcaaeb059</guid></item><item><title>AutomatedBehaviour modified by Johan Luisier</title><link>https://sourceforge.net/p/xml-cpp-class-generator/wiki/AutomatedBehaviour/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v2
+++ v3
@@ -13,7 +13,7 @@
 and a method 
 ```cpp
      bool myMethod( const int&amp;amp; arg1, unsigned&amp;amp; arg2 ) const;
-```cpp
+```

 Automated behaviours are a key feature of XmlCppClassGenerator: for instance [automatic methods](AutomatedBehaviour#Automatic_methods) can be generated from the class members, the constructors' bodies are generated from the parent class(es) and the members, and the [comments](AutomatedBehaviour#Comments) can also be generated automatically (partially of course, XmlCppClassGenerator will not guess what you want to be written in the comment) for instance. 

&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Johan Luisier</dc:creator><pubDate>Sat, 23 Apr 2016 11:18:07 -0000</pubDate><guid>https://sourceforge.nete133ea1f63b4a0adb7ccd4e937bd6925a04c3fc4</guid></item><item><title>AutomatedBehaviour modified by Johan Luisier</title><link>https://sourceforge.net/p/xml-cpp-class-generator/wiki/AutomatedBehaviour/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v1
+++ v2
@@ -1,18 +1,19 @@
 [Navigate through the wiki](WikiMap)

 In the following text, a the following class is assumed: 
-    
+```cpp
     class MyClass : public MyParentClass
-
+```
 This class is assumed to have members: 
-    
+```cpp
      type MyMember;
      anotherType MyOtherMember;
      // yetAnotherType MyInheritedMember is inherited from MyParentClass
-
+```
 and a method 
-    
+```cpp
      bool myMethod( const int&amp;amp; arg1, unsigned&amp;amp; arg2 ) const;
+```cpp

 Automated behaviours are a key feature of XmlCppClassGenerator: for instance [automatic methods](AutomatedBehaviour#Automatic_methods) can be generated from the class members, the constructors' bodies are generated from the parent class(es) and the members, and the [comments](AutomatedBehaviour#Comments) can also be generated automatically (partially of course, XmlCppClassGenerator will not guess what you want to be written in the comment) for instance. 

@@ -27,58 +28,58 @@
 For each member added to a class, up to four method can be added automatically, without any additional `&amp;lt;method&amp;gt;` elements. These methods are: 

   * the "standard getter", i.e. 
-        
+```cpp        
         const type&amp;amp; myMember() const;
-
+```
 is created, with an appropriated comment. 
   * the "standard setter", i.e. 
-        
+```cpp  
         void setMyMember( const type&amp;amp; myMember );
-
+```cpp
 is created with correct comment. 
   * the "pointer getter", i.e. 
-        
+```cpp
         const type* myMemberPtr() const;
-
+```
 is created with correct comment. 
   * the "pointer setter", i.e. 
-        
+```cpp  
         void setMyMemberPtr( const type* myMember );
-
+```
 is created with correct comment. 

 Unrelated to member, there are other automatic methods: 

   * A virtual destructor is created, i.e. 
-        
+```cpp  
         virtual ~!MyClass();
-
+```
   * the affectation operator, i.e. 
-        
+```cpp  
          MyClass&amp;amp; operator=( const MyClass myClass );
-
+```
   * The comparison operator, i.e. 
-        
+```cpp  
          MyClass&amp;amp; MyClass::operator==( const MyClass&amp;amp; myClass ) const;
-
+```
 [Back on top](AutomatedBehaviour)

 # Automatic body construction

 For _any_ generated constructor, the following body will be created: 
-    
+```cpp
      MyClass::MyClass( /* any arguments */ )
       : MyParentClass( ), MyMember( ), MyOtherMember( )
      {}
-
+```
 Additionally, a copy constructor can be added, and it body it also automatically generated: 
-    
+```cpp
      MyClass::MyClass( const MyClass&amp;amp; myClass )
       : MyParentClass( myClass ), MyMember( myClass.myMember() ), MyOtherMember( myClass.myOtherMember() )
      {}
-
+```
 The affectation operator body is: 
-    
+```cpp
      MyClass&amp;amp; MyClass::operator=( const MyClass&amp;amp; myClass )
      {
        this -&amp;gt; MyParentClass::operator=( myClass );
@@ -86,9 +87,9 @@
        MyOtherMember = myClass.myOtherMember();
        return *this;
      }
-
+```
 The comparison operator is:
-    
+```cpp
      MyClass&amp;amp; MyClass::operator==( const MyClass&amp;amp; myClass ) const
      {
        if ( ! this -&amp;gt; MyParentClass::operator==( myClass ) )
@@ -98,26 +99,26 @@
          return true;
        return false;
      }
-
+```
 [Back on top](AutomatedBehaviour)

 # Comments

 For each constructor, method and member a minimalist doxygen comment is added if `&amp;lt;comments&amp;gt; false &amp;lt;/comments&amp;gt;` is not present in the XML class description file. For the members, the comments are empty, i.e.:
-    
+```cpp
      /** 
       * 
       */
-
+```
 For methods, the list of arguments is used: 
-    
+```cpp
      /** 
       * 
       * @param[in] arg1
       * @param[out] arg2
       */
      bool myMethod( const int&amp;amp; arg1, unsigned&amp;amp; arg2 ) const;
-
+```
 Note that the `[in]`/`[out]` option is guessed from the `const` and `&amp;amp;` type modifier of the argument, which can lead to wrong identification. 

 For constructors / destructor, the first list contains either "Constructor" or "Destructor" (or the appropriate translation). 
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Johan Luisier</dc:creator><pubDate>Sat, 23 Apr 2016 11:17:16 -0000</pubDate><guid>https://sourceforge.nete695ebdde577d9e5a00c1395b783fae5520d0815</guid></item><item><title>AutomatedBehaviour modified by Anonymous</title><link>https://sourceforge.net/p/generatecppfomxml/wiki/AutomatedBehaviour/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;&lt;a class="" href="/p/generatecppfomxml/wiki/WikiMap"&gt;Navigate through the wiki&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;In the following text, a the following class is assumed: &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="n"&gt;class&lt;/span&gt; &lt;span class="n"&gt;MyClass&lt;/span&gt; &lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="n"&gt;public&lt;/span&gt; &lt;span class="n"&gt;MyParentClass&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;This class is assumed to have members: &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt; &lt;span class="n"&gt;type&lt;/span&gt; &lt;span class="n"&gt;MyMember&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
 &lt;span class="n"&gt;anotherType&lt;/span&gt; &lt;span class="n"&gt;MyOtherMember&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
 &lt;span class="c1"&gt;// yetAnotherType MyInheritedMember is inherited from MyParentClass&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;and a method &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt; &lt;span class="kt"&gt;bool&lt;/span&gt; &lt;span class="n"&gt;myMethod&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="k"&gt;const&lt;/span&gt; &lt;span class="kt"&gt;int&lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&lt;/span&gt; &lt;span class="n"&gt;arg1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="kt"&gt;unsigned&lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&lt;/span&gt; &lt;span class="n"&gt;arg2&lt;/span&gt; &lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;const&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Automated behaviours are a key feature of XmlCppClassGenerator: for instance &lt;a class="" href="../AutomatedBehaviour#Automatic_methods"&gt;automatic methods&lt;/a&gt; can be generated from the class members, the constructors' bodies are generated from the parent class(es) and the members, and the &lt;a class="" href="../AutomatedBehaviour#Comments"&gt;comments&lt;/a&gt; can also be generated automatically (partially of course, XmlCppClassGenerator will not guess what you want to be written in the comment) for instance. &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Table of contents:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Automatic methods&lt;/li&gt;
&lt;li&gt;Automatic body construction&lt;/li&gt;
&lt;li&gt;Comments&lt;/li&gt;
&lt;/ul&gt;
&lt;h1 id="automatic-methods"&gt;Automatic methods&lt;/h1&gt;
&lt;p&gt;For each member added to a class, up to four method can be added automatically, without any additional &lt;code&gt;&amp;lt;method&amp;gt;&lt;/code&gt; elements. These methods are: &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;the "standard getter", i.e. &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="k"&gt;const&lt;/span&gt; &lt;span class="n"&gt;type&lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&lt;/span&gt; &lt;span class="n"&gt;myMember&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="k"&gt;const&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;is created, with an appropriated comment. &lt;br /&gt;
  * the "standard setter", i.e. &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;    &lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;setMyMember&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="k"&gt;const&lt;/span&gt; &lt;span class="n"&gt;type&lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&lt;/span&gt; &lt;span class="n"&gt;myMember&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;is created with correct comment. &lt;br /&gt;
  * the "pointer getter", i.e. &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;    &lt;span class="k"&gt;const&lt;/span&gt; &lt;span class="n"&gt;type&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;myMemberPtr&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="k"&gt;const&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;is created with correct comment. &lt;br /&gt;
  * the "pointer setter", i.e. &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;    &lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;setMyMemberPtr&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="k"&gt;const&lt;/span&gt; &lt;span class="n"&gt;type&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;myMember&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;is created with correct comment. &lt;/p&gt;
&lt;p&gt;Unrelated to member, there are other automatic methods: &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;A virtual destructor is created, i.e. &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="n"&gt;virtual&lt;/span&gt; &lt;span class="o"&gt;~!&lt;/span&gt;&lt;span class="n"&gt;MyClass&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;the affectation operator, i.e. &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt; &lt;span class="n"&gt;MyClass&lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&lt;/span&gt; &lt;span class="n"&gt;operator&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="k"&gt;const&lt;/span&gt; &lt;span class="n"&gt;MyClass&lt;/span&gt; &lt;span class="n"&gt;myClass&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The comparison operator, i.e. &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt; &lt;span class="n"&gt;MyClass&lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&lt;/span&gt; &lt;span class="n"&gt;MyClass&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="n"&gt;operator&lt;/span&gt;&lt;span class="o"&gt;==&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="k"&gt;const&lt;/span&gt; &lt;span class="n"&gt;MyClass&lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&lt;/span&gt; &lt;span class="n"&gt;myClass&lt;/span&gt; &lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;const&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a class="" href="/p/generatecppfomxml/wiki/AutomatedBehaviour"&gt;Back on top&lt;/a&gt;&lt;/p&gt;
&lt;h1 id="automatic-body-construction"&gt;Automatic body construction&lt;/h1&gt;
&lt;p&gt;For &lt;em&gt;any&lt;/em&gt; generated constructor, the following body will be created: &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt; &lt;span class="n"&gt;MyClass&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="n"&gt;MyClass&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="cm"&gt;/* any arguments */&lt;/span&gt; &lt;span class="p"&gt;)&lt;/span&gt;
  &lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="n"&gt;MyParentClass&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="p"&gt;),&lt;/span&gt; &lt;span class="n"&gt;MyMember&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="p"&gt;),&lt;/span&gt; &lt;span class="n"&gt;MyOtherMember&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="p"&gt;)&lt;/span&gt;
 &lt;span class="p"&gt;{}&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Additionally, a copy constructor can be added, and it body it also automatically generated: &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt; &lt;span class="n"&gt;MyClass&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="n"&gt;MyClass&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="k"&gt;const&lt;/span&gt; &lt;span class="n"&gt;MyClass&lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&lt;/span&gt; &lt;span class="n"&gt;myClass&lt;/span&gt; &lt;span class="p"&gt;)&lt;/span&gt;
  &lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="n"&gt;MyParentClass&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="n"&gt;myClass&lt;/span&gt; &lt;span class="p"&gt;),&lt;/span&gt; &lt;span class="n"&gt;MyMember&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="n"&gt;myClass&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;myMember&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;),&lt;/span&gt; &lt;span class="n"&gt;MyOtherMember&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="n"&gt;myClass&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;myOtherMember&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;)&lt;/span&gt;
 &lt;span class="p"&gt;{}&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;The affectation operator body is: &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt; &lt;span class="n"&gt;MyClass&lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&lt;/span&gt; &lt;span class="n"&gt;MyClass&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="n"&gt;operator&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="k"&gt;const&lt;/span&gt; &lt;span class="n"&gt;MyClass&lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&lt;/span&gt; &lt;span class="n"&gt;myClass&lt;/span&gt; &lt;span class="p"&gt;)&lt;/span&gt;
 &lt;span class="p"&gt;{&lt;/span&gt;
   &lt;span class="n"&gt;this&lt;/span&gt; &lt;span class="o"&gt;-&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;MyParentClass&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="n"&gt;operator&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="n"&gt;myClass&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
   &lt;span class="n"&gt;MyMember&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;myClass&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;myMember&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
   &lt;span class="n"&gt;MyOtherMember&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;myClass&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;myOtherMember&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
   &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="n"&gt;this&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
 &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;The comparison operator is:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt; &lt;span class="n"&gt;MyClass&lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&lt;/span&gt; &lt;span class="n"&gt;MyClass&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="n"&gt;operator&lt;/span&gt;&lt;span class="o"&gt;==&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="k"&gt;const&lt;/span&gt; &lt;span class="n"&gt;MyClass&lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&lt;/span&gt; &lt;span class="n"&gt;myClass&lt;/span&gt; &lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;const&lt;/span&gt;
 &lt;span class="p"&gt;{&lt;/span&gt;
   &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="o"&gt;!&lt;/span&gt; &lt;span class="n"&gt;this&lt;/span&gt; &lt;span class="o"&gt;-&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;MyParentClass&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="n"&gt;operator&lt;/span&gt;&lt;span class="o"&gt;==&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="n"&gt;myClass&lt;/span&gt; &lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;)&lt;/span&gt;
     &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nb"&gt;false&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
   &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="n"&gt;MyMember&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="n"&gt;myClass&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;myMember&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; 
        &lt;span class="n"&gt;MyOtherMember&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="n"&gt;myClass&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;myOtherMember&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;)&lt;/span&gt;
     &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nb"&gt;true&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
   &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nb"&gt;false&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
 &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;&lt;a class="" href="/p/generatecppfomxml/wiki/AutomatedBehaviour"&gt;Back on top&lt;/a&gt;&lt;/p&gt;
&lt;h1 id="comments"&gt;Comments&lt;/h1&gt;
&lt;p&gt;For each constructor, method and member a minimalist doxygen comment is added if &lt;code&gt;&amp;lt;comments&amp;gt; false &amp;lt;/comments&amp;gt;&lt;/code&gt; is not present in the XML class description file. For the members, the comments are empty, i.e.:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt; &lt;span class="cm"&gt;/** &lt;/span&gt;
&lt;span class="cm"&gt;  * &lt;/span&gt;
&lt;span class="cm"&gt;  */&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;For methods, the list of arguments is used: &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt; &lt;span class="cm"&gt;/** &lt;/span&gt;
&lt;span class="cm"&gt;  * &lt;/span&gt;
&lt;span class="cm"&gt;  * @param[in] arg1&lt;/span&gt;
&lt;span class="cm"&gt;  * @param[out] arg2&lt;/span&gt;
&lt;span class="cm"&gt;  */&lt;/span&gt;
 &lt;span class="kt"&gt;bool&lt;/span&gt; &lt;span class="n"&gt;myMethod&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="k"&gt;const&lt;/span&gt; &lt;span class="kt"&gt;int&lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&lt;/span&gt; &lt;span class="n"&gt;arg1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="kt"&gt;unsigned&lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&lt;/span&gt; &lt;span class="n"&gt;arg2&lt;/span&gt; &lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;const&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Note that the &lt;code&gt;[in]&lt;/code&gt;/&lt;code&gt;[out]&lt;/code&gt; option is guessed from the &lt;code&gt;const&lt;/code&gt; and &lt;code&gt;&amp;amp;&lt;/code&gt; type modifier of the argument, which can lead to wrong identification. &lt;/p&gt;
&lt;p&gt;For constructors / destructor, the first list contains either "Constructor" or "Destructor" (or the appropriate translation). &lt;/p&gt;
&lt;p&gt;&lt;a class="" href="/p/generatecppfomxml/wiki/AutomatedBehaviour"&gt;Back on top&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Anonymous</dc:creator><pubDate>Fri, 13 Mar 2015 07:17:23 -0000</pubDate><guid>https://sourceforge.net0938ac3755df031457b4a91594f1bbc40ee4d339</guid></item></channel></rss>