AUI Framework  master
Cross-platform module-based framework for developing C++20 desktop applications
AStringVector.h
1/*
2 * AUI Framework - Declarative UI toolkit for modern C++20
3 * Copyright (C) 2020-2024 Alex2772 and Contributors
4 *
5 * SPDX-License-Identifier: MPL-2.0
6 *
7 * This Source Code Form is subject to the terms of the Mozilla Public
8 * License, v. 2.0. If a copy of the MPL was not distributed with this
9 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
10 */
11
12#pragma once
13#include "AString.h"
14#include "AVector.h"
15
16
21class API_AUI_CORE AStringVector: public AVector<AString>
22{
23public:
25 {
26 }
28 {
29 }
30
31 template<typename Iterator>
32 AStringVector(Iterator begin, Iterator end) : AVector<AString>(begin, end)
33 {
34 }
35
36 AStringVector(const std::allocator<AString>& allocator)
37 : AVector<AString>(allocator)
38 {
39 }
40
41 AStringVector(super::size_type _Count, const std::allocator<AString>& allocator)
42 : AVector<AString>(_Count, allocator)
43 {
44 }
45
46 AStringVector(super::size_type _Count, const AString& _Val, const std::allocator<AString>& allocator)
47 : AVector<AString>(_Count, _Val, allocator)
48 {
49 }
50
51 AStringVector(std::initializer_list<AString> _Ilist, const std::allocator<AString>& allocator = std::allocator<AString>())
52 : AVector<AString>(std::move(_Ilist), allocator)
53 {
54 }
55
56 AStringVector& noEmptyStrings();
57
58 [[nodiscard]] AString join(wchar_t w) const;
59 [[nodiscard]] AString join(const AString& w) const;
60
61};
An AVector with string-related functions.
Definition: AStringVector.h:22
Represents a Unicode character string.
Definition: AString.h:37
A std::vector with AUI extensions.
Definition: AVector.h:38