4#ifndef QASSOCIATIVEITERABLE_H
5#define QASSOCIATIVEITERABLE_H
7#include <QtCore/qiterable.h>
8#include <QtCore/qvariant.h>
83 template<
typename Po
inter>
92 :
QIterable(metaAssociation, metaType.alignOf(), iterable)
99 :
QIterable(metaAssociation, metaType.alignOf(), iterable)
107 QIterable::operator=(std::move(
other));
135 if (m_pointer ==
nullptr)
138 const auto metaAssociation = m_pointer->metaContainer();
139 const QMetaType metaType(metaAssociation.mappedMetaType());
141 return m_pointer->key();
144 metaAssociation.mappedAtIterator(m_pointer->constIterator(),
145 metaType == QMetaType::fromType<QVariant>() ? &
v :
v.data());
153 if (m_pointer ==
nullptr)
156 const auto metaAssociation = m_pointer->metaContainer();
157 const QMetaType metaType(metaAssociation.mappedMetaType());
160 metaAssociation.setMappedAtIterator(m_pointer->constIterator(),
QAssociativeConstIterator(QConstIterator &&it)
The QAssociativeIterable class is an iterable interface for an associative container in a QVariant.
QAssociativeIterable(const T *p)
const_iterator begin() const
QAssociativeIterable(T *p)
QAssociativeIterable(const QMetaAssociation &metaAssociation, const QMetaType &metaType, const void *iterable)
const_iterator constBegin() const
const_iterator constFind(const QVariant &key) const
QAssociativeIterable(QIterable< QMetaAssociation > &&other)
const_iterator constEnd() const
const_iterator end() const
QAssociativeIterable & operator=(QIterable< QMetaAssociation > &&other)
QAssociativeIterable(const QMetaAssociation &metaAssociation, const QMetaType &metaType, void *iterable)
QAssociativeIterable(const QMetaAssociation &metaAssociation, Pointer iterable)
QAssociativeIterator(QIterator &&it)
QConstIterator< Container > constBegin() const
Returns a QConstIterator for the beginning of the container.
QIterator< Container > mutableEnd()
Returns a QSequentialIterable::iterator for the end of the container.
QIterator< Container > mutableBegin()
Returns a QIterator for the beginning of the container.
QConstIterator< Container > constEnd() const
Returns a Qterable::QConstIterator for the end of the container.
QTaggedIterator is a template class that wraps an iterator and exposes standard iterator traits.
Emulated const pointer to QVariant based on a pointer.
QVariantPointer is a template class that emulates a pointer to QVariant based on a pointer.
The QVariantRef acts as a non-const reference to a QVariant.
QVariantRef & operator=(const QVariant &value)
Assigns a new value to the value pointed to by the pointer this QVariantRef refers to.
const void * coerce(const QVariant &value, const QMetaType &type)
QSet< QString >::iterator it
Combined button and popup list for selecting options.
constexpr timespec operator*(const timespec &t1, int mul)
EGLOutputLayerEXT EGLint EGLAttrib value
[5]
GLsizei const GLfloat * v
[13]
#define Q_DECLARE_TYPEINFO(TYPE, FLAGS)
settings setValue("DataPump/bgcolor", color)
The QConstIterator allows iteration over a container in a QVariant.
The QIterator is a template class that allows iteration over a container in a QVariant.