summaryrefslogtreecommitdiff
path: root/codemaker
diff options
context:
space:
mode:
authorMichael Stahl <mstahl@redhat.com>2014-11-17 15:36:35 +0100
committerMichael Stahl <mstahl@redhat.com>2014-11-18 18:51:48 +0100
commit537befbb2fd5f1587f7c9cd8c55498d29b713770 (patch)
tree9ba3e6d9d84bb9795ff38a9f8a376d24915f3533 /codemaker
parenta69927eaf423ac367ab20849959dfd377b0d3fda (diff)
cppumaker: only include rtl/instance.hxx and mutex.hxx when necessary
Change-Id: Ib21a3cfe4b02e421f8848a6e2cca4e2a1c04adb9
Diffstat (limited to 'codemaker')
-rw-r--r--codemaker/source/cppumaker/cpputype.cxx26
1 files 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";