Opened 11 years ago

Closed 9 years ago

Perform Doxygen-like name mangling

Reported by: Owned by: dirk@… Christian Boos normal DoxygenPlugin normal 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

Changed 11 years ago by dirk@…

namespace search patch

comment:1 follow-up:  2 Changed 10 years ago by Emlyn.Corrin@…

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

Changed 10 years ago by dirk@…

Full code for extended plugin

comment:2 in reply to:  1 Changed 10 years ago by dirk@…

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

comment:3 Changed 9 years ago by Giel van Schijndel

Summary: Searching for named objects in namespaces support → 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.

Changed 9 years ago by Giel van Schijndel

Unified diff version of ticket:780:doxygen_namespace.diff

comment:4 Changed 9 years ago by Christian Boos

Resolution: → fixed new → closed

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

comment:5 Changed 9 years ago by Christian Boos

Trac Release: 0.10 → 0.11

Modify Ticket

Change Properties