diff options
author | Iikka Eklund <iikka.eklund@digia.com> | 2014-04-01 11:44:26 +0300 |
---|---|---|
committer | Iikka Eklund <iikka.eklund@digia.com> | 2014-04-01 11:44:27 +0300 |
commit | 0ab63b035a649dc1982c867cd37d466d249004b9 (patch) | |
tree | 6de22edcd3957aae3eee698136a000e52ab7f8fe /src/corelib/kernel/qmetatype.h | |
parent | a6f8aa0ae1d5a1d1099df1891ea60b14b6eb6065 (diff) | |
parent | 0cb2c760c219514849ab0f6be8e5368f92dfa5d9 (diff) |
Merge remote-tracking branch 'origin/stable' into dev
Change-Id: I2a6eb9dd7724931bc89f28bcc156e77c4e26d069
Diffstat (limited to 'src/corelib/kernel/qmetatype.h')
-rw-r--r-- | src/corelib/kernel/qmetatype.h | 42 |
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) { } |