ICU4X
International Components for Unicode
Loading...
Searching...
No Matches
CodePointSetBuilder.d.hpp
Go to the documentation of this file.
1#ifndef icu4x_CodePointSetBuilder_D_HPP
2#define icu4x_CodePointSetBuilder_D_HPP
3
4#include <stdio.h>
5#include <stdint.h>
6#include <stddef.h>
7#include <stdbool.h>
8#include <memory>
9#include <functional>
10#include <optional>
11#include <cstdlib>
13
14namespace icu4x {
15namespace capi { struct CodePointSetBuilder; }
17namespace capi { struct CodePointSetData; }
19}
20
21
22namespace icu4x {
23namespace capi {
24 struct CodePointSetBuilder;
25} // namespace capi
26} // namespace
27
28namespace icu4x {
32class CodePointSetBuilder {
33public:
34
40 inline static std::unique_ptr<icu4x::CodePointSetBuilder> create();
41
49 inline std::unique_ptr<icu4x::CodePointSetData> build();
50
58 inline void complement();
59
65 inline bool is_empty() const;
66
72 inline void add_char(char32_t ch);
73
79 inline void add_inclusive_range(char32_t start, char32_t end);
80
86 inline void add_set(const icu4x::CodePointSetData& data);
87
93 inline void remove_char(char32_t ch);
94
100 inline void remove_inclusive_range(char32_t start, char32_t end);
101
107 inline void remove_set(const icu4x::CodePointSetData& data);
108
114 inline void retain_char(char32_t ch);
115
121 inline void retain_inclusive_range(char32_t start, char32_t end);
122
128 inline void retain_set(const icu4x::CodePointSetData& data);
129
137 inline void complement_char(char32_t ch);
138
146 inline void complement_inclusive_range(char32_t start, char32_t end);
147
155 inline void complement_set(const icu4x::CodePointSetData& data);
156
157 inline const icu4x::capi::CodePointSetBuilder* AsFFI() const;
158 inline icu4x::capi::CodePointSetBuilder* AsFFI();
159 inline static const icu4x::CodePointSetBuilder* FromFFI(const icu4x::capi::CodePointSetBuilder* ptr);
160 inline static icu4x::CodePointSetBuilder* FromFFI(icu4x::capi::CodePointSetBuilder* ptr);
161 inline static void operator delete(void* ptr);
162private:
163 CodePointSetBuilder() = delete;
164 CodePointSetBuilder(const icu4x::CodePointSetBuilder&) = delete;
165 CodePointSetBuilder(icu4x::CodePointSetBuilder&&) noexcept = delete;
166 CodePointSetBuilder operator=(const icu4x::CodePointSetBuilder&) = delete;
167 CodePointSetBuilder operator=(icu4x::CodePointSetBuilder&&) noexcept = delete;
168 static void operator delete[](void*, size_t) = delete;
169};
170
171} // namespace
172#endif // icu4x_CodePointSetBuilder_D_HPP
Definition CodePointSetBuilder.d.hpp:32
void complement_char(char32_t ch)
Definition CodePointSetBuilder.hpp:127
static std::unique_ptr< icu4x::CodePointSetBuilder > create()
Definition CodePointSetBuilder.hpp:60
void complement_set(const icu4x::CodePointSetData &data)
Definition CodePointSetBuilder.hpp:138
bool is_empty() const
Definition CodePointSetBuilder.hpp:74
void remove_inclusive_range(char32_t start, char32_t end)
Definition CodePointSetBuilder.hpp:100
void complement()
Definition CodePointSetBuilder.hpp:70
void add_char(char32_t ch)
Definition CodePointSetBuilder.hpp:79
void retain_char(char32_t ch)
Definition CodePointSetBuilder.hpp:111
std::unique_ptr< icu4x::CodePointSetData > build()
Definition CodePointSetBuilder.hpp:65
void remove_char(char32_t ch)
Definition CodePointSetBuilder.hpp:95
void retain_set(const icu4x::CodePointSetData &data)
Definition CodePointSetBuilder.hpp:122
void complement_inclusive_range(char32_t start, char32_t end)
Definition CodePointSetBuilder.hpp:132
void add_set(const icu4x::CodePointSetData &data)
Definition CodePointSetBuilder.hpp:90
void retain_inclusive_range(char32_t start, char32_t end)
Definition CodePointSetBuilder.hpp:116
void add_inclusive_range(char32_t start, char32_t end)
Definition CodePointSetBuilder.hpp:84
void remove_set(const icu4x::CodePointSetData &data)
Definition CodePointSetBuilder.hpp:106
Definition CodePointSetData.d.hpp:42
Definition Bidi.d.hpp:14