summaryrefslogtreecommitdiffstats
path: root/src/corelib/kernel/qmetatype.h
diff options
context:
space:
mode:
authorIikka Eklund <iikka.eklund@digia.com>2014-04-01 11:44:26 +0300
committerIikka Eklund <iikka.eklund@digia.com>2014-04-01 11:44:27 +0300
commit0ab63b035a649dc1982c867cd37d466d249004b9 (patch)
tree6de22edcd3957aae3eee698136a000e52ab7f8fe /src/corelib/kernel/qmetatype.h
parenta6f8aa0ae1d5a1d1099df1891ea60b14b6eb6065 (diff)
parent0cb2c760c219514849ab0f6be8e5368f92dfa5d9 (diff)
Merge remote-tracking branch 'origin/stable' into dev
Diffstat (limited to 'src/corelib/kernel/qmetatype.h')
-rw-r--r--src/corelib/kernel/qmetatype.h42
1 files changed, 7 insertions, 35 deletions
diff --git a/src/corelib/kernel/qmetatype.h b/src/corelib/kernel/qmetatype.h
index 7679258a98..0a52aaf680 100644
--- a/src/corelib/kernel/qmetatype.h
+++ b/src/corelib/kernel/qmetatype.h
@@ -939,10 +939,6 @@ public:
}
template<class T>
- static void advanceImpl(void **p, int step)
- { IteratorOwner<typename T::const_iterator>::advance(p, step); }
-
- template<class T>
static void moveToBeginImpl(const void *container, void **iterator)
{ IteratorOwner<typename T::const_iterator>::assign(iterator, static_cast<const T*>(container)->begin()); }
@@ -951,21 +947,9 @@ public:
{ IteratorOwner<typename T::const_iterator>::assign(iterator, static_cast<const T*>(container)->end()); }
template<class T>
- static void destroyIterImpl(void **iterator)
- { IteratorOwner<typename T::const_iterator>::destroy(iterator); }
-
- template<class T>
- static bool equalIterImpl(void * const *iterator, void * const *other)
- { return IteratorOwner<typename T::const_iterator>::equal(iterator, other); }
-
- template<class T>
static VariantData getImpl(void * const *iterator, int metaTypeId, uint flags)
{ return VariantData(metaTypeId, IteratorOwner<typename T::const_iterator>::getData(iterator), flags); }
- template<class T>
- static void copyIterImpl(void **dest, void * const * src)
- { IteratorOwner<typename T::const_iterator>::assign(dest, src); }
-
public:
template<class T> QSequentialIterableImpl(const T*p)
: _iterable(p)
@@ -977,11 +961,11 @@ public:
, _at(atImpl<T>)
, _moveToBegin(moveToBeginImpl<T>)
, _moveToEnd(moveToEndImpl<T>)
- , _advance(advanceImpl<T>)
+ , _advance(IteratorOwner<typename T::const_iterator>::advance)
, _get(getImpl<T>)
- , _destroyIter(destroyIterImpl<T>)
- , _equalIter(equalIterImpl<T>)
- , _copyIter(copyIterImpl<T>)
+ , _destroyIter(IteratorOwner<typename T::const_iterator>::destroy)
+ , _equalIter(IteratorOwner<typename T::const_iterator>::equal)
+ , _copyIter(IteratorOwner<typename T::const_iterator>::assign)
{
}
@@ -1134,18 +1118,6 @@ public:
static VariantData getValueImpl(void * const *iterator, int metaTypeId, uint flags)
{ return VariantData(metaTypeId, &AssociativeContainerAccessor<T>::getValue(*static_cast<typename T::const_iterator*>(*iterator)), flags); }
- template<class T>
- static void destroyIterImpl(void **iterator)
- { IteratorOwner<typename T::const_iterator>::destroy(iterator); }
-
- template<class T>
- static bool equalIterImpl(void * const *iterator, void * const *other)
- { return IteratorOwner<typename T::const_iterator>::equal(iterator, other); }
-
- template<class T>
- static void copyIterImpl(void **dest, void * const * src)
- { IteratorOwner<typename T::const_iterator>::assign(dest, src); }
-
public:
template<class T> QAssociativeIterableImpl(const T*p)
: _iterable(p)
@@ -1160,9 +1132,9 @@ public:
, _advance(advanceImpl<T>)
, _getKey(getKeyImpl<T>)
, _getValue(getValueImpl<T>)
- , _destroyIter(destroyIterImpl<T>)
- , _equalIter(equalIterImpl<T>)
- , _copyIter(copyIterImpl<T>)
+ , _destroyIter(IteratorOwner<typename T::const_iterator>::destroy)
+ , _equalIter(IteratorOwner<typename T::const_iterator>::equal)
+ , _copyIter(IteratorOwner<typename T::const_iterator>::assign)
{
}