I played around with about:components and modified it a little to call
getInterfaces().
Number of Mozilla objects: 768
Number implementing getInterfaces: 5
They are:
aggregateprincipal
codebaseprincipal
systemprincipal
@mozilla.org/js/xpc/Exception;1
certificateprincipal
It looks to me like classInfo is automatically generated but getInterfaces
must be manually implemented via NSGetInterfacesProcPtr in
nsModuleComponentInfo.
Microsoft typelibs contain coclass definitions with the interface list:
coclass HTMLOListElement {
[default] dispinterface DispHTMLOListElement;
[default, source] dispinterface HTMLElementEvents;
[source] dispinterface HTMLElementEvents2;
interface IHTMLElement;
interface IHTMLElement2;
interface IHTMLElement3;
interface IHTMLElement4;
interface IHTMLUniqueName;
interface IHTMLDOMNode;
interface IHTMLDOMNode2;
interface IHTMLListElement;
interface IHTMLListElement2;
interface IHTMLOListElement;
};
XPCOM appears to be missing the equivalent information.
---
Jon Smirl
[EMAIL PROTECTED]