PATCH: Exclude C++ std::string/wstring from diagrams

Fredrik Orderud <[email protected]> Fri, 23 Dec 2011 09:33:06 +0100
Newsgroups gmane.text.doxygen.devel
Message-ID <CAHGmiitan0xvDRYM36KKvG_ny_0SMd7uO=NyN-ano7cQf8T9UA@mail.gmail.com>
The BUILTIN_STL_SUPPORT option is great for enabling doxygen to parse
C++ classes containing STL containers and smart-pointers. It does,
however, also lead to some "noise" in the diagrams; especially for
text strings. I don't personally see the big value of adding separate
boxes for e.g. std::string members in collaboration diagrams for
classes containing strings. Instead, text strings could be considered
a "primitive" type, like int, float etc.


Would it be possible to consider the STL string classes as "primitive"
types, and exclude them from collaboration (and possibly other)
diagrams?


A patch that attempts to do so is attached.

------------------------------------------------------------------------------
Write once. Port to many.
Get the SDK and tools to simplify cross-platform app development. Create 
new or port existing apps to sell to consumers worldwide. Explore the 
Intel AppUpSM program developer opportunity. appdeveloper.intel.com/join
http://p.sf.net/sfu/intel-appdev

_______________________________________________
Doxygen-develop mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/doxygen-develop
exclude_std_string.patch (application/octet-stream, 2.2 KB)
Index: src/doxygen.cpp
===================================================================
--- src/doxygen.cpp	(revision 793)
+++ src/doxygen.cpp	(working copy)
@@ -286,9 +286,9 @@
   { "wostringstream",       "basic_ostringstream<wchar_t>", 0,                     0,             0,             0,            0,             FALSE,              FALSE },
   { "stringstream",         "basic_stringstream<char>",     0,                     0,             0,             0,            0,             FALSE,              FALSE },
   { "wstringstream",        "basic_stringstream<wchar_t>",  0,                     0,             0,             0,            0,             FALSE,              FALSE },
-  { "basic_string",         0,                              0,                     "Char",        0,             0,            0,             FALSE,              TRUE  },
-  { "string",               "basic_string<char>",           0,                     0,             0,             0,            0,             FALSE,              TRUE  },
-  { "wstring",              "basic_string<wchar_t>",        0,                     0,             0,             0,            0,             FALSE,              TRUE  },
+//  { "basic_string",         0,                              0,                     "Char",        0,             0,            0,             FALSE,              TRUE  },  // consider text strings a primitive types
+//  { "string",               "basic_string<char>",           0,                     0,             0,             0,            0,             FALSE,              TRUE  },
+//  { "wstring",              "basic_string<wchar_t>",        0,                     0,             0,             0,            0,             FALSE,              TRUE  },
   { "complex",              0,                              0,                     0,             0,             0,            0,             FALSE,              FALSE },
   { "bitset",               0,                              0,                     "Bits",        0,             0,            0,             FALSE,              FALSE },
   { "deque",                0,                              0,                     "T",           "elements",    0,            0,             FALSE,              TRUE  },