[fpc-devel] FPDoc imports

Michael Van Canneyt michael at freepascal.org
Tue Jan 31 15:32:50 CET 2012

On Tue, 31 Jan 2012, Hans-Peter Diettrich wrote:

> Michael Van Canneyt schrieb:
>> On Tue, 31 Jan 2012, Hans-Peter Diettrich wrote:
>>> In an attempt to help improve fpdoc I'm blocked in understanding the 
>>> handling of imported modules. The content files are imported into the link 
>>> tree, but this tree seems not to be used in finding external identifiers?
>> The content files are converted to 2 kinds of trees:
>> - A TPasElement tree. - A link tree.
>> The link tree is used in TFPDocEngine.ResolveLink and 
>> THTMLWriter.ResolveLinkID
>> The paselement tree is used by the parser to find identifiers (classes 
>> mostly, for inheritance trees), so there are less TPasUnsolvedTypeRef 
>> instances.
> This would explain why the System unit never is found - it seems not to 
> contain any classes.
>>> Would it help if I try to create packages from the imports?
>> No.
> Seems like I misinterpreted the many "unit not found" :-(


> I still wonder why the number of units in the imported RTL package increases 
> over time. Initially it contains 7 modules, and 38 modules in the end, where 
> the RTL currently consists of 46 units. 6 of the initial modules contain 
> classes, but I couldn't find the 7th module "iostream" anywhere, which is the 
> first module in the list.
> For the input file order: as long as the user has no idea how to order the 
> files, fpdoc should do that for him. Or, in Unix tradition, supply an app 
> that sorts the units ;-)

Nono, the parser will need to take care of this. 
fpdoc is not the only application that uses fcl-passrc.

It's planned.


More information about the fpc-devel mailing list