QtBase  v6.3.1
Public Types | Public Member Functions | List of all members
QSequentialIterable Class Reference

The QSequentialIterable class is an iterable interface for a container in a QVariant. More...

#include <qsequentialiterable.h>

Inheritance diagram for QSequentialIterable:
Inheritance graph
[legend]
Collaboration diagram for QSequentialIterable:
Collaboration graph
[legend]

Public Types

enum  Position { Unspecified , AtBegin , AtEnd }
 
using iterator = QTaggedIterator< QSequentialIterator, void >
 
using const_iterator = QTaggedIterator< QSequentialConstIterator, void >
 
using RandomAccessIterator = QTaggedIterator< iterator, std::random_access_iterator_tag >
 
using BidirectionalIterator = QTaggedIterator< iterator, std::bidirectional_iterator_tag >
 
using ForwardIterator = QTaggedIterator< iterator, std::forward_iterator_tag >
 
using InputIterator = QTaggedIterator< iterator, std::input_iterator_tag >
 
using RandomAccessConstIterator = QTaggedIterator< const_iterator, std::random_access_iterator_tag >
 
using BidirectionalConstIterator = QTaggedIterator< const_iterator, std::bidirectional_iterator_tag >
 
using ForwardConstIterator = QTaggedIterator< const_iterator, std::forward_iterator_tag >
 
using InputConstIterator = QTaggedIterator< const_iterator, std::input_iterator_tag >
 

Public Member Functions

template<class T >
 QSequentialIterable (const T *p)
 
template<class T >
 QSequentialIterable (T *p)
 
 QSequentialIterable ()
 
template<typename Pointer >
 QSequentialIterable (const QMetaSequence &metaSequence, Pointer iterable)
 
 QSequentialIterable (const QMetaSequence &metaSequence, const QMetaType &metaType, void *iterable)
 
 QSequentialIterable (const QMetaSequence &metaSequence, const QMetaType &metaType, const void *iterable)
 
 QSequentialIterable (QIterable< QMetaSequence > &&other)
 
QSequentialIterableoperator= (QIterable< QMetaSequence > &&other)
 
const_iterator begin () const
 
const_iterator end () const
 
const_iterator constBegin () const
 
const_iterator constEnd () const
 
iterator mutableBegin ()
 
iterator mutableEnd ()
 
QVariant at (qsizetype idx) const
 
void set (qsizetype idx, const QVariant &value)
 
void addValue (const QVariant &value, Position position=Unspecified)
 
void removeValue (Position position=Unspecified)
 
QMetaType valueMetaType () const
 
- Public Member Functions inherited from QIterable< QMetaSequence >
 QIterable (const QMetaSequence &metaContainer, const T *p)
 
 QIterable (const QMetaSequence &metaContainer, T *p)
 
 QIterable (const QMetaSequence &metaContainer, Pointer iterable)
 
 QIterable (const QMetaSequence &metaContainer, qsizetype alignment, const void *p)
 
 QIterable (const QMetaSequence &metaContainer, qsizetype alignment, void *p)
 
bool canInputIterate () const
 
bool canForwardIterate () const
 
bool canReverseIterate () const
 
bool canRandomAccessIterate () const
 
const voidconstIterable () const
 
voidmutableIterable ()
 
QConstIterator< QMetaSequenceconstBegin () const
 
QConstIterator< QMetaSequenceconstEnd () const
 
QIterator< QMetaSequencemutableBegin ()
 
QIterator< QMetaSequencemutableEnd ()
 
qsizetype size () const
 
QMetaSequence metaContainer () const
 

Additional Inherited Members

- Protected Attributes inherited from QIterable< QMetaSequence >
uint m_revision
 
QtPrivate::QConstPreservingPointer< void, quint16m_iterable
 
QMetaSequence m_metaContainer
 

Detailed Description

The QSequentialIterable class is an iterable interface for a container in a QVariant.

Since
5.2 \inmodule QtCore

This class allows several methods of accessing the values of a container held within a QVariant. An instance of QSequentialIterable can be extracted from a QVariant if it can be converted to a QVariantList.

The container itself is not copied before iterating over it.

See also
QVariant

Definition at line 78 of file qsequentialiterable.h.

Member Typedef Documentation

◆ BidirectionalConstIterator

Exposes a const_iterator using std::bidirectional_iterator_tag.

Definition at line 90 of file qsequentialiterable.h.

◆ BidirectionalIterator

Exposes an iterator using std::bidirectional_iterator_tag.

Definition at line 85 of file qsequentialiterable.h.

◆ const_iterator

Definition at line 82 of file qsequentialiterable.h.

◆ ForwardConstIterator

Exposes a const_iterator using std::forward_iterator_tag.

