зеркало из https://github.com/mozilla/gecko-dev.git
1d1f9dcdb0
This patch removes C++ code related to reading in XPT information from files. (Code related to packaging XPT files will be removed in the next patch.) This includes code in the manifest parser, in addition to the actual code for parsing files. XPT information is now loaded directly from a single static data structure, XPTHeader::kHeader, which will be automatically generated at compile time from .idl files (via .xpt files). Note that the script to do that is not added until part 6 of this patch series, so linking will fail on parts 2 through 5. I inlined XPTInterfaceInfoManager::RegisterXPTHeader into the ctor, because that is the only caller. It feels like the lock there should not be needed any more, but I left it alone for now. The forward declaration of XPTArena in xptiprivate.h is needed because it was being bootlegged via xpt_xdr.h. Some of the data structures in reflect/xptinfo/ (which wrap the xpt_struct.h data structures) are still allocated using XPTArena. Hopefully we can get rid of that in followup work. I also deleted a lot of comments in xpt_struct.h that talk about the on-disk format. I also deleted checking of the major version number, because that should not matter when the XPT information is baked into the executable. MozReview-Commit-ID: 6NJdaCWRBhU --HG-- extra : rebase_source : 6512a05f2a8bee1e6e6b0423d2cb376d8c34728b |
||
---|---|---|
.. | ||
GenericFactory.cpp | ||
GenericFactory.h | ||
ManifestParser.cpp | ||
ManifestParser.h | ||
Module.h | ||
ModuleLoader.h | ||
ModuleUtils.h | ||
moz.build | ||
nsCategoryCache.cpp | ||
nsCategoryCache.h | ||
nsCategoryManager.cpp | ||
nsCategoryManager.h | ||
nsCategoryManagerUtils.h | ||
nsComponentManager.cpp | ||
nsComponentManager.h | ||
nsComponentManagerUtils.cpp | ||
nsComponentManagerUtils.h | ||
nsICategoryManager.idl | ||
nsIClassInfo.idl | ||
nsIComponentManager.idl | ||
nsIComponentRegistrar.idl | ||
nsIFactory.idl | ||
nsIModule.idl | ||
nsIServiceManager.idl | ||
nsServiceManagerUtils.h |