summaryrefslogtreecommitdiffstats
path: root/src/xmlpatterns/schema
diff options
context:
space:
mode:
Diffstat (limited to 'src/xmlpatterns/schema')
-rw-r--r--src/xmlpatterns/schema/qxsdelement.cpp2
-rw-r--r--src/xmlpatterns/schema/qxsdinstancereader.cpp5
-rw-r--r--src/xmlpatterns/schema/qxsdschemachecker.cpp7
-rw-r--r--src/xmlpatterns/schema/qxsdschemaparser.cpp20
-rw-r--r--src/xmlpatterns/schema/qxsdschemaparsercontext.cpp2
-rw-r--r--src/xmlpatterns/schema/qxsdstatemachine_p.h2
6 files changed, 24 insertions, 14 deletions
diff --git a/src/xmlpatterns/schema/qxsdelement.cpp b/src/xmlpatterns/schema/qxsdelement.cpp
index 94d3610f..141c0847 100644
--- a/src/xmlpatterns/schema/qxsdelement.cpp
+++ b/src/xmlpatterns/schema/qxsdelement.cpp
@@ -236,7 +236,7 @@ void XsdElement::addSubstitutionGroup(const XsdElement::Ptr &element)
XsdElement::List XsdElement::substitutionGroups() const
{
- return m_substitutionGroups.toList();
+ return m_substitutionGroups.values();
}
QT_END_NAMESPACE
diff --git a/src/xmlpatterns/schema/qxsdinstancereader.cpp b/src/xmlpatterns/schema/qxsdinstancereader.cpp
index 70c6fb90..18b7bc30 100644
--- a/src/xmlpatterns/schema/qxsdinstancereader.cpp
+++ b/src/xmlpatterns/schema/qxsdinstancereader.cpp
@@ -149,7 +149,10 @@ QString XsdInstanceReader::attribute(const QXmlName &name) const
QSet<QXmlName> XsdInstanceReader::attributeNames() const
{
- return m_cachedAttributes.keys().toSet();
+ QSet<QXmlName> result;
+ for (auto it = m_cachedAttributes.cbegin(), end = m_cachedAttributes.cend(); it != end; ++it)
+ result.insert(it.key());
+ return result;
}
QString XsdInstanceReader::text() const
diff --git a/src/xmlpatterns/schema/qxsdschemachecker.cpp b/src/xmlpatterns/schema/qxsdschemachecker.cpp
index 57ee3e66..91a796a4 100644
--- a/src/xmlpatterns/schema/qxsdschemachecker.cpp
+++ b/src/xmlpatterns/schema/qxsdschemachecker.cpp
@@ -1525,11 +1525,14 @@ void XsdSchemaChecker::checkConstrainingFacets(const XsdFacet::Hash &facets, con
const QXmlName primitiveTypeName = simpleType->primitiveType()->name(m_namePool);
if (m_allowedAtomicFacets.contains(primitiveTypeName)) {
const QSet<XsdFacet::Type> allowedFacets = m_allowedAtomicFacets.value(primitiveTypeName);
- QSet<XsdFacet::Type> availableFacets = facets.keys().toSet();
+
+ QSet<XsdFacet::Type> availableFacets;
+ for (auto it = facets.cbegin(), end = facets.cend(); it != end; ++it)
+ availableFacets.insert(it.key());
if (!availableFacets.subtract(allowedFacets).isEmpty()) {
m_context->error(QtXmlPatterns::tr("Simple type contains not allowed facet %1.")
- .arg(formatKeyword(XsdFacet::typeName(availableFacets.toList().first()))),
+ .arg(formatKeyword(XsdFacet::typeName(availableFacets.values().constFirst()))),
XsdSchemaContext::XSDError, sourceLocation(simpleType));
return;
}
diff --git a/src/xmlpatterns/schema/qxsdschemaparser.cpp b/src/xmlpatterns/schema/qxsdschemaparser.cpp
index 6c4eafe0..9f11d691 100644
--- a/src/xmlpatterns/schema/qxsdschemaparser.cpp
+++ b/src/xmlpatterns/schema/qxsdschemaparser.cpp
@@ -5420,7 +5420,8 @@ XsdWildcard::Ptr XsdSchemaParser::parseAny(const XsdParticle::Ptr &particle)
}
if (hasAttribute(QString::fromLatin1("namespace"))) {
- const QSet<QString> values = readAttribute(QString::fromLatin1("namespace")).split(QLatin1Char(' '), QString::SkipEmptyParts).toSet();
+ const auto valueList = readAttribute(QString::fromLatin1("namespace")).split(QLatin1Char(' '), QString::SkipEmptyParts);
+ const QSet<QString> values(valueList.cbegin(), valueList.cend());
if ((values.contains(QString::fromLatin1("##any")) || values.contains(QString::fromLatin1("##other"))) && values.count() != 1) {
error(QtXmlPatterns::tr("%1 attribute of %2 element must contain %3, %4 or a list of URIs.")
.arg(formatAttribute("namespace"))
@@ -5440,7 +5441,7 @@ XsdWildcard::Ptr XsdSchemaParser::parseAny(const XsdParticle::Ptr &particle)
wildcard->namespaceConstraint()->setNamespaces(QSet<QString>() << XsdWildcard::absentNamespace());
} else {
wildcard->namespaceConstraint()->setVariety(XsdWildcard::NamespaceConstraint::Enumeration);
- QStringList newValues = values.toList();
+ QStringList newValues = values.values();
// replace the ##targetNamespace entry
for (int i = 0; i < newValues.count(); ++i) {
@@ -5466,7 +5467,7 @@ XsdWildcard::Ptr XsdSchemaParser::parseAny(const XsdParticle::Ptr &particle)
}
}
- wildcard->namespaceConstraint()->setNamespaces(newValues.toSet());
+ wildcard->namespaceConstraint()->setNamespaces(QSet<QString>(newValues.cbegin(), newValues.cend()));
}
} else {
wildcard->namespaceConstraint()->setVariety(XsdWildcard::NamespaceConstraint::Any);
@@ -5532,7 +5533,8 @@ XsdWildcard::Ptr XsdSchemaParser::parseAnyAttribute()
// parse attributes
if (hasAttribute(QString::fromLatin1("namespace"))) {
- const QSet<QString> values = readAttribute(QString::fromLatin1("namespace")).split(QLatin1Char(' '), QString::SkipEmptyParts).toSet();
+ const auto valueList = readAttribute(QString::fromLatin1("namespace")).split(QLatin1Char(' '), QString::SkipEmptyParts);
+ const QSet<QString> values(valueList.cbegin(), valueList.cend());
if ((values.contains(QString::fromLatin1("##any")) || values.contains(QString::fromLatin1("##other"))) && values.count() != 1) {
error(QtXmlPatterns::tr("%1 attribute of %2 element must contain %3, %4 or a list of URIs.")
.arg(formatAttribute("namespace"))
@@ -5552,7 +5554,7 @@ XsdWildcard::Ptr XsdSchemaParser::parseAnyAttribute()
wildcard->namespaceConstraint()->setNamespaces(QSet<QString>() << XsdWildcard::absentNamespace());
} else {
wildcard->namespaceConstraint()->setVariety(XsdWildcard::NamespaceConstraint::Enumeration);
- QStringList newValues = values.toList();
+ QStringList newValues = values.values();
// replace the ##targetNamespace entry
for (int i = 0; i < newValues.count(); ++i) {
@@ -5578,7 +5580,7 @@ XsdWildcard::Ptr XsdSchemaParser::parseAnyAttribute()
}
}
- wildcard->namespaceConstraint()->setNamespaces(newValues.toSet());
+ wildcard->namespaceConstraint()->setNamespaces(QSet<QString>(newValues.cbegin(), newValues.cend()));
}
} else {
wildcard->namespaceConstraint()->setVariety(XsdWildcard::NamespaceConstraint::Any);
@@ -5815,7 +5817,8 @@ SchemaType::DerivationConstraints XsdSchemaParser::readDerivationConstraintAttri
content = m_finalDefault;
}
- QSet<QString> contentSet = content.split(QLatin1Char(' '), QString::SkipEmptyParts).toSet();
+ const auto &contentList = content.split(QLatin1Char(' '), QString::SkipEmptyParts);
+ QSet<QString> contentSet(contentList.cbegin(), contentList.cend());
// if the '#all' tag is defined, we return all allowed values
if (contentSet.contains(QString::fromLatin1("#all"))) {
@@ -5876,7 +5879,8 @@ NamedSchemaComponent::BlockingConstraints XsdSchemaParser::readBlockingConstrain
content = m_blockDefault;
}
- QSet<QString> contentSet = content.split(QLatin1Char(' '), QString::SkipEmptyParts).toSet();
+ const auto &contentList = content.split(QLatin1Char(' '), QString::SkipEmptyParts);
+ QSet<QString> contentSet(contentList.cbegin(), contentList.cend());
// if the '#all' tag is defined, we return all allowed values
if (contentSet.contains(QString::fromLatin1("#all"))) {
diff --git a/src/xmlpatterns/schema/qxsdschemaparsercontext.cpp b/src/xmlpatterns/schema/qxsdschemaparsercontext.cpp
index 0708c1de..56024837 100644
--- a/src/xmlpatterns/schema/qxsdschemaparsercontext.cpp
+++ b/src/xmlpatterns/schema/qxsdschemaparsercontext.cpp
@@ -81,7 +81,7 @@ QXmlName XsdSchemaParserContext::createAnonymousName(const QString &targetNamesp
{
m_anonymousNameCounter.ref();
- const QString name = QString::fromLatin1("__AnonymousClass_%1").arg(m_anonymousNameCounter.load());
+ const QString name = QString::fromLatin1("__AnonymousClass_%1").arg(m_anonymousNameCounter.loadRelaxed());
return m_namePool->allocateQName(targetNamespace, name);
}
diff --git a/src/xmlpatterns/schema/qxsdstatemachine_p.h b/src/xmlpatterns/schema/qxsdstatemachine_p.h
index e535c8be..a82e29cb 100644
--- a/src/xmlpatterns/schema/qxsdstatemachine_p.h
+++ b/src/xmlpatterns/schema/qxsdstatemachine_p.h
@@ -224,7 +224,7 @@ namespace QPatternist
QSet<StateId> result = input;
// add the input states to the list of to be processed states
- QList<StateId> workStates = input.toList();
+ QList<StateId> workStates = input.values();
while (!workStates.isEmpty()) { // while there are states to be processed left...
// dequeue one state from list