This section explains how Doc-O-Matic composes topic IDs for symbol topics in natively supported language files.
A comment block in your source code is one symbol topic. Each topic has a unique ID. The ID of a symbol topic is the fully qualified name of the symbol.
The symbol ID of the following symbol
// The Sort function sorts the list.
bool MyList::Sort()
is MyList::Sort.
Note: In a project all symbols must have different topic IDs.
Functions and overloaded functions
If there are two functions with the same name the symbol names would not uniquely identify each function. Therefore functions are identified not only by their names but also by a combination of names plus a mangled list of their parameters. The ID for overloaded functions is the ID for the symbol appended by a "@" separated list of argument type names.
The symbol ID of the following symbols in C
int Max(int x; int y);
is Max@int@int.
Namespaces
Doc-O-Matic can use or not use namespace information in source files to extend symbol IDs of symbol declared within the namespace. In addition, you can use namespace usage information so that autolinking also works for symbols in other namespaces. To use namespace using information for the description inheritance feature, you need to turn on namespace usage separately. In this case the time required to process topics might be increased.