From: Wim C. <wc...@gm...> - 2006-10-23 04:34:54
|
Your assembly does not contain metadata for those functions because it is a "mixed assembly" with both dotnet IL instructions and native instructions, something which only occurs when compiling "c++ with managed extensions" as far as I can tell. The native part has no dotnet metadata, and is thus invisible to other dotnet assemblies, like the reflector or ndoc application. I would try to move or wrap one of those global function in a static method of a __gc class called "GlobalFuncs", and document it there. Since the "GlobalFuncs" class is managed, it should be visible to ndoc. 2006/10/19, Wilson Robin T <rob...@br...>: > Hi, > > Thanks for your response - sorry for the delay in replying, I've been out of > the office for quite a while. > > I've had a look with the .Net Reflector, and I can't find my standalone > functions in there at all! I'm not sure how my program is working then...I > am using Visual C++ .Net and have some old-style C++ global functions which > don't seem to be appearing in the reflector, but the code is accessing them > fine! How weird! > > Dose anyone know if there's any way I can get them to appear in the > reflector? Or, if there's any way that I can get them to be documented using > NDoc? > > Cheers, > > Robin > > -----Original Message----- > From: Wim Coenen [mailto:wc...@gm...] > Sent: 09 October 2006 16:26 > To: Wilson Robin T > Cc: ndo...@li... > Subject: Re: [Ndoc-users] Documenting functions which are *not* in a class > > 2006/10/6, Wilson Robin T > <rob...@br...>: > > I have lots of functions which are just in separate .cpp files with no > > membership of a class (or even a namespace - though I wouldn't mind > > making them members of a namespace if that would help). Is there any > > way to document these functions using NDoc? If I look at the XML that > > Visual Studio spits out then it does list those functions which aren't > > in a class - NDoc just doesn't seem to do anything with it. > > > > I don't use visual studio or write code in c++, so I obviously cannot > reproduce this problem. However, I do know that dotNET assemblies never > contain standalone functions. Dotnet compilers for languages which do have > this feature (e.g. delphi) have to put such functions in a special class. > > Now if NDOC encounters a member element which for some reason does not match > the CLR metadata of anything in the compiled assembly, then it will ignore > the element. To find out if this is your problem, take a look at your > assembly (e.g. with Lutz Roeder's .NET Reflector), find out in which > namespace+class your function ended up, and then compare that with the XML > element. > > That should shed some more light on the cause of your problem. > > HTH, > Wim Coenen. |