CodePointSetBuilder.hpp (6295B)
1 #ifndef icu4x_CodePointSetBuilder_HPP 2 #define icu4x_CodePointSetBuilder_HPP 3 4 #include "CodePointSetBuilder.d.hpp" 5 6 #include <stdio.h> 7 #include <stdint.h> 8 #include <stddef.h> 9 #include <stdbool.h> 10 #include <memory> 11 #include <functional> 12 #include <optional> 13 #include <cstdlib> 14 #include "../diplomat_runtime.hpp" 15 #include "CodePointSetData.hpp" 16 17 18 namespace icu4x { 19 namespace capi { 20 extern "C" { 21 22 icu4x::capi::CodePointSetBuilder* icu4x_CodePointSetBuilder_create_mv1(void); 23 24 icu4x::capi::CodePointSetData* icu4x_CodePointSetBuilder_build_mv1(icu4x::capi::CodePointSetBuilder* self); 25 26 void icu4x_CodePointSetBuilder_complement_mv1(icu4x::capi::CodePointSetBuilder* self); 27 28 bool icu4x_CodePointSetBuilder_is_empty_mv1(const icu4x::capi::CodePointSetBuilder* self); 29 30 void icu4x_CodePointSetBuilder_add_char_mv1(icu4x::capi::CodePointSetBuilder* self, char32_t ch); 31 32 void icu4x_CodePointSetBuilder_add_inclusive_range_mv1(icu4x::capi::CodePointSetBuilder* self, char32_t start, char32_t end); 33 34 void icu4x_CodePointSetBuilder_add_set_mv1(icu4x::capi::CodePointSetBuilder* self, const icu4x::capi::CodePointSetData* data); 35 36 void icu4x_CodePointSetBuilder_remove_char_mv1(icu4x::capi::CodePointSetBuilder* self, char32_t ch); 37 38 void icu4x_CodePointSetBuilder_remove_inclusive_range_mv1(icu4x::capi::CodePointSetBuilder* self, char32_t start, char32_t end); 39 40 void icu4x_CodePointSetBuilder_remove_set_mv1(icu4x::capi::CodePointSetBuilder* self, const icu4x::capi::CodePointSetData* data); 41 42 void icu4x_CodePointSetBuilder_retain_char_mv1(icu4x::capi::CodePointSetBuilder* self, char32_t ch); 43 44 void icu4x_CodePointSetBuilder_retain_inclusive_range_mv1(icu4x::capi::CodePointSetBuilder* self, char32_t start, char32_t end); 45 46 void icu4x_CodePointSetBuilder_retain_set_mv1(icu4x::capi::CodePointSetBuilder* self, const icu4x::capi::CodePointSetData* data); 47 48 void icu4x_CodePointSetBuilder_complement_char_mv1(icu4x::capi::CodePointSetBuilder* self, char32_t ch); 49 50 void icu4x_CodePointSetBuilder_complement_inclusive_range_mv1(icu4x::capi::CodePointSetBuilder* self, char32_t start, char32_t end); 51 52 void icu4x_CodePointSetBuilder_complement_set_mv1(icu4x::capi::CodePointSetBuilder* self, const icu4x::capi::CodePointSetData* data); 53 54 void icu4x_CodePointSetBuilder_destroy_mv1(CodePointSetBuilder* self); 55 56 } // extern "C" 57 } // namespace capi 58 } // namespace 59 60 inline std::unique_ptr<icu4x::CodePointSetBuilder> icu4x::CodePointSetBuilder::create() { 61 auto result = icu4x::capi::icu4x_CodePointSetBuilder_create_mv1(); 62 return std::unique_ptr<icu4x::CodePointSetBuilder>(icu4x::CodePointSetBuilder::FromFFI(result)); 63 } 64 65 inline std::unique_ptr<icu4x::CodePointSetData> icu4x::CodePointSetBuilder::build() { 66 auto result = icu4x::capi::icu4x_CodePointSetBuilder_build_mv1(this->AsFFI()); 67 return std::unique_ptr<icu4x::CodePointSetData>(icu4x::CodePointSetData::FromFFI(result)); 68 } 69 70 inline void icu4x::CodePointSetBuilder::complement() { 71 icu4x::capi::icu4x_CodePointSetBuilder_complement_mv1(this->AsFFI()); 72 } 73 74 inline bool icu4x::CodePointSetBuilder::is_empty() const { 75 auto result = icu4x::capi::icu4x_CodePointSetBuilder_is_empty_mv1(this->AsFFI()); 76 return result; 77 } 78 79 inline void icu4x::CodePointSetBuilder::add_char(char32_t ch) { 80 icu4x::capi::icu4x_CodePointSetBuilder_add_char_mv1(this->AsFFI(), 81 ch); 82 } 83 84 inline void icu4x::CodePointSetBuilder::add_inclusive_range(char32_t start, char32_t end) { 85 icu4x::capi::icu4x_CodePointSetBuilder_add_inclusive_range_mv1(this->AsFFI(), 86 start, 87 end); 88 } 89 90 inline void icu4x::CodePointSetBuilder::add_set(const icu4x::CodePointSetData& data) { 91 icu4x::capi::icu4x_CodePointSetBuilder_add_set_mv1(this->AsFFI(), 92 data.AsFFI()); 93 } 94 95 inline void icu4x::CodePointSetBuilder::remove_char(char32_t ch) { 96 icu4x::capi::icu4x_CodePointSetBuilder_remove_char_mv1(this->AsFFI(), 97 ch); 98 } 99 100 inline void icu4x::CodePointSetBuilder::remove_inclusive_range(char32_t start, char32_t end) { 101 icu4x::capi::icu4x_CodePointSetBuilder_remove_inclusive_range_mv1(this->AsFFI(), 102 start, 103 end); 104 } 105 106 inline void icu4x::CodePointSetBuilder::remove_set(const icu4x::CodePointSetData& data) { 107 icu4x::capi::icu4x_CodePointSetBuilder_remove_set_mv1(this->AsFFI(), 108 data.AsFFI()); 109 } 110 111 inline void icu4x::CodePointSetBuilder::retain_char(char32_t ch) { 112 icu4x::capi::icu4x_CodePointSetBuilder_retain_char_mv1(this->AsFFI(), 113 ch); 114 } 115 116 inline void icu4x::CodePointSetBuilder::retain_inclusive_range(char32_t start, char32_t end) { 117 icu4x::capi::icu4x_CodePointSetBuilder_retain_inclusive_range_mv1(this->AsFFI(), 118 start, 119 end); 120 } 121 122 inline void icu4x::CodePointSetBuilder::retain_set(const icu4x::CodePointSetData& data) { 123 icu4x::capi::icu4x_CodePointSetBuilder_retain_set_mv1(this->AsFFI(), 124 data.AsFFI()); 125 } 126 127 inline void icu4x::CodePointSetBuilder::complement_char(char32_t ch) { 128 icu4x::capi::icu4x_CodePointSetBuilder_complement_char_mv1(this->AsFFI(), 129 ch); 130 } 131 132 inline void icu4x::CodePointSetBuilder::complement_inclusive_range(char32_t start, char32_t end) { 133 icu4x::capi::icu4x_CodePointSetBuilder_complement_inclusive_range_mv1(this->AsFFI(), 134 start, 135 end); 136 } 137 138 inline void icu4x::CodePointSetBuilder::complement_set(const icu4x::CodePointSetData& data) { 139 icu4x::capi::icu4x_CodePointSetBuilder_complement_set_mv1(this->AsFFI(), 140 data.AsFFI()); 141 } 142 143 inline const icu4x::capi::CodePointSetBuilder* icu4x::CodePointSetBuilder::AsFFI() const { 144 return reinterpret_cast<const icu4x::capi::CodePointSetBuilder*>(this); 145 } 146 147 inline icu4x::capi::CodePointSetBuilder* icu4x::CodePointSetBuilder::AsFFI() { 148 return reinterpret_cast<icu4x::capi::CodePointSetBuilder*>(this); 149 } 150 151 inline const icu4x::CodePointSetBuilder* icu4x::CodePointSetBuilder::FromFFI(const icu4x::capi::CodePointSetBuilder* ptr) { 152 return reinterpret_cast<const icu4x::CodePointSetBuilder*>(ptr); 153 } 154 155 inline icu4x::CodePointSetBuilder* icu4x::CodePointSetBuilder::FromFFI(icu4x::capi::CodePointSetBuilder* ptr) { 156 return reinterpret_cast<icu4x::CodePointSetBuilder*>(ptr); 157 } 158 159 inline void icu4x::CodePointSetBuilder::operator delete(void* ptr) { 160 icu4x::capi::icu4x_CodePointSetBuilder_destroy_mv1(reinterpret_cast<icu4x::capi::CodePointSetBuilder*>(ptr)); 161 } 162 163 164 #endif // icu4x_CodePointSetBuilder_HPP