File indexing completed on 2024-05-12 05:29:23
0001 /* 0002 * SPDX-FileCopyrightText: 2012-2016 Ivan Cukic <ivan.cukic@kde.org> 0003 * 0004 * SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0005 */ 0006 0007 #pragma once 0008 0009 namespace kamd 0010 { 0011 namespace utils 0012 { 0013 template<typename Container> 0014 inline void merge_into(Container &into, const Container &from) 0015 { 0016 typename Container::iterator into_begin = into.begin(); 0017 typename Container::iterator into_end = into.end(); 0018 typename Container::const_iterator from_begin = from.begin(); 0019 typename Container::const_iterator from_end = from.end(); 0020 0021 while (from_begin != from_end) { 0022 while (into_begin != into_end && *from_begin >= *into_begin) 0023 into_begin++; 0024 0025 into_begin = into.insert(into_begin, *from_begin); 0026 into_begin++; 0027 from_begin++; 0028 } 0029 } 0030 0031 } // namespace utils 0032 } // namespace kamd