|
| CSequence ()=default |
| Default constructor.
|
|
| CSequence (std::initializer_list< T > il) |
| Initializer list constructor.
|
|
| CSequence (QList< T > &&list) |
| By QList of type T.
|
|
| CSequence (const QList< T > &list) |
| By QList of type T.
|
|
template<typename It > |
| CSequence (It first, It last) |
| Range constructor.
|
|
| CSequence (const CSequence &other)=default |
| Copy constructor.
|
|
| CSequence (CSequence &&other)=default |
| Move constructor.
|
|
CSequence & | operator= (const CSequence &other)=default |
| Copy assignment.
|
|
CSequence & | operator= (CSequence &&other)=default |
| Move assignment.
|
|
| ~CSequence ()=default |
| Destructor.
|
|
QVector< T > | toVector () const & |
| Copy of internal vector.
|
|
QVector< T > | toVector () && |
| Copy of internal vector.
|
|
iterator | begin () |
| Returns iterator at the beginning of the sequence.
|
|
const_iterator | begin () const |
| Returns const iterator at the beginning of the sequence.
|
|
const_iterator | cbegin () const |
| Returns const iterator at the beginning of the sequence.
|
|
iterator | end () |
| Returns iterator one past the end of the sequence.
|
|
const_iterator | end () const |
| Returns const iterator one past the end of the sequence.
|
|
const_iterator | cend () const |
| Returns const iterator one past the end of the sequence.
|
|
reverse_iterator | rbegin () |
| Returns iterator at the beginning of the reversed sequence.
|
|
const_reverse_iterator | rbegin () const |
| Returns const iterator at the beginning of the reversed sequence.
|
|
const_reverse_iterator | crbegin () const |
| Returns const iterator at the beginning of the reversed sequence.
|
|
reverse_iterator | rend () |
| Returns iterator at the end of the reversed sequence.
|
|
const_reverse_iterator | rend () const |
| Returns const iterator at the end of the reversed sequence.
|
|
const_reverse_iterator | crend () const |
| Returns const iterator at the end of the reversed sequence.
|
|
void | swap (CSequence &other) noexcept |
| Swap this sequence with another.
|
|
reference | operator[] (size_type index) |
| Access an element by its index.
|
|
const_reference | operator[] (size_type index) const |
| Access an element by its index.
|
|
reference | front () |
| Access the first element.
|
|
const_reference | front () const |
| Access the first element.
|
|
const_reference | frontOrDefault () const |
| Access the first element, or a default-initialized value if the sequence is empty.
|
|
value_type | frontOrDefault (value_type def) const |
| Access the first element, or a default-initialized value if the sequence is empty.
|
|
reference | back () |
| Access the last element.
|
|
const_reference | back () const |
| Access the last element.
|
|
const_reference | backOrDefault () const |
| Access the last element, or a default value if the sequence is empty.
|
|
value_type | backOrDefault (value_type def) const |
| Access the last element, or a default value if the sequence is empty.
|
|
size_type | size () const |
| Returns number of elements in the sequence.
|
|
int | sizeInt () const |
| Avoid compiler warnings when using with int.
|
|
QString | sizeString () const |
| Convenience function.
|
|
bool | empty () const |
| Returns true if the sequence is empty.
|
|
bool | isEmpty () const |
| Synonym for empty.
|
|
void | clear () |
| Removes all elements in the sequence.
|
|
void | truncate (size_type maxSize) |
| Changes the size of the sequence, if it is bigger than the given size.
|
|
iterator | insert (iterator before, const T &value) |
| Inserts an element into the sequence. More...
|
|
iterator | insert (iterator before, T &&value) |
| Moves an element into the sequence. More...
|
|
void | push_back (const T &value) |
| Appends an element at the end of the sequence.
|
|
void | push_front (const T &value) |
| Insert as first element.
|
|
void | push_front (const CSequence &other) |
| Inserts all elements from another sequence at the beginning of this sequence.
|
|
void | push_frontMaxElements (const T &value, int maxElements) |
| Insert as first element by keep maxElements.
|
|
void | push_backMaxElements (const T &value, int maxElements) |
| Insert as last element by keep maxElements.
|
|
void | push_back (T &&value) |
| Move-appends an element at the end of the sequence.
|
|
void | push_front (T &&value) |
| Move-insert as first element.
|
|
void | push_back (const CSequence &other) |
| Appends all elements from another sequence at the end of this sequence.
|
|
void | push_back (CSequence &&other) |
| Appends all elements from another sequence at the end of this sequence. This version moves elements instead of copying.
|
|
template<typename I > |
void | push_back (const CRange< I > &range) |
| Appends all elements from a range at the end of this sequence.
|
|
CSequence | join (const CSequence &other) const |
| Concatenates two sequences and returns the result.
|
|
template<typename I > |
CSequence | join (const CRange< I > &range) const |
| Concatenates a sequence and a range and returns the result.
|
|
void | pop_back () |
| Removes an element at the end of the sequence.
|
|
void | pop_front () |
| Removes an element at the front of the sequence.
|
|
iterator | erase (iterator pos) |
| Remove the element pointed to by the given iterator. More...
|
|
iterator | erase (iterator it1, iterator it2) |
| Remove the range of elements between two iterators. More...
|
|
iterator | find (const T &object) |
| Return an iterator to the first element equal to the given object, or the end iterator if not found. O(n).
|
|
const_iterator | find (const T &object) const |
| Return an iterator to the first element equal to the given object, or the end iterator if not found. O(n).
|
|
template<class Predicate > |
CSequence | findBy (Predicate p) const |
| Return a copy containing only those elements for which a given predicate returns true. More...
|
|
template<class Predicate , class VariantMap > |
int | applyIf (Predicate p, const VariantMap &newValues, bool skipEqualValues=false) |
| Modify by applying a value map to each element for which a given predicate returns true. More...
|
|
template<class K1 , class V1 , class VariantMap > |
int | applyIf (K1 key1, V1 value1, const VariantMap &newValues, bool skipEqualValues=false) |
| Modify by applying a value map to each element matching a particular key/value pair. More...
|
|
int | remove (const T &object) |
| Remove all elements equal to the given object, if it is contained. More...
|
|
template<class Predicate > |
int | removeIf (Predicate p) |
| Remove elements for which a given predicate returns true. More...
|
|
template<class K0 , class V0 , class... KeysValues> |
int | removeIf (K0 k0, V0 v0, KeysValues... keysValues) |
| Remove elements matching some particular key/value pair(s). More...
|
|
int | removeIfIn (const CSequence &other) |
| Remove all elements if they are in other. More...
|
|
void | removeIfInSubset (const CSequence &other) |
| Remove all elements if they are in other. More...
|
|
int | replace (const T &original, const T &replacement) |
| Replace elements matching the given element with a replacement. More...
|
|
template<class Predicate > |
int | replaceIf (Predicate p, const T &replacement) |
| Replace elements for which a given predicate returns true. More...
|
|
template<class K1 , class V1 > |
int | replaceIf (K1 key1, V1 value1, const T &replacement) |
| Replace elements matching a particular key/value pair. More...
|
|
void | replaceOrAdd (const T &original, const T &replacement) |
| Replace elements matching the given element. If there is no match, push the new element on the end.
|
|
void | replaceOrAdd (const T &replacement) |
| Replace elements matching the given element. If there is no match, push the new element on the end.
|
|
void | replaceOrAdd (const CSequence< T > &replacements) |
| Replace or add given elements.
|
|
template<class K1 , class V1 > |
void | replaceOrAdd (K1 key1, V1 value1, const T &replacement) |
| Replace elements matching a particular key/value pair. If there is no match, push the new element on the end. More...
|
|
void | reverse () |
| In-place reverse.
|
|
Q_REQUIRED_RESULT CSequence | reversed () const |
| Reversed order.
|
|
template<class Predicate > |
void | sort (Predicate p) |
| In-place sort by a given comparator predicate.
|
|
template<class K1 , class... Keys> |
void | sortBy (K1 key1, Keys... keys) |
| In-place sort by some particular key(s). More...
|
|
template<class Predicate > |
Q_REQUIRED_RESULT CSequence | sorted (Predicate p) const |
| Return a copy sorted by a given comparator predicate.
|
|
template<class K1 , class... Keys> |
CSequence | sortedBy (K1 key1, Keys... keys) const |
| Return a copy sorted by some particular key(s). More...
|
|
template<class Predicate > |
void | partiallySort (size_type n, Predicate p) |
| In-place move the smallest n elements to the beginning and sort them.
|
|
template<class K1 , class... Keys> |
void | partiallySortBy (size_type n, K1 key1, Keys... keys) |
| In-place partially sort by some particular key(s). More...
|
|
template<class Predicate > |
Q_REQUIRED_RESULT CSequence | partiallySorted (size_type n, Predicate p) const |
| Return a copy with the smallest n elements at the beginning and sorted.
|
|
template<class K1 , class... Keys> |
CSequence | partiallySortedBy (size_type n, K1 key1, Keys... keys) const |
| Return a copy partially sorted by some particular key(s). More...
|
|
template<class U , class Key0 , class... Keys> |
bool | unorderedEqualsByKeys (const U &other, Key0 k0, Keys... keys) const |
| Return true if this container equals another container, considering only the given element members. Order of elements is not considered; this is implemented using a transient sort, so don't overuse.
|
|
template<class Predicate > |
auto | separate (Predicate p) const -> QMap< decltype(p(std::declval< T >())), CSequence > |
| Split up the sequence into subsequences for which the given predicate returns the same value.
|
|
template<class Key > |
auto | separateBy (Key k) const -> QMap< decltype(std::invoke(k, std::declval< T >())), CSequence > |
| Split up the sequence into subsequences of elements having the same value for the given key.
|
|
void | marshalToDataStream (QDataStream &stream) const |
| Marshal a value to a QDataStream. More...
|
|
void | unmarshalFromDataStream (QDataStream &stream) |
| Unmarshal a value from a QDataStream. More...
|
|
auto | to () const |
| Return a new container of a different type, containing the same elements as this one. More...
|
|
Other< T > | to (Other< T > other) const |
| Return a new container of a different type, containing the same elements as this one. More...
|
|
int | removeIf (K0 k0, V0 v0, KeysValues... keysValues) |
| Remove elements matching some particular key/value pair(s). More...
|
|
QJsonObject | toJson () const |
| Cast to JSON object. More...
|
|
QString | toJsonString (QJsonDocument::JsonFormat format=QJsonDocument::Indented) const |
| Convenience function JSON as string.
|
|
void | convertFromJson (const QJsonObject &json) |
| Assign from JSON object. More...
|
|
void | convertFromJson (const QString &jsonString, bool acceptCacheFormat=false) |
| Assign from JSON object string.
|
|
CStatusMessage | convertFromJsonNoThrow (const QJsonObject &json, const CLogCategoryList &categories, const QString &prefix) |
| Call convertFromJson, catch any CJsonException that is thrown and return it as CStatusMessage.
|
|
CStatusMessage | convertFromJsonNoThrow (const QString &jsonString, const CLogCategoryList &categories, const QString &prefix) |
| Call convertFromJson, catch any CJsonException that is thrown and return it as CStatusMessage.
|
|
QString | convertToQString (bool i18n=false) const |
| Cast as QString. More...
|
|
QStringList | toStringList (bool i18n=false) const |
| To string list.
|
|
void | marshallToDbus (QDBusArgument &argument) const |
| Marshall without begin/endStructure, for when composed within another object. More...
|
|
void | unmarshallFromDbus (const QDBusArgument &argument) |
| Unmarshall without begin/endStructure, for when composed within another object. More...
|
|
template<class F > |
auto | transform (F function) const |
| Return a new container generated by applying some transformation function to all elements of this one.
|
|
template<class Predicate > |
auto | findBy (Predicate p) const |
| Return a copy containing only those elements for which a given predicate returns true.
|
|
template<class K0 , class V0 , class... KeysValues> |
auto | findBy (K0 k0, V0 v0, KeysValues... keysValues) const |
| Return a copy containing only those elements matching some particular key/value pair(s). More...
|
|
template<class Predicate > |
const auto & | findFirstBy (Predicate p) const |
| Return a reference to the first element for which a given predicate returns true. Undefined if there is none.
|
|
template<class K , class V > |
const auto & | findFirstBy (K key, V value) const |
| Return a reference to the first element matching some particular key/value pair(s). Undefined if there is none.
|
|
template<class Predicate , class Value > |
auto | findFirstByOrDefault (Predicate p, const Value &def) const |
| Return a copy of the first element for which a given predicate returns true, or a default value if there is none.
|
|
template<class Predicate > |
auto | findFirstByOrDefault (Predicate p) const |
| Return a copy of the first element for which a given predicate returns true, or a default value if there is none.
|
|
template<class K , class V , class Value > |
auto | findFirstByOrDefault (K key, V value, const Value &def) const |
| Return a copy of the first element matching some particular key/value pair(s), or a default value if there is none.
|
|
template<class T , class K , class V > |
auto | findFirstByOrDefault (K T::*key, V value) const |
| Return a copy of the first element matching some particular key/value pair(s), or a default value if there is none.
|
|
template<class Predicate > |
bool | containsBy (Predicate p) const |
| Return true if there is an element for which a given predicate returns true.
|
|
template<class T > |
bool | contains (const T &object) const |
| Return true if there is an element equal to given object. Uses the most efficient implementation available in the derived container.
|
|
template<class K0 , class V0 , class... KeysValues> |
bool | contains (K0 k0, V0 v0, KeysValues... keysValues) const |
| Return a copy containing only those elements matching some particular key/value pair(s). More...
|
|
template<class T , class Predicate > |
bool | equalsBy (const T &other, Predicate c) const |
| Return true if this container equals another container according to the given element equality predicate.
|
|
template<class T , class Key0 , class... Keys> |
bool | equalsByKeys (const T &other, Key0 k0, Keys... keys) const |
| Return true if this container equals another container, considering only the given element members.
|
|
template<class T > |
T | randomElement () const |
| Pick one random element.
|
|
Derived | randomElements (int n) const |
| Copy n elements from the container at random.
|
|
Derived | sampleElements (int n) const |
| Copy n elements from the container, randomly selected but evenly distributed.
|
|
int | getMetaTypeId () const |
| Returns the Qt meta type ID of this object. More...
|
|
QString | getClassName () const |
| Class name.
|
|
bool | isA (int metaTypeId) const |
| Returns true if this object is an instance of the class with the given meta type ID, or one of its subclasses.
|
|
QString | toQString (bool i18n=false) const |
| Cast as QString.
|
|
std::string | toStdString (bool i18n=false) const |
| To std string.
|
|
QString | stringForStreaming () const |
| String for streaming operators.
|
|
CIcons::IconIndex | toIcon () const |
| As icon, not implemented by all classes.
|
|