cunotype.cxx (ff7655f0) cunotype.cxx (9d8e7fba)
1/**************************************************************
2 *
3 * Licensed to the Apache Software Foundation (ASF) under one
4 * or more contributor license agreements. See the NOTICE file
5 * distributed with this work for additional information
6 * regarding copyright ownership. The ASF licenses this file
7 * to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance

--- 219 unchanged lines hidden (view full) ---

228 OString typeName;
229 sal_uInt32 index = 0;
230 while (iter != usingSet.end())
231 {
232 typeName = (*iter).m_type;
233 if ((index = typeName.lastIndexOf(']')) > 0)
234 typeName = typeName.copy(index + 1);
235
1/**************************************************************
2 *
3 * Licensed to the Apache Software Foundation (ASF) under one
4 * or more contributor license agreements. See the NOTICE file
5 * distributed with this work for additional information
6 * regarding copyright ownership. The ASF licenses this file
7 * to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance

--- 219 unchanged lines hidden (view full) ---

228 OString typeName;
229 sal_uInt32 index = 0;
230 while (iter != usingSet.end())
231 {
232 typeName = (*iter).m_type;
233 if ((index = typeName.lastIndexOf(']')) > 0)
234 typeName = typeName.copy(index + 1);
235
236 if (getBaseType(typeName).getLength() == 0)
236 if ( getBaseType(typeName).isEmpty() )
237 {
238 if (!produceType(typeName,
239 m_typeMgr,
240 m_dependencies,
241 pOptions))
242 {
243 fprintf(stderr, "%s ERROR: %s\n",
244 pOptions->getProgramName().getStr(),

--- 143 unchanged lines hidden (view full) ---

388 if (seqNum > 0 && !bSequenceDumped)
389 {
390 bSequenceDumped = sal_True;
391 o << "#ifndef _UNO_SEQUENCE2_" << defPrefix
392 << "_\n#include <uno/sequence2." << defPrefix.toAsciiLowerCase()
393 << ">\n#endif\n";
394 }
395
237 {
238 if (!produceType(typeName,
239 m_typeMgr,
240 m_dependencies,
241 pOptions))
242 {
243 fprintf(stderr, "%s ERROR: %s\n",
244 pOptions->getProgramName().getStr(),

--- 143 unchanged lines hidden (view full) ---

388 if (seqNum > 0 && !bSequenceDumped)
389 {
390 bSequenceDumped = sal_True;
391 o << "#ifndef _UNO_SEQUENCE2_" << defPrefix
392 << "_\n#include <uno/sequence2." << defPrefix.toAsciiLowerCase()
393 << ">\n#endif\n";
394 }
395
396 if (getBaseType(relType).getLength() == 0 &&
396 if (getBaseType(relType).isEmpty() &&
397 m_typeName != relType)
398 {
399 if (m_typeMgr.getTypeClass(relType) == RT_TYPE_INTERFACE
400 && sPrefix.equals("H"))
401 {
402 if (!((*iter).m_use & TYPEUSE_SUPER))
403 {
404 if (isNestedTypeByName(relType))

--- 172 unchanged lines hidden (view full) ---

577 << indent() << "static typelib_TypeDescriptionReference * s_pType_" << typeName << " = 0;\n"
578 << indent() << "#endif\n\n";
579
580 o << indent() << "if ( !s_pType_" << typeName << " )\n" << indent() << "{\n";
581 inc();
582
583 OString superType(m_reader.getSuperTypeName());
584 sal_Bool bIsBaseException = sal_False;
397 m_typeName != relType)
398 {
399 if (m_typeMgr.getTypeClass(relType) == RT_TYPE_INTERFACE
400 && sPrefix.equals("H"))
401 {
402 if (!((*iter).m_use & TYPEUSE_SUPER))
403 {
404 if (isNestedTypeByName(relType))

--- 172 unchanged lines hidden (view full) ---

577 << indent() << "static typelib_TypeDescriptionReference * s_pType_" << typeName << " = 0;\n"
578 << indent() << "#endif\n\n";
579
580 o << indent() << "if ( !s_pType_" << typeName << " )\n" << indent() << "{\n";
581 inc();
582
583 OString superType(m_reader.getSuperTypeName());
584 sal_Bool bIsBaseException = sal_False;
585 if (superType.getLength() > 0)
585 if ( !superType.isEmpty() )
586 {
587 if ( superType.equals("com/sun/star/uno/Exception") )
588 {
589 bIsBaseException = sal_True;
590 } else
591 {
592 o << indent() << "typelib_TypeDescriptionReference * pBaseType = 0;\n";
593 }

--- 43 unchanged lines hidden (view full) ---

637 o << " , \"" << fieldType.replace('/', '.') << "\" );\n";
638 }
639 }
640 o << "\n";
641 }
642
643 o << indent() << "typelib_static_compound_type_init( &s_pType_" << typeName << ", "
644 << getTypeClass(m_typeName, sal_True) << ", \"" << m_typeName.replace('/', '.') << "\", ";
586 {
587 if ( superType.equals("com/sun/star/uno/Exception") )
588 {
589 bIsBaseException = sal_True;
590 } else
591 {
592 o << indent() << "typelib_TypeDescriptionReference * pBaseType = 0;\n";
593 }

--- 43 unchanged lines hidden (view full) ---

637 o << " , \"" << fieldType.replace('/', '.') << "\" );\n";
638 }
639 }
640 o << "\n";
641 }
642
643 o << indent() << "typelib_static_compound_type_init( &s_pType_" << typeName << ", "
644 << getTypeClass(m_typeName, sal_True) << ", \"" << m_typeName.replace('/', '.') << "\", ";
645 if ( superType.getLength() > 0 || bIsBaseException )
645 if ( !superType.isEmpty() || bIsBaseException )
646 {
647 if ( bIsBaseException )
648 {
649 o << "* typelib_static_type_getByTypeClass( typelib_TypeClass_EXCEPTION ), "
650 << count << ", ";
651 } else
652 {
653 o << "pBaseType, " << count << ", ";

--- 44 unchanged lines hidden (view full) ---

698 << indent() << "osl_acquireMutex( pMutex );\n";
699
700 o << indent() << "if ( !s_pType_" << typeName << " )\n" << indent() << "{\n";
701 inc();
702 o << indent() << "rtl_uString * pTypeName = 0;\n"
703 << indent() << "typelib_TypeDescription * pTD = 0;\n";
704
705 OString superType(m_reader.getSuperTypeName());
646 {
647 if ( bIsBaseException )
648 {
649 o << "* typelib_static_type_getByTypeClass( typelib_TypeClass_EXCEPTION ), "
650 << count << ", ";
651 } else
652 {
653 o << "pBaseType, " << count << ", ";

--- 44 unchanged lines hidden (view full) ---

698 << indent() << "osl_acquireMutex( pMutex );\n";
699
700 o << indent() << "if ( !s_pType_" << typeName << " )\n" << indent() << "{\n";
701 inc();
702 o << indent() << "rtl_uString * pTypeName = 0;\n"
703 << indent() << "typelib_TypeDescription * pTD = 0;\n";
704
705 OString superType(m_reader.getSuperTypeName());
706 if (superType.getLength() > 0)
706 if ( !superType.isEmpty() )
707 o << indent() << "typelib_TypeDescriptionReference * pSuperType = 0;\n";
708
709 sal_uInt32 count = getMemberCount();
710 sal_uInt32 fieldCount = m_reader.getFieldCount();
711 RTFieldAccess access = RT_ACCESS_INVALID;
712 if (count)
713 {
714 o << indent() << "typelib_CompoundMember_Init aMembers["

--- 8 unchanged lines hidden (view full) ---

723
724 o << indent() << "rtl_uString * pMemberName" << i << " = 0;\n"
725 << indent() << "rtl_uString * pMemberType" << i << " = 0;\n";
726 }
727 }
728
729 o << indent() << "rtl_uString_newFromAscii( &pTypeName, \"" << m_typeName.replace('/', '.') << "\" );\n";
730
707 o << indent() << "typelib_TypeDescriptionReference * pSuperType = 0;\n";
708
709 sal_uInt32 count = getMemberCount();
710 sal_uInt32 fieldCount = m_reader.getFieldCount();
711 RTFieldAccess access = RT_ACCESS_INVALID;
712 if (count)
713 {
714 o << indent() << "typelib_CompoundMember_Init aMembers["

--- 8 unchanged lines hidden (view full) ---

723
724 o << indent() << "rtl_uString * pMemberName" << i << " = 0;\n"
725 << indent() << "rtl_uString * pMemberType" << i << " = 0;\n";
726 }
727 }
728
729 o << indent() << "rtl_uString_newFromAscii( &pTypeName, \"" << m_typeName.replace('/', '.') << "\" );\n";
730
731 if (superType.getLength() > 0)
731 if ( !superType.isEmpty() )
732 {
733 o << indent() << "typelib_typedescriptionreference_newByAsciiName(&pSuperType, typelib_TypeClass_INTERFACE, \""
734 << superType.replace('/', '.') << "\" );\n";
735 }
736
737 dumpCppuGetTypeMemberDecl(o, CUNOTYPEDECL_ALLTYPES);
738
739 if (count)

--- 21 unchanged lines hidden (view full) ---

761 << indent() << "aMembers[" << i << "].pMemberName = pMemberName" << i << ";\n";
762 }
763
764 o << "\n" << indent() << "typelib_typedescription_new(\n";
765 inc();
766 o << indent() << "&pTD,\n" << indent()
767 << getTypeClass(OString(), sal_True) << ", pTypeName,\n";
768
732 {
733 o << indent() << "typelib_typedescriptionreference_newByAsciiName(&pSuperType, typelib_TypeClass_INTERFACE, \""
734 << superType.replace('/', '.') << "\" );\n";
735 }
736
737 dumpCppuGetTypeMemberDecl(o, CUNOTYPEDECL_ALLTYPES);
738
739 if (count)

--- 21 unchanged lines hidden (view full) ---

761 << indent() << "aMembers[" << i << "].pMemberName = pMemberName" << i << ";\n";
762 }
763
764 o << "\n" << indent() << "typelib_typedescription_new(\n";
765 inc();
766 o << indent() << "&pTD,\n" << indent()
767 << getTypeClass(OString(), sal_True) << ", pTypeName,\n";
768
769 if (superType.getLength() > 0)
769 if ( !superType.isEmpty() )
770 o << indent() << "pSuperType,\n";
771 else
772 o << indent() << "0,\n";
773
774 if ( count )
775 {
776 o << indent() << count << ",\n" << indent() << "aMembers );\n\n";
777 } else

--- 85 unchanged lines hidden (view full) ---

863 if (!pReader)
864 {
865 bSelfCheck = sal_False;
866 pReader = &m_reader;
867 }
868
869 sal_uInt32 count = 0;
870 OString superType(pReader->getSuperTypeName());
770 o << indent() << "pSuperType,\n";
771 else
772 o << indent() << "0,\n";
773
774 if ( count )
775 {
776 o << indent() << count << ",\n" << indent() << "aMembers );\n\n";
777 } else

--- 85 unchanged lines hidden (view full) ---

863 if (!pReader)
864 {
865 bSelfCheck = sal_False;
866 pReader = &m_reader;
867 }
868
869 sal_uInt32 count = 0;
870 OString superType(pReader->getSuperTypeName());
871 if (superType.getLength() > 0)
871 if ( !superType.isEmpty() )
872 {
873 TypeReader aSuperReader(m_typeMgr.getTypeReader(superType));
874 if ( aSuperReader.isValid() )
875 {
876 count = checkInheritedMemberCount(&aSuperReader);
877 }
878 }
879

--- 26 unchanged lines hidden (view full) ---

906 return m_inheritedMemberCount;
907}
908
909void CunoType::dumpInheritedMembers(FileStream& o, rtl::OString& superType)
910{
911 TypeReader aSuperReader(m_typeMgr.getTypeReader(superType));
912
913 OString baseType(aSuperReader.getSuperTypeName());
872 {
873 TypeReader aSuperReader(m_typeMgr.getTypeReader(superType));
874 if ( aSuperReader.isValid() )
875 {
876 count = checkInheritedMemberCount(&aSuperReader);
877 }
878 }
879

--- 26 unchanged lines hidden (view full) ---

906 return m_inheritedMemberCount;
907}
908
909void CunoType::dumpInheritedMembers(FileStream& o, rtl::OString& superType)
910{
911 TypeReader aSuperReader(m_typeMgr.getTypeReader(superType));
912
913 OString baseType(aSuperReader.getSuperTypeName());
914 if (baseType.getLength() > 0)
914 if ( !baseType.isEmpty() )
915 {
916 dumpInheritedMembers(o, baseType);
917 }
918
919 sal_uInt32 fieldCount = aSuperReader.getFieldCount();
920 RTFieldAccess access = RT_ACCESS_INVALID;
921 OString fieldName;
922 OString fieldType;

--- 10 unchanged lines hidden (view full) ---

933 dumpType(o, fieldType);
934 o << " " << fieldName << ";\n";
935 }
936 }
937}
938
939OString CunoType::getTypeClass(const OString& type, sal_Bool bCStyle)
940{
915 {
916 dumpInheritedMembers(o, baseType);
917 }
918
919 sal_uInt32 fieldCount = aSuperReader.getFieldCount();
920 RTFieldAccess access = RT_ACCESS_INVALID;
921 OString fieldName;
922 OString fieldType;

--- 10 unchanged lines hidden (view full) ---

933 dumpType(o, fieldType);
934 o << " " << fieldName << ";\n";
935 }
936 }
937}
938
939OString CunoType::getTypeClass(const OString& type, sal_Bool bCStyle)
940{
941 OString typeName = (type.getLength() > 0 ? type : m_typeName);
941 OString typeName = ( !type.isEmpty() ? type : m_typeName );
942 RTTypeClass rtTypeClass = RT_TYPE_INVALID;
943
942 RTTypeClass rtTypeClass = RT_TYPE_INVALID;
943
944 if (type.getLength() > 0)
944 if ( !type.isEmpty() )
945 {
946 typeName = type;
947 rtTypeClass = m_typeMgr.getTypeClass(typeName);
948 } else
949 {
950 typeName = m_typeName;
951 rtTypeClass = m_reader.getTypeClass();
952 }

--- 101 unchanged lines hidden (view full) ---

1054 switch (typeClass)
1055 {
1056 case RT_TYPE_INTERFACE:
1057 o << relType.replace('/', '_') << " *";
1058 break;
1059 case RT_TYPE_INVALID:
1060 {
1061 OString tmp(getBaseType(relType));
945 {
946 typeName = type;
947 rtTypeClass = m_typeMgr.getTypeClass(typeName);
948 } else
949 {
950 typeName = m_typeName;
951 rtTypeClass = m_reader.getTypeClass();
952 }

--- 101 unchanged lines hidden (view full) ---

1054 switch (typeClass)
1055 {
1056 case RT_TYPE_INTERFACE:
1057 o << relType.replace('/', '_') << " *";
1058 break;
1059 case RT_TYPE_INVALID:
1060 {
1061 OString tmp(getBaseType(relType));
1062 if (tmp.getLength() > 0)
1062 if ( !tmp.isEmpty() )
1063 {
1064 o << tmp.getStr();
1065 if ( bParam && !bPointer && relType.equals("any") )
1066 o << " *";
1067 } else
1068 throw CannotDumpException("Unknown type '" + relType + "', incomplete type library.");
1069 }
1070 break;

--- 313 unchanged lines hidden (view full) ---

1384 } else
1385 {
1386 break;
1387 }
1388 }
1389
1390 if ( bResolveTypeOnly )
1391 {
1063 {
1064 o << tmp.getStr();
1065 if ( bParam && !bPointer && relType.equals("any") )
1066 o << " *";
1067 } else
1068 throw CannotDumpException("Unknown type '" + relType + "', incomplete type library.");
1069 }
1070 break;

--- 313 unchanged lines hidden (view full) ---

1384 } else
1385 {
1386 break;
1387 }
1388 }
1389
1390 if ( bResolveTypeOnly )
1391 {
1392 if ( completePrefix.getLength() > 0 )
1392 if ( !completePrefix.isEmpty() )
1393 {
1394 baseType = bSeqType ? (completePrefix + baseType) : ( baseType + completePrefix);
1395 }
1396 }
1397 return baseType;
1398}
1399
1400void CunoType::dumpConstantValue(FileStream& o, sal_uInt16 index)

--- 169 unchanged lines hidden (view full) ---

1570 return sal_True;
1571}
1572
1573void InterfaceType::dumpInheritedFunctions(FileStream& o, rtl::OString& superType)
1574{
1575 TypeReader aSuperReader(m_typeMgr.getTypeReader(superType));
1576
1577 OString baseType(aSuperReader.getSuperTypeName());
1393 {
1394 baseType = bSeqType ? (completePrefix + baseType) : ( baseType + completePrefix);
1395 }
1396 }
1397 return baseType;
1398}
1399
1400void CunoType::dumpConstantValue(FileStream& o, sal_uInt16 index)

--- 169 unchanged lines hidden (view full) ---

1570 return sal_True;
1571}
1572
1573void InterfaceType::dumpInheritedFunctions(FileStream& o, rtl::OString& superType)
1574{
1575 TypeReader aSuperReader(m_typeMgr.getTypeReader(superType));
1576
1577 OString baseType(aSuperReader.getSuperTypeName());
1578 if (baseType.getLength() > 0)
1578 if ( !baseType.isEmpty() )
1579 {
1580 dumpInheritedFunctions(o, baseType);
1581 }
1582
1583 dumpAttributes(o, superType.replace('/', '_'), aSuperReader);
1584 dumpMethods(o, superType.replace('/', '_'), aSuperReader);
1585}
1586
1587sal_Bool InterfaceType::dumpDeclaration(FileStream& o)
1588 throw( CannotDumpException )
1589{
1590 o << "typedef struct _" << m_name << "_ftab\n" << indent() << "{";
1591 inc();
1592
1593 OString superType(m_reader.getSuperTypeName());
1579 {
1580 dumpInheritedFunctions(o, baseType);
1581 }
1582
1583 dumpAttributes(o, superType.replace('/', '_'), aSuperReader);
1584 dumpMethods(o, superType.replace('/', '_'), aSuperReader);
1585}
1586
1587sal_Bool InterfaceType::dumpDeclaration(FileStream& o)
1588 throw( CannotDumpException )
1589{
1590 o << "typedef struct _" << m_name << "_ftab\n" << indent() << "{";
1591 inc();
1592
1593 OString superType(m_reader.getSuperTypeName());
1594 if (superType.getLength() > 0)
1594 if ( !superType.isEmpty() )
1595 dumpInheritedFunctions(o, superType);
1596/*
1597 if (getNestedTypeNames().getLength() > 0)
1598 {
1599 inc();
1600 o << indent() << "// nested types\n\n";
1601 for (sal_uInt32 i = 0; i < getNestedTypeNames().getLength(); i++)
1602 {

--- 307 unchanged lines hidden (view full) ---

1910 o << indent() << "#if ! (defined(__SUNPRO_CC) && (__SUNPRO_CC == 0x500))\n"
1911 << indent() << "static typelib_TypeDescriptionReference * s_pType_" << typeName << " = 0;\n"
1912 << indent() << "#endif\n\n";
1913
1914 o << indent() << "if ( !s_pType_" << typeName << " )\n" << indent() << "{\n";
1915 inc();
1916 OString superType(m_reader.getSuperTypeName());
1917 sal_Bool bWithBase = sal_False;
1595 dumpInheritedFunctions(o, superType);
1596/*
1597 if (getNestedTypeNames().getLength() > 0)
1598 {
1599 inc();
1600 o << indent() << "// nested types\n\n";
1601 for (sal_uInt32 i = 0; i < getNestedTypeNames().getLength(); i++)
1602 {

--- 307 unchanged lines hidden (view full) ---

1910 o << indent() << "#if ! (defined(__SUNPRO_CC) && (__SUNPRO_CC == 0x500))\n"
1911 << indent() << "static typelib_TypeDescriptionReference * s_pType_" << typeName << " = 0;\n"
1912 << indent() << "#endif\n\n";
1913
1914 o << indent() << "if ( !s_pType_" << typeName << " )\n" << indent() << "{\n";
1915 inc();
1916 OString superType(m_reader.getSuperTypeName());
1917 sal_Bool bWithBase = sal_False;
1918 if (superType.getLength() > 0 && !superType.equals("com/sun/star/uno/XInterface"))
1918 if ( !superType.isEmpty() && !superType.equals("com/sun/star/uno/XInterface"))
1919 {
1920 bWithBase = sal_True;
1921 o << indent() << "typelib_TypeDescriptionReference * pSuperType = 0;\n"
1922 << indent() << "typelib_typedescriptionreference_newByAsciiName(&pSuperType, typelib_TypeClass_INTERFACE, \""
1923 << superType.replace('/', '.') << "\" );\n";
1924 }
1925
1926 o << indent() << "typelib_static_interface_type_init( &s_pType_" << typeName

--- 43 unchanged lines hidden (view full) ---

1970 o << indent() << "if ( !s_pType_" << typeName << " )\n" << indent() << "{\n";
1971 inc();
1972 o << indent() << "rtl_uString * pTypeName = 0;\n"
1973 << indent() << "typelib_InterfaceTypeDescription * pTD = 0;\n";
1974
1975 OString superType(m_reader.getSuperTypeName());
1976 sal_uInt32 count = getMemberCount();
1977
1919 {
1920 bWithBase = sal_True;
1921 o << indent() << "typelib_TypeDescriptionReference * pSuperType = 0;\n"
1922 << indent() << "typelib_typedescriptionreference_newByAsciiName(&pSuperType, typelib_TypeClass_INTERFACE, \""
1923 << superType.replace('/', '.') << "\" );\n";
1924 }
1925
1926 o << indent() << "typelib_static_interface_type_init( &s_pType_" << typeName

--- 43 unchanged lines hidden (view full) ---

1970 o << indent() << "if ( !s_pType_" << typeName << " )\n" << indent() << "{\n";
1971 inc();
1972 o << indent() << "rtl_uString * pTypeName = 0;\n"
1973 << indent() << "typelib_InterfaceTypeDescription * pTD = 0;\n";
1974
1975 OString superType(m_reader.getSuperTypeName());
1976 sal_uInt32 count = getMemberCount();
1977
1978 if (superType.getLength() > 0)
1978 if ( !superType.isEmpty() )
1979 o << indent() << "typelib_TypeDescriptionReference * pSuperType = 0;\n";
1980
1981 if (count)
1982 {
1983 o << indent() << "typelib_TypeDescriptionReference * pMembers[" << count << "] = { ";
1984 for (sal_uInt32 i = 0; i < count; i++)
1985 {
1986 o << "0";

--- 4 unchanged lines hidden (view full) ---

1991 }
1992
1993 dumpCUnoAttributeTypeNames(o);
1994 dumpCUnoMethodTypeNames(o);
1995 }
1996
1997 o << indent() << "rtl_uString_newFromAscii( &pTypeName, \"" << m_typeName.replace('/', '.') << "\" );\n";
1998
1979 o << indent() << "typelib_TypeDescriptionReference * pSuperType = 0;\n";
1980
1981 if (count)
1982 {
1983 o << indent() << "typelib_TypeDescriptionReference * pMembers[" << count << "] = { ";
1984 for (sal_uInt32 i = 0; i < count; i++)
1985 {
1986 o << "0";

--- 4 unchanged lines hidden (view full) ---

1991 }
1992
1993 dumpCUnoAttributeTypeNames(o);
1994 dumpCUnoMethodTypeNames(o);
1995 }
1996
1997 o << indent() << "rtl_uString_newFromAscii( &pTypeName, \"" << m_typeName.replace('/', '.') << "\" );\n";
1998
1999 if (superType.getLength() > 0)
1999 if ( !superType.isEmpty() )
2000 {
2001 o << indent() << "typelib_typedescriptionreference_newByAsciiName(&pSuperType, typelib_TypeClass_INTERFACE, \""
2002 << superType.replace('/', '.') << "\" );\n";
2003 }
2004
2005 if (count)
2006 {
2007 sal_uInt32 index = 0;

--- 8 unchanged lines hidden (view full) ---

2016
2017 RTUik uik;
2018 m_reader.getUik(uik);
2019 sal_Char buffer[53];
2020 snprintf(buffer, sizeof(buffer), "0x%.8x, 0x%.4x, 0x%.4x, 0x%.8x, 0x%.8x,\n",
2021 uik.m_Data1, uik.m_Data2, uik.m_Data3, uik.m_Data4, uik.m_Data5);
2022 o << buffer;
2023
2000 {
2001 o << indent() << "typelib_typedescriptionreference_newByAsciiName(&pSuperType, typelib_TypeClass_INTERFACE, \""
2002 << superType.replace('/', '.') << "\" );\n";
2003 }
2004
2005 if (count)
2006 {
2007 sal_uInt32 index = 0;

--- 8 unchanged lines hidden (view full) ---

2016
2017 RTUik uik;
2018 m_reader.getUik(uik);
2019 sal_Char buffer[53];
2020 snprintf(buffer, sizeof(buffer), "0x%.8x, 0x%.4x, 0x%.4x, 0x%.8x, 0x%.8x,\n",
2021 uik.m_Data1, uik.m_Data2, uik.m_Data3, uik.m_Data4, uik.m_Data5);
2022 o << buffer;
2023
2024 if (superType.getLength() > 0)
2024 if ( !superType.isEmpty() )
2025 o << indent() << "pSuperType,\n";
2026 else
2027 o << indent() << "0,\n";
2028
2029 if ( count )
2030 {
2031 o << indent() << count << ",\n" << indent() << "pMembers );\n\n";
2032 } else

--- 8 unchanged lines hidden (view full) ---

2041 for (sal_uInt16 i=0; i < count; i++)
2042 {
2043 o << indent() << "typelib_typedescriptionreference_release( pMembers["
2044 << i << "] );\n";
2045 }
2046 }
2047 o << indent() << "typelib_typedescription_release( (typelib_TypeDescription*)pTD );\n";
2048
2025 o << indent() << "pSuperType,\n";
2026 else
2027 o << indent() << "0,\n";
2028
2029 if ( count )
2030 {
2031 o << indent() << count << ",\n" << indent() << "pMembers );\n\n";
2032 } else

--- 8 unchanged lines hidden (view full) ---

2041 for (sal_uInt16 i=0; i < count; i++)
2042 {
2043 o << indent() << "typelib_typedescriptionreference_release( pMembers["
2044 << i << "] );\n";
2045 }
2046 }
2047 o << indent() << "typelib_typedescription_release( (typelib_TypeDescription*)pTD );\n";
2048
2049 if (superType.getLength() > 0)
2049 if ( !superType.isEmpty() )
2050 o << indent() << "typelib_typedescription_release( pSuperType );\n\n";
2051 else
2052 o << "\n";
2053
2054 o << indent() << "typelib_typedescriptionreference_new( &s_pType_ " << typeName
2055 << "typelib_TypeClass_INTERFACE, (typelib_TypeDescription*)pTD);\n\n";
2056
2057 o << indent() << "typelib_TypeDescriptionReference ** ppTypeRef = 0;\n";

--- 144 unchanged lines hidden (view full) ---

2202 if (!pReader)
2203 {
2204 bSelfCheck = sal_False;
2205 pReader = &m_reader;
2206 }
2207
2208 sal_uInt32 count = 0;
2209 OString superType(pReader->getSuperTypeName());
2050 o << indent() << "typelib_typedescription_release( pSuperType );\n\n";
2051 else
2052 o << "\n";
2053
2054 o << indent() << "typelib_typedescriptionreference_new( &s_pType_ " << typeName
2055 << "typelib_TypeClass_INTERFACE, (typelib_TypeDescription*)pTD);\n\n";
2056
2057 o << indent() << "typelib_TypeDescriptionReference ** ppTypeRef = 0;\n";

--- 144 unchanged lines hidden (view full) ---

2202 if (!pReader)
2203 {
2204 bSelfCheck = sal_False;
2205 pReader = &m_reader;
2206 }
2207
2208 sal_uInt32 count = 0;
2209 OString superType(pReader->getSuperTypeName());
2210 if (superType.getLength() > 0)
2210 if ( !superType.isEmpty() )
2211 {
2212 TypeReader aSuperReader(m_typeMgr.getTypeReader(superType));
2213 if (aSuperReader.isValid())
2214 {
2215 count = checkInheritedMemberCount(&aSuperReader);
2216 }
2217 }
2218

--- 653 unchanged lines hidden (view full) ---

2872 << "#elif defined(SAL_OS2)\n"
2873 << "# pragma pack(8)\n"
2874 << "#endif\n\n";
2875
2876 o << "typedef struct _" << m_name << "\n{\n";
2877 inc();
2878
2879 OString superType(m_reader.getSuperTypeName());
2211 {
2212 TypeReader aSuperReader(m_typeMgr.getTypeReader(superType));
2213 if (aSuperReader.isValid())
2214 {
2215 count = checkInheritedMemberCount(&aSuperReader);
2216 }
2217 }
2218

--- 653 unchanged lines hidden (view full) ---

2872 << "#elif defined(SAL_OS2)\n"
2873 << "# pragma pack(8)\n"
2874 << "#endif\n\n";
2875
2876 o << "typedef struct _" << m_name << "\n{\n";
2877 inc();
2878
2879 OString superType(m_reader.getSuperTypeName());
2880 if (superType.getLength() > 0)
2880 if ( !superType.isEmpty() )
2881 o << indent() << superType.replace('/', '_').getStr() << " _Base;\n";
2882 //dumpInheritedMembers(o, superType);
2883
2884 sal_uInt32 fieldCount = m_reader.getFieldCount();
2885 RTFieldAccess access = RT_ACCESS_INVALID;
2886 OString fieldName;
2887 OString fieldType;
2888 sal_uInt16 i=0;

--- 93 unchanged lines hidden (view full) ---

2982 << "#elif defined(SAL_OS2)\n"
2983 << "# pragma pack(8)\n"
2984 << "#endif\n\n";
2985
2986 o << "\n/* Exception type */\ntypedef struct _" << m_name << "\n{\n";
2987 inc();
2988
2989 OString superType(m_reader.getSuperTypeName());
2881 o << indent() << superType.replace('/', '_').getStr() << " _Base;\n";
2882 //dumpInheritedMembers(o, superType);
2883
2884 sal_uInt32 fieldCount = m_reader.getFieldCount();
2885 RTFieldAccess access = RT_ACCESS_INVALID;
2886 OString fieldName;
2887 OString fieldType;
2888 sal_uInt16 i=0;

--- 93 unchanged lines hidden (view full) ---

2982 << "#elif defined(SAL_OS2)\n"
2983 << "# pragma pack(8)\n"
2984 << "#endif\n\n";
2985
2986 o << "\n/* Exception type */\ntypedef struct _" << m_name << "\n{\n";
2987 inc();
2988
2989 OString superType(m_reader.getSuperTypeName());
2990 if (superType.getLength() > 0)
2990 if ( !superType.isEmpty() )
2991 o << indent() << superType.replace('/', '_').getStr() << " _Base;\n";
2992 //dumpInheritedMembers(o, superType);
2993
2994 sal_uInt32 fieldCount = m_reader.getFieldCount();
2995 RTFieldAccess access = RT_ACCESS_INVALID;
2996 OString fieldName;
2997 OString fieldType;
2998 sal_uInt16 i = 0;

--- 531 unchanged lines hidden ---
2991 o << indent() << superType.replace('/', '_').getStr() << " _Base;\n";
2992 //dumpInheritedMembers(o, superType);
2993
2994 sal_uInt32 fieldCount = m_reader.getFieldCount();
2995 RTFieldAccess access = RT_ACCESS_INVALID;
2996 OString fieldName;
2997 OString fieldType;
2998 sal_uInt16 i = 0;

--- 531 unchanged lines hidden ---