Definition at line 91 of file qsequentialiterable.h.

◆ ForwardIterator

Exposes an iterator using std::forward_iterator_tag.

Definition at line 86 of file qsequentialiterable.h.

◆ InputConstIterator

Exposes a const_iterator using std::input_iterator_tag.

Definition at line 92 of file qsequentialiterable.h.

◆ InputIterator

Exposes an iterator using std::input_iterator_tag.

Definition at line 87 of file qsequentialiterable.h.

◆ iterator

Definition at line 81 of file qsequentialiterable.h.

◆ RandomAccessConstIterator

Exposes a const_iterator using std::random_access_iterator_tag.

Definition at line 89 of file qsequentialiterable.h.

◆ RandomAccessIterator

Exposes an iterator using std::random_access_iterator_tag.

Definition at line 84 of file qsequentialiterable.h.

Member Enumeration Documentation

◆ Position

Enumerator
Unspecified 
AtBegin 
AtEnd 

Definition at line 152 of file qsequentialiterable.h.

Constructor & Destructor Documentation

◆ QSequentialIterable() [1/7]

template<class T >
QSequentialIterable::QSequentialIterable ( const T p)
inline

Definition at line 95 of file qsequentialiterable.h.

Here is the call graph for this function:

◆ QSequentialIterable() [2/7]

template<class T >
QSequentialIterable::QSequentialIterable ( T p)
inline

Definition at line 102 of file qsequentialiterable.h.

◆ QSequentialIterable() [3/7]

QSequentialIterable::QSequentialIterable ( )
inline

Definition at line 107 of file qsequentialiterable.h.

◆ QSequentialIterable() [4/7]

template<typename Pointer >
QSequentialIterable::QSequentialIterable ( const QMetaSequence metaSequence,
Pointer  iterable 
)
inline

Definition at line 113 of file qsequentialiterable.h.

◆ QSequentialIterable() [5/7]

QSequentialIterable::QSequentialIterable ( const QMetaSequence metaSequence,
const QMetaType metaType,
void iterable 
)
inline

Definition at line 119 of file qsequentialiterable.h.

◆ QSequentialIterable() [6/7]

QSequentialIterable::QSequentialIterable ( const QMetaSequence metaSequence,
const QMetaType metaType,
const void iterable 
)
inline

Definition at line 126 of file qsequentialiterable.h.

◆ QSequentialIterable() [7/7]

QSequentialIterable::QSequentialIterable ( QIterable< QMetaSequence > &&  other)
inline

Definition at line 132 of file qsequentialiterable.h.

Member Function Documentation

◆ addValue()

void QSequentialIterable::addValue ( const QVariant value,
Position  position = Unspecified 
)

Adds value to the container, at position, if possible.

Definition at line 107 of file qsequentialiterable.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ at()

QVariant QSequentialIterable::at ( qsizetype  idx) const

Returns the value at position idx in the container.

Definition at line 157 of file qsequentialiterable.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ begin()

const_iterator QSequentialIterable::begin ( ) const
inline

Definition at line 140 of file qsequentialiterable.h.

Here is the caller graph for this function:

◆ constBegin()

const_iterator QSequentialIterable::constBegin ( ) const
inline

Definition at line 143 of file qsequentialiterable.h.

Here is the call graph for this function:

◆ constEnd()

const_iterator QSequentialIterable::constEnd ( ) const
inline

Definition at line 144 of file qsequentialiterable.h.

Here is the call graph for this function:

◆ end()

const_iterator QSequentialIterable::end ( ) const
inline

Definition at line 141 of file qsequentialiterable.h.

Here is the caller graph for this function:

◆ mutableBegin()

iterator QSequentialIterable::mutableBegin ( )
inline

Definition at line 146 of file qsequentialiterable.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ mutableEnd()

iterator QSequentialIterable::mutableEnd ( )
inline

Definition at line 147 of file qsequentialiterable.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator=()

QSequentialIterable& QSequentialIterable::operator= ( QIterable< QMetaSequence > &&  other)
inline

Definition at line 134 of file qsequentialiterable.h.

Here is the call graph for this function:

◆ removeValue()

void QSequentialIterable::removeValue ( Position  position = Unspecified)

Removes a value from the container, at position, if possible.

Definition at line 131 of file qsequentialiterable.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ set()

void QSequentialIterable::set ( qsizetype  idx,
const QVariant value 
)

Sets the element at position idx in the container to value.

Definition at line 182 of file qsequentialiterable.cpp.

Here is the call graph for this function:

◆ valueMetaType()

QMetaType QSequentialIterable::valueMetaType ( ) const

Definition at line 149 of file qsequentialiterable.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

The documentation for this class was generated from the following files: