KSortableList

Search for usage in LXR

KSortableList< T, Key > Class Template Reference

#include <KSortableList>

Inheritance diagram for KSortableList< T, Key >:

Public Member Functions

void insert (Key i, const T &t)
 
T & operator[] (Key i)
 
const T & operator[] (Key i) const
 
void sort ()
 
- Public Member Functions inherited from QList< KSortableItem< T, Key > >
 QList (const QList< T > &other)
 
 QList (std::initializer_list< T > args)
 
 QList (InputIterator first, InputIterator last)
 
 QList (QList< T > &&other)
 
void append (const T &value)
 
void append (const QList< T > &value)
 
const T & at (int i) const const
 
T & back ()
 
const T & back () const const
 
QList::iterator begin ()
 
QList::const_iterator begin () const const
 
QList::const_iterator cbegin () const const
 
QList::const_iterator cend () const const
 
void clear ()
 
QList::const_iterator constBegin () const const
 
QList::const_iterator constEnd () const const
 
const T & constFirst () const const
 
const T & constLast () const const
 
bool contains (const T &value) const const
 
int count (const T &value) const const
 
int count () const const
 
QList::const_reverse_iterator crbegin () const const
 
QList::const_reverse_iterator crend () const const
 
bool empty () const const
 
QList::iterator end ()
 
QList::const_iterator end () const const
 
bool endsWith (const T &value) const const
 
QList::iterator erase (QList::iterator pos)
 
QList::iterator erase (QList::iterator begin, QList::iterator end)
 
const T & first () const const
 
T & first ()
 
T & front ()
 
const T & front () const const
 
int indexOf (const T &value, int from) const const
 
void insert (int i, const T &value)
 
QList::iterator insert (QList::iterator before, const T &value)
 
bool isEmpty () const const
 
T & last ()
 
const T & last () const const
 
int lastIndexOf (const T &value, int from) const const
 
int length () const const
 
QList< T > mid (int pos, int length) const const
 
void move (int from, int to)
 
bool operator!= (const QList< T > &other) const const
 
QList< T > operator+ (const QList< T > &other) const const
 
QList< T > & operator+= (const QList< T > &other)
 
QList< T > & operator+= (const T &value)
 
bool operator< (const QList< T > &lhs, const QList< T > &rhs)
 
QDataStreamoperator<< (QDataStream &out, const QList< T > &list)
 
QList< T > & operator<< (const QList< T > &other)
 
QList< T > & operator<< (const T &value)
 
bool operator<= (const QList< T > &lhs, const QList< T > &rhs)
 
QList< T > & operator= (QList< T > &&other)
 
QList< T > & operator= (const QList< T > &other)
 
bool operator== (const QList< T > &other) const const
 
bool operator> (const QList< T > &lhs, const QList< T > &rhs)
 
bool operator>= (const QList< T > &lhs, const QList< T > &rhs)
 
QDataStreamoperator>> (QDataStream &in, QList< T > &list)
 
const T & operator[] (int i) const const
 
T & operator[] (int i)
 
void pop_back ()
 
void pop_front ()
 
void prepend (const T &value)
 
void push_back (const T &value)
 
void push_front (const T &value)
 
uint qHash (const QList< T > &key, uint seed)
 
QList::reverse_iterator rbegin ()
 
QList::const_reverse_iterator rbegin () const const
 
int removeAll (const T &value)
 
void removeAt (int i)
 
void removeFirst ()
 
void removeLast ()
 
bool removeOne (const T &value)
 
QList::const_reverse_iterator rend () const const
 
QList::reverse_iterator rend ()
 
void replace (int i, const T &value)
 
void reserve (int alloc)
 
int size () const const
 
bool startsWith (const T &value) const const
 
void swap (int i, int j)
 
void swap (QList< T > &other)
 
void swapItemsAt (int i, int j)
 
takeAt (int i)
 
takeFirst ()
 
takeLast ()
 
QSet< T > toSet () const const
 
std::list< T > toStdList () const const
 
QVector< T > toVector () const const
 
value (int i) const const
 
value (int i, const T &defaultValue) const const
 

Additional Inherited Members

- Static Public Member Functions inherited from QList< KSortableItem< T, Key > >
QList< T > fromSet (const QSet< T > &set)
 
QList< T > fromStdList (const std::list< T > &list)
 
QList< T > fromVector (const QVector< T > &vector)
 
- Public Attributes inherited from QList< KSortableItem< T, Key > >
typedef const_pointer
 
typedef const_reference
 
typedef const_reverse_iterator
 
typedef ConstIterator
 
typedef difference_type
 
typedef Iterator
 
typedef pointer
 
typedef reference
 
typedef reverse_iterator
 
typedef size_type
 
typedef value_type
 

Detailed Description

template<typename T, typename Key = int>
class KSortableList< T, Key >

KSortableList is a QList which associates a key with each item in the list.

This key is used for sorting when calling sort().

This allows to temporarily calculate a key and use it for sorting, without having to store that key in the items, or calculate that key many times for the same item during sorting if that calculation is expensive.

Definition at line 160 of file ksortablelist.h.

Member Function Documentation

template<typename T , typename Key = int>
void KSortableList< T, Key >::insert ( Key  i,
const T &  t 
)
inline

Insert a KSortableItem with the given values.

Parameters
ithe first value
tthe second value

Definition at line 168 of file ksortablelist.h.

template<typename T , typename Key = int>
T& KSortableList< T, Key >::operator[] ( Key  i)
inline

Returns the first value of the KSortableItem at the given position.

Returns
the first value of the KSortableItem

Definition at line 178 of file ksortablelist.h.

template<typename T , typename Key = int>
const T& KSortableList< T, Key >::operator[] ( Key  i) const
inline

Returns the first value of the KSortableItem at the given position.

Returns
the first value of the KSortableItem

Definition at line 187 of file ksortablelist.h.

template<typename T , typename Key = int>
void KSortableList< T, Key >::sort ( )
inline

Sorts the KSortableItems.

Definition at line 195 of file ksortablelist.h.


The documentation for this class was generated from the following file:
This file is part of the KDE documentation.
Documentation copyright © 1996-2021 The KDE developers.
Generated on Tue Apr 20 2021 22:51:58 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.