summaryrefslogtreecommitdiff
path: root/idlc
diff options
context:
space:
mode:
authorOliver Bolte <obo@openoffice.org>2004-06-03 14:05:16 +0000
committerOliver Bolte <obo@openoffice.org>2004-06-03 14:05:16 +0000
commit9dde4b65930b250ecd5bbbab49fb936a2801ddca (patch)
tree81e95cece85245bd0419b3968541c6a3e691b657 /idlc
parent6199b35a4d32ab6a10ffc5612e26609a4844363e (diff)
INTEGRATION: CWS sb18 (1.2.4); FILE MERGED
2004/04/14 08:52:28 sb 1.2.4.2: #i21150# Added support for polymorphic struct types. 2004/04/08 14:37:14 sb 1.2.4.1: #i21150# Fixed UNOIDL typedef support; initial support for polymorphic struct types.
Diffstat (limited to 'idlc')
-rw-r--r--idlc/inc/idlc/aststruct.hxx19
1 files changed, 16 insertions, 3 deletions
diff --git a/idlc/inc/idlc/aststruct.hxx b/idlc/inc/idlc/aststruct.hxx
index 1cb946a51d76..41a8bfe08278 100644
--- a/idlc/inc/idlc/aststruct.hxx
+++ b/idlc/inc/idlc/aststruct.hxx
@@ -2,9 +2,9 @@
*
* $RCSfile: aststruct.hxx,v $
*
- * $Revision: 1.2 $
+ * $Revision: 1.3 $
*
- * last change: $Author: rt $ $Date: 2004-03-30 16:42:16 $
+ * last change: $Author: obo $ $Date: 2004-06-03 15:05:16 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -67,6 +67,7 @@
#ifndef _IDLC_ASTSCOPE_HXX_
#include <idlc/astscope.hxx>
#endif
+#include "idlc/idlctypes.hxx"
class AstStruct;
typedef ::std::vector< AstStruct* > InheritedTypes;
@@ -75,7 +76,11 @@ class AstStruct : public AstType
, public AstScope
{
public:
- AstStruct(const ::rtl::OString& name, AstStruct* pBaseType, AstScope* pScope);
+ AstStruct(
+ const ::rtl::OString& name,
+ std::vector< rtl::OString > const & typeParameters,
+ AstStruct* pBaseType, AstScope* pScope);
+
AstStruct(const NodeType type,
const ::rtl::OString& name,
AstStruct* pBaseType,
@@ -85,9 +90,17 @@ public:
AstStruct* getBaseType()
{ return m_pBaseType; }
+ DeclList::size_type getTypeParameterCount() const
+ { return m_typeParameters.size(); }
+
+ AstDeclaration const * findTypeParameter(rtl::OString const & name) const;
+
+ virtual bool isType() const;
+
virtual sal_Bool dump(RegistryKey& rKey);
private:
AstStruct* m_pBaseType;
+ DeclList m_typeParameters;
};
#endif // _IDLC_ASTSTRUCT_HXX_