diff --git a/src/orderedmap.h b/src/orderedmap.h index 348cd6b..3ce8ba4 100644 --- a/src/orderedmap.h +++ b/src/orderedmap.h @@ -1,5 +1,42 @@ #ifndef ORDEREDMAP_H #define ORDEREDMAP_H +/*************************************************************************** + * * + * Copyright (C) 2013, 2017-2019 by Mandeep Sandhu * + * - * + * Copyright (C) 2022 by Vadim Peretokin - * + * Copyright (C) 2022 by Stephen Lyons - * + * * + * All rights reserved. * + * * + * Redistribution and use in source and binary forms, with or without * + * modification, are permitted provided that the following conditions * + * are met: * + * * + * Redistributions of source code must retain the above copyright * + * notice, this list of conditions and the following disclaimer. * + * * + * Redistributions in binary form must reproduce the above copyright * + * notice, this list of conditions and the following disclaimer in * + * the documentation and/or other materials provided with the * + * distribution. * + * * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS * + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE * + * COPYRIGHT *HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, * + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, * + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER * + * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN * + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * + * POSSIBILITY OF SUCH DAMAGE. * + * * + *************************************************************************** + * BSD 2-Clause "Simplified" Licence * + ***************************************************************************/ #include #include @@ -34,8 +71,8 @@ class OrderedMap { class OMHash; - typedef typename QLinkedList::iterator QllIterator; - typedef typename QLinkedList::const_iterator QllConstIterator; + typedef typename std::list::iterator QllIterator; + typedef typename std::list::const_iterator QllConstIterator; typedef QPair OMHashValue; typedef typename OMHash::iterator OMHashIterator; @@ -115,8 +152,6 @@ class OrderedMap const_iterator find(const Key& key) const; - class const_iterator; - class iterator { QllIterator qllIter; @@ -339,7 +374,7 @@ class OrderedMap void copy(const OrderedMap &other); OMHash data; - QLinkedList insertOrder; + std::list insertOrder; }; template @@ -429,7 +464,11 @@ bool OrderedMap::isEmpty() const template QList OrderedMap::keys() const { - return QList::fromStdList(insertOrder.toStdList()); +#if (QT_VERSION >= 0x050E00) + return QList(insertOrder.begin(), insertOrder.end()); +#else + return QList::fromStdList(insertOrder); +#endif } template