File indexing completed on 2024-05-05 17:32:29
0001 // SPDX-FileCopyrightText: 2021 Jonah BrĂ¼chert <jbb@kaidan.im> 0002 // 0003 // SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0004 0005 #include "phonenumberlist.h" 0006 0007 namespace ranges = std::ranges; 0008 0009 PhoneNumberList::PhoneNumberList(const QString &phoneNumbers) 0010 : QVector<PhoneNumber>() 0011 { 0012 const auto individualNumbers = phoneNumbers.split(u'~', Qt::SkipEmptyParts); 0013 reserve(individualNumbers.size()); 0014 0015 ranges::transform(individualNumbers, std::back_inserter(*this), [](const QString &number) { 0016 return PhoneNumber(number); 0017 }); 0018 } 0019 0020 QString PhoneNumberList::toString() const 0021 { 0022 QStringList individualNumbers; 0023 individualNumbers.reserve(size()); 0024 0025 ranges::transform(*this, std::back_inserter(individualNumbers), [](const PhoneNumber &number) { 0026 return number.toInternational(); 0027 }); 0028 0029 return individualNumbers.join(u'~'); 0030 }