Ticket #780 (closed enhancement: fixed)

Opened 2 years ago

Last modified 2 months ago

Perform Doxygen-like name mangling

Reported by: dirk@users.sf.net Assigned to: cboos
Priority: normal Component: DoxygenPlugin
Severity: normal Keywords:
Cc: Trac Release: 0.11

Description

The current version has problems finding named objects in namespaces, as doxygen encodes '::' as '_1_1' in the filename and some other characters, too (see utils.cpp:escapeCharsInString()). The following patch fixes it. I had to do a few things differently, as you can't have spaces in a WikiLink?, but doxygen maps TypeTrait<bool> to TypeTrait< bool >. Currently the mapper adds the spaces (resp. their code), to make doxygen:TypeTrait<bool> work right. This might barf in other languages or other situations, but seems to work ok for now.

It also adds a default namespace option to the .ini that is searched if the global name is not found. This simplifies support for system where everything is in a common namespace.

Hope it helps

Dirk

Attachments

doxygen_namespace.diff (2.7 kB) - added by dirk@users.sf.net on 10/08/06 16:54:52.
namespace search patch
doxygenplugin_dr.zip (75.3 kB) - added by dirk@users.sf.net on 11/25/07 16:13:02.
Full code for extended plugin
doxygen_namemangling.patch (2.3 kB) - added by Giel van Schijndel <me@mortis.eu> on 04/22/08 17:05:41.
Unified diff version of ticket:780:doxygen_namespace.diff

Change History

10/08/06 16:54:52 changed by dirk@users.sf.net

  • attachment doxygen_namespace.diff added.

namespace search patch

(follow-up: ↓ 2 ) 11/15/07 03:25:37 changed by Emlyn.Corrin@cern.ch

I can't seem to download the diff file (it just links to a page saying when it was added), could somebody send it to me? All my code is inside a namespace, so this patch would really make doxygenplugin much more useful to me.

Thanks, Emlyn

11/25/07 16:13:02 changed by dirk@users.sf.net

  • attachment doxygenplugin_dr.zip added.

Full code for extended plugin

(in reply to: ↑ 1 ) 11/25/07 16:13:44 changed by dirk@users.sf.net

Replying to Emlyn.Corrin@cern.ch:

I can't seem to download the diff file (it just links to a page saying when it was added), could somebody send it to me?

Hm, not sure what went wrong there. I attached a full version of the code.

Hope it helps

Dirk

04/22/08 17:04:14 changed by Giel van Schijndel <me@mortis.eu>

  • summary changed from Searching for named objects in namespaces support to Perform Doxygen-like name mangling.

Attached a unified diff version of the above patch ticket:780:doxygen_namespace.diff. This patch basically performs some name mangling in a similar way to how Doxygen does it.

04/22/08 17:05:41 changed by Giel van Schijndel <me@mortis.eu>

  • attachment doxygen_namemangling.patch added.

Unified diff version of ticket:780:doxygen_namespace.diff

05/29/08 05:07:54 changed by cboos

  • status changed from new to closed.
  • resolution set to fixed.

(In [3735]) 0.11: emulate doxygen name mangling (patch by dirk@users.sf.net, closes #780)

05/29/08 05:13:36 changed by cboos

  • release changed from 0.10 to 0.11.

Add/Change #780 (Perform Doxygen-like name mangling)




Change Properties
Action