xpidl emits info only for the interfaces in the primary file passed on the command line. It does this for all the modes it uses to emit info. In most cases it would be bad to redundantly emit that super-interface data along with the sub-interface data; e.g. multiple C++ class declarations would not be helpful. And, xpidl does not generally need to have *full* information about super-interfaces in order to do its job. Except for the inheritence from nsISupports, it is relatively rare to have inheritence relationships between interfaces anyway.

When you say 'code', I'm assuming you mean the commented out boilerplate implementation code that is emitted when emitting headers. I don't imagine many people make use of that. *I* wanted it so I wrote the code to emit it. There was even suggestion by some that we remove it to reduce the compile time workload on some compilers. Having to manually open a second file to copy in super-interface boilerplate can't be that much of a hardship :)

John.

Vitaly Kuvaev wrote:
Hi,

Suppose I have an interface IFirst declared, and an interface ISecond derived from IFirst. When compiling the ISecond, why doesn't XPIDL emit code for the IFirst? I have to go to IFirst.h and copy the relevant code from there.

Hope the question is understandable. :)

Thanks,
-- Vitaly
_______________________________________________
dev-tech-xpcom mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-tech-xpcom

Reply via email to