summaryrefslogtreecommitdiff
path: root/unodevtools/source
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2013-05-16 14:50:21 +0200
committerStephan Bergmann <sbergman@redhat.com>2013-05-16 16:12:45 +0200
commita1dff2901e9b6f70ea87df5e76825367b38ceaf4 (patch)
treed1284375fd10c07c736c2edec450cfd823b096d0 /unodevtools/source
parent08662568a590bfb20849fce077d8b5aff8b99b57 (diff)
Support for annotations in the new UNOIDL format
...used for now to transport @deprecated information. Also, improve Idx-String (formerly Idx-Name, but also used for UTF-8 annotations now) format, using the 0x80000000 for the indirection rather than the base case. (And the README erroneously used "Offset of" Idx-String all over the place.) Change-Id: I7003b1558ab536a11a9af308f9b16a7ef8840792
Diffstat (limited to 'unodevtools/source')
-rw-r--r--unodevtools/source/skeletonmaker/cpptypemaker.cxx18
-rw-r--r--unodevtools/source/skeletonmaker/javatypemaker.cxx16
-rw-r--r--unodevtools/source/skeletonmaker/skeletoncommon.cxx35
3 files changed, 35 insertions, 34 deletions
diff --git a/unodevtools/source/skeletonmaker/cpptypemaker.cxx b/unodevtools/source/skeletonmaker/cpptypemaker.cxx
index abd301269f7d..51a17c48b4bf 100644
--- a/unodevtools/source/skeletonmaker/cpptypemaker.cxx
+++ b/unodevtools/source/skeletonmaker/cpptypemaker.cxx
@@ -537,12 +537,12 @@ void printMethods(std::ostream & o,
dynamic_cast< unoidl::InterfaceTypeEntity * >(ent.get()));
assert(ent2.is());
if (options.all || defaultvalue) {
- for (std::vector< OUString >::const_iterator i(
+ for (std::vector< unoidl::AnnotatedReference >::const_iterator i(
ent2->getDirectMandatoryBases().begin());
i != ent2->getDirectMandatoryBases().end(); ++i)
{
printMethods(
- o, options, manager, *i, generated, delegate, classname,
+ o, options, manager, i->name, generated, delegate, classname,
indentation, defaultvalue, propertyhelper);
}
if (!(ent2->getDirectAttributes().empty()
@@ -737,20 +737,20 @@ void printServiceMembers(
OString const & delegate)
{
assert(entity.is());
- for (std::vector< OUString >::const_iterator i(
+ for (std::vector< unoidl::AnnotatedReference >::const_iterator i(
entity->getDirectMandatoryBaseServices().begin());
i != entity->getDirectMandatoryBaseServices().end(); ++i)
{
- o << "\n// exported service " << *i << "\n";
- generateDocumentation(o, options, manager, u2b(*i), delegate);
- o << "\n// end of exported service " << *i << "\n";
+ o << "\n// exported service " << i->name << "\n";
+ generateDocumentation(o, options, manager, u2b(i->name), delegate);
+ o << "\n// end of exported service " << i->name << "\n";
}
- for (std::vector< OUString >::const_iterator i(
+ for (std::vector< unoidl::AnnotatedReference >::const_iterator i(
entity->getDirectMandatoryBaseInterfaces().begin());
i != entity->getDirectMandatoryBaseInterfaces().end(); ++i)
{
- o << "\n// supported interface " << *i << "\n";
- generateDocumentation(o, options, manager, u2b(*i), delegate);
+ o << "\n// supported interface " << i->name << "\n";
+ generateDocumentation(o, options, manager, u2b(i->name), delegate);
}
if (delegate.isEmpty()) {
o << "\n// properties of service \""<< name << "\"\n";
diff --git a/unodevtools/source/skeletonmaker/javatypemaker.cxx b/unodevtools/source/skeletonmaker/javatypemaker.cxx
index cb84458ac752..d6b29b00cf26 100644
--- a/unodevtools/source/skeletonmaker/javatypemaker.cxx
+++ b/unodevtools/source/skeletonmaker/javatypemaker.cxx
@@ -461,12 +461,12 @@ void printMethods(std::ostream & o,
dynamic_cast< unoidl::InterfaceTypeEntity * >(ent.get()));
assert(ent2.is());
if ( options.all || defaultvalue ) {
- for (std::vector< OUString >::const_iterator i(
+ for (std::vector< unoidl::AnnotatedReference >::const_iterator i(
ent2->getDirectMandatoryBases().begin());
i != ent2->getDirectMandatoryBases().end(); ++i)
{
printMethods(
- o, options, manager, *i, generated, delegate, indentation,
+ o, options, manager, i->name, generated, delegate, indentation,
defaultvalue, usepropertymixin);
}
if (!(ent2->getDirectAttributes().empty()
@@ -638,19 +638,19 @@ void printServiceMembers(
OString const & delegate)
{
assert(entity.is());
- for (std::vector< OUString >::const_iterator i(
+ for (std::vector< unoidl::AnnotatedReference >::const_iterator i(
entity->getDirectMandatoryBaseServices().begin());
i != entity->getDirectMandatoryBaseServices().end(); ++i)
{
- o << "\n// exported service " << *i << "\n";
- generateDocumentation(o, options, manager, u2b(*i), delegate);
+ o << "\n// exported service " << i->name << "\n";
+ generateDocumentation(o, options, manager, u2b(i->name), delegate);
}
- for (std::vector< OUString >::const_iterator i(
+ for (std::vector< unoidl::AnnotatedReference >::const_iterator i(
entity->getDirectMandatoryBaseInterfaces().begin());
i != entity->getDirectMandatoryBaseInterfaces().end(); ++i)
{
- o << "\n// supported interface " << *i << "\n";
- generateDocumentation(o, options, manager, u2b(*i), delegate);
+ o << "\n// supported interface " << i->name << "\n";
+ generateDocumentation(o, options, manager, u2b(i->name), delegate);
}
o << "\n// properties of service \""<< name << "\"\n";
for (std::vector< unoidl::AccumulationBasedServiceEntity::Property >::
diff --git a/unodevtools/source/skeletonmaker/skeletoncommon.cxx b/unodevtools/source/skeletonmaker/skeletoncommon.cxx
index a8957aa9c2d3..e66b39acb981 100644
--- a/unodevtools/source/skeletonmaker/skeletoncommon.cxx
+++ b/unodevtools/source/skeletonmaker/skeletoncommon.cxx
@@ -122,11 +122,11 @@ void checkAttributes(rtl::Reference< TypeManager > const & manager,
rtl::Reference< unoidl::InterfaceTypeEntity > ent2(
dynamic_cast< unoidl::InterfaceTypeEntity * >(ent.get()));
assert(ent2.is());
- for (std::vector< OUString >::const_iterator i(
+ for (std::vector< unoidl::AnnotatedReference >::const_iterator i(
ent2->getDirectMandatoryBases().begin());
i != ent2->getDirectMandatoryBases().end(); ++i)
{
- checkAttributes(manager, *i, attributes, propinterfaces);
+ checkAttributes(manager, i->name, attributes, propinterfaces);
}
for (std::vector< unoidl::InterfaceTypeEntity::Attribute >::
const_iterator i(ent2->getDirectAttributes().begin());
@@ -146,7 +146,8 @@ void checkAttributes(rtl::Reference< TypeManager > const & manager,
| (i->readOnly
? (unoidl::AccumulationBasedServiceEntity::
Property::ATTRIBUTE_READ_ONLY)
- : 0))))));
+ : 0)))),
+ std::vector< OUString >()));
}
}
break;
@@ -157,17 +158,17 @@ void checkAttributes(rtl::Reference< TypeManager > const & manager,
dynamic_cast< unoidl::AccumulationBasedServiceEntity * >(
ent.get()));
assert(ent2.is());
- for (std::vector< OUString >::const_iterator i(
+ for (std::vector< unoidl::AnnotatedReference >::const_iterator i(
ent2->getDirectMandatoryBaseServices().begin());
i != ent2->getDirectMandatoryBaseServices().end(); ++i)
{
- checkAttributes(manager, *i, attributes, propinterfaces);
+ checkAttributes(manager, i->name, attributes, propinterfaces);
}
- for (std::vector< OUString >::const_iterator i(
+ for (std::vector< unoidl::AnnotatedReference >::const_iterator i(
ent2->getDirectMandatoryBaseInterfaces().begin());
i != ent2->getDirectMandatoryBaseInterfaces().end(); ++i)
{
- checkAttributes(manager, *i, attributes, propinterfaces);
+ checkAttributes(manager, i->name, attributes, propinterfaces);
}
for (std::vector<
unoidl::AccumulationBasedServiceEntity::Property >::
@@ -237,19 +238,19 @@ void checkType(rtl::Reference< TypeManager > const & manager,
dynamic_cast< unoidl::AccumulationBasedServiceEntity * >(
ent.get()));
assert(ent2.is());
- for (std::vector< OUString >::const_iterator i(
+ for (std::vector< unoidl::AnnotatedReference >::const_iterator i(
ent2->getDirectMandatoryBaseServices().begin());
i != ent2->getDirectMandatoryBaseServices().end(); ++i)
{
checkType(
- manager, *i, interfaceTypes, serviceTypes, properties);
+ manager, i->name, interfaceTypes, serviceTypes, properties);
}
- for (std::vector< OUString >::const_iterator i(
+ for (std::vector< unoidl::AnnotatedReference >::const_iterator i(
ent2->getDirectMandatoryBaseInterfaces().begin());
i != ent2->getDirectMandatoryBaseInterfaces().end(); ++i)
{
checkType(
- manager, *i, interfaceTypes, serviceTypes, properties);
+ manager, i->name, interfaceTypes, serviceTypes, properties);
}
for (std::vector<
unoidl::AccumulationBasedServiceEntity::Property >::
@@ -307,11 +308,11 @@ bool checkServiceProperties(rtl::Reference< TypeManager > const & manager,
if (!ent2->getDirectProperties().empty()) {
return true;
}
- for (std::vector< OUString >::const_iterator i(
+ for (std::vector< unoidl::AnnotatedReference >::const_iterator i(
ent2->getDirectMandatoryBaseServices().begin());
i != ent2->getDirectMandatoryBaseServices().end(); ++i)
{
- if (checkServiceProperties(manager, *i)) {
+ if (checkServiceProperties(manager, i->name)) {
return true;
}
}
@@ -391,11 +392,11 @@ bool checkXComponentSupport(
rtl::Reference< unoidl::InterfaceTypeEntity > ent2(
dynamic_cast< unoidl::InterfaceTypeEntity * >(ent.get()));
assert(ent2.is());
- for (std::vector< OUString >::const_iterator i(
+ for (std::vector< unoidl::AnnotatedReference >::const_iterator i(
ent2->getDirectMandatoryBases().begin());
i != ent2->getDirectMandatoryBases().end(); ++i)
{
- if (checkXComponentSupport(manager, *i)) {
+ if (checkXComponentSupport(manager, i->name)) {
return true;
}
}
@@ -587,12 +588,12 @@ void generateFunctionParameterMap(std::ostream& o,
// check if the specified add-in functions supports valid types
checkAddInTypes(manager, name, ent2);
- for (std::vector< OUString >::const_iterator i(
+ for (std::vector< unoidl::AnnotatedReference >::const_iterator i(
ent2->getDirectMandatoryBases().begin());
i != ent2->getDirectMandatoryBases().end(); ++i)
{
generateFunctionParameterMap(
- o, options, manager, *i, generated, bFirst);
+ o, options, manager, i->name, generated, bFirst);
}
if ( generated.contains(u2b(name)) )