GNOME Bugzilla – Bug 640822
Overloaded this properties in C# are not tagged properly in XML output
Last modified: 2012-11-18 11:11:30 UTC
Created attachment 179517 [details] Doxygen config settings When a this statement is overloaded, the XML docs are not tagged properly, making it very difficult to distinguish one from the other. My sample code: ========================================= namespace Sample.API { /** New class docs. */ public class NewClass { /** <summary> * This docs. * </summary> * * <param name="ID"> * The ID parameter docs. * </param> */ override public object this[ int ID ] { get { return Value( ID ); } } /** More docs. * * <param name="str"> * The str parameter docs. * </param> */ override public object this[ string str ] { get { return Value( str ); } } } } The results: ========================================= The XML output only outputs the first This statement with the [int ID] argsstring and the "This docs" briefdescription. There is no argstring for string str, but the briefdescritpion for the 2nd This statement is documented as the detaileddescription of the first statement. There are also two parameterlists in the detaileddescription, one for ID and one for str. The following is the XML result of the above code: ========================================= <?xml version='1.0' encoding='UTF-8' standalone='no'?> <doxygen xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="compound.xsd" version="1.7.1"> <compounddef id="class_sample_1_1_a_p_i_1_1_new_class" kind="class" prot="public"> <compoundname>Sample::API::NewClass</compoundname> <sectiondef kind="property"> <memberdef kind="property" id="class_sample_1_1_a_p_i_1_1_new_class_1ae7767b702a759dade90e740baeb0daff" prot="public" static="no" readable="no" writable="no" gettable="yes" settable="no"> <type>override object</type> <definition>override object Sample::API.NewClass::this</definition> <argsstring>[int ID]</argsstring> <name>this</name> <briefdescription> <para>This docs. </para> </briefdescription> <detaileddescription> <para>More docs.</para><para><parameterlist kind="param"><parameteritem> <parameternamelist> <parametername>ID</parametername> </parameternamelist> <parameterdescription> <para>The ID parameter docs. </para></parameterdescription> </parameteritem> </parameterlist> </para><para><parameterlist kind="param"><parameteritem> <parameternamelist> <parametername>str</parametername> </parameternamelist> <parameterdescription> <para>The str parameter docs. </para></parameterdescription> </parameteritem> </parameterlist> </para> </detaileddescription> <inbodydescription> </inbodydescription> <location file="C:/Sample.cs" line="16" bodyfile="C:/Sample.cs" bodystart="14" bodyend="-1"/> </memberdef> </sectiondef> <briefdescription> <para>New class docs. </para> </briefdescription> <detaileddescription> </detaileddescription> <location file="C:/Sample.cs" line="4" bodyfile="C:/Sample.cs" bodystart="4" bodyend="28"/> <listofallmembers> <member refid="class_sample_1_1_a_p_i_1_1_new_class_1ae7767b702a759dade90e740baeb0daff" prot="public" virt="non-virtual"><scope>Sample::API::NewClass</scope><name>this</name></member> </listofallmembers> </compounddef> </doxygen> I've attached my configuration settings.
Confirmed. Should be fixed in the next subversion update.
*** Bug 642159 has been marked as a duplicate of this bug. ***
This bug was previously marked ASSIGNED, which means it should be fixed in doxygen version 1.7.4. Please verify if this is indeed the case. Reopen the bug if you think it is not fixed and please include any additional information that you think can be relevant.