From 537befbb2fd5f1587f7c9cd8c55498d29b713770 Mon Sep 17 00:00:00 2001 From: Michael Stahl Date: Mon, 17 Nov 2014 15:36:35 +0100 Subject: cppumaker: only include rtl/instance.hxx and mutex.hxx when necessary Change-Id: Ib21a3cfe4b02e421f8848a6e2cca4e2a1c04adb9 --- codemaker/source/cppumaker/cpputype.cxx | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/codemaker/source/cppumaker/cpputype.cxx b/codemaker/source/cppumaker/cpputype.cxx index 5887635e9841..ccd908d36dae 100644 --- a/codemaker/source/cppumaker/cpputype.cxx +++ b/codemaker/source/cppumaker/cpputype.cxx @@ -473,8 +473,6 @@ void CppuType::addDefaultHxxIncludes(codemaker::cppumaker::Includes & includes) const { //TODO: Only include what is really needed - includes.addRtlInstanceHxx(); - includes.addOslMutexHxx(); includes.addType(); if (m_typeMgr->getSort(name_) == codemaker::UnoType::SORT_INTERFACE_TYPE) @@ -1383,6 +1381,8 @@ void InterfaceType::addComprehensiveGetCppuTypeIncludes( // The comprehensive getCppuType method always includes a line // "getCppuType( (const ::css::uno::RuntimeException*)0 );": includes.addCppuUnotypeHxx(); + includes.addRtlInstanceHxx(); // using rtl::StaticWithInit + includes.addOslMutexHxx(); includes.add("com.sun.star.uno.RuntimeException"); } @@ -2131,7 +2131,6 @@ void PlainStructType::addComprehensiveGetCppuTypeIncludes( includes.addType(); includes.addCppuUnotypeHxx(); includes.addRtlInstanceHxx(); - includes.addOslMutexHxx(); includes.addRtlUstringH(); includes.addRtlUstringHxx(); includes.addSalTypesH(); @@ -2602,7 +2601,6 @@ void PolyStructType::addComprehensiveGetCppuTypeIncludes( includes.addType(); includes.addCppuUnotypeHxx(); includes.addRtlInstanceHxx(); - includes.addOslMutexHxx(); includes.addRtlUstringH(); includes.addRtlUstringHxx(); includes.addSalTypesH(); @@ -2669,6 +2667,9 @@ private: virtual void dumpHxxFile( FileStream & out, codemaker::cppumaker::Includes & includes) SAL_OVERRIDE; + virtual void addComprehensiveGetCppuTypeIncludes( + codemaker::cppumaker::Includes & includes) const SAL_OVERRIDE; + virtual void dumpLightGetCppuType(FileStream & out) SAL_OVERRIDE; virtual void dumpNormalGetCppuType(FileStream & out) SAL_OVERRIDE; @@ -2689,6 +2690,13 @@ private: rtl::Reference< unoidl::ExceptionTypeEntity > entity_; }; +void ExceptionType::addComprehensiveGetCppuTypeIncludes( + codemaker::cppumaker::Includes & includes) const +{ + includes.addCppuUnotypeHxx(); + includes.addRtlInstanceHxx(); // using rtl::StaticWithInit +} + void ExceptionType::dumpHxxFile( FileStream & out, codemaker::cppumaker::Includes & includes) { @@ -3101,6 +3109,9 @@ public: private: virtual void dumpDeclaration(FileStream& o) SAL_OVERRIDE; + virtual void addComprehensiveGetCppuTypeIncludes( + codemaker::cppumaker::Includes & includes) const SAL_OVERRIDE; + void dumpHxxFile(FileStream& o, codemaker::cppumaker::Includes & includes) SAL_OVERRIDE; void dumpNormalGetCppuType(FileStream& o) SAL_OVERRIDE; @@ -3109,6 +3120,13 @@ private: rtl::Reference< unoidl::EnumTypeEntity > entity_; }; +void EnumType::addComprehensiveGetCppuTypeIncludes( + codemaker::cppumaker::Includes & includes) const +{ + includes.addCppuUnotypeHxx(); + includes.addRtlInstanceHxx(); // using rtl::StaticWithInit +} + void EnumType::dumpDeclaration(FileStream& o) { o << "\nenum " << id_ << "\n{\n"; -- cgit