Brendan Eich wrote:
> 
> > I have a simple question about IDL files.  It seems that all throughout
> > the mozilla source, IDL files contain CIDs, ContractIDs, and often
> > factory methods in %{C++ %} blocks.  These things correspond to a
> > particular implementation of the interface (or, in the case of
> > ContractIDs, to a particular class of implementations), right?

I think that putting the ContractID in the IDL file is a worthwhile
practice.  (In the absence of a more capable Component Description
Language.)  This makes it possible for component clients to instantiate
a component without having to search through C++ files.

There will of course be cases where multiple ContractIDs return a
component which implements a given interface, but in many cases today
there is only implementation of a given interface.  So listing a
"default" ContractID will be more helpful than not most of the time. 
But maybe I'm missing some long term consequences...

        - Mike.

Reply via email to