ICU4X
International Components for Unicode
Loading...
Searching...
No Matches
ICU4XPropertyValueNameToEnumMapper.hpp
Go to the documentation of this file.
1#ifndef ICU4XPropertyValueNameToEnumMapper_HPP
2#define ICU4XPropertyValueNameToEnumMapper_HPP
3#include <stdint.h>
4#include <stddef.h>
5#include <stdbool.h>
6#include <algorithm>
7#include <memory>
8#include <variant>
9#include <optional>
10#include "diplomat_runtime.hpp"
11
12#include "ICU4XPropertyValueNameToEnumMapper.h"
13
16#include "ICU4XError.hpp"
17
21struct ICU4XPropertyValueNameToEnumMapperDeleter {
22 void operator()(capi::ICU4XPropertyValueNameToEnumMapper* l) const noexcept {
23 capi::ICU4XPropertyValueNameToEnumMapper_destroy(l);
24 }
25};
26
35 public:
36
44 int16_t get_strict(const std::string_view name) const;
45
53 int16_t get_loose(const std::string_view name) const;
54
59
64
69
74
79
84
89
94
99
104 inline const capi::ICU4XPropertyValueNameToEnumMapper* AsFFI() const { return this->inner.get(); }
105 inline capi::ICU4XPropertyValueNameToEnumMapper* AsFFIMut() { return this->inner.get(); }
106 inline explicit ICU4XPropertyValueNameToEnumMapper(capi::ICU4XPropertyValueNameToEnumMapper* i) : inner(i) {}
110 private:
111 std::unique_ptr<capi::ICU4XPropertyValueNameToEnumMapper, ICU4XPropertyValueNameToEnumMapperDeleter> inner;
112};
113
114#include "ICU4XDataProvider.hpp"
115
116inline int16_t ICU4XPropertyValueNameToEnumMapper::get_strict(const std::string_view name) const {
117 return capi::ICU4XPropertyValueNameToEnumMapper_get_strict(this->inner.get(), name.data(), name.size());
118}
119inline int16_t ICU4XPropertyValueNameToEnumMapper::get_loose(const std::string_view name) const {
120 return capi::ICU4XPropertyValueNameToEnumMapper_get_loose(this->inner.get(), name.data(), name.size());
121}
123 auto diplomat_result_raw_out_value = capi::ICU4XPropertyValueNameToEnumMapper_load_general_category(provider.AsFFI());
125 if (diplomat_result_raw_out_value.is_ok) {
126 diplomat_result_out_value = diplomat::Ok<ICU4XPropertyValueNameToEnumMapper>(ICU4XPropertyValueNameToEnumMapper(diplomat_result_raw_out_value.ok));
127 } else {
128 diplomat_result_out_value = diplomat::Err<ICU4XError>(static_cast<ICU4XError>(diplomat_result_raw_out_value.err));
129 }
130 return diplomat_result_out_value;
131}
133 auto diplomat_result_raw_out_value = capi::ICU4XPropertyValueNameToEnumMapper_load_hangul_syllable_type(provider.AsFFI());
135 if (diplomat_result_raw_out_value.is_ok) {
136 diplomat_result_out_value = diplomat::Ok<ICU4XPropertyValueNameToEnumMapper>(ICU4XPropertyValueNameToEnumMapper(diplomat_result_raw_out_value.ok));
137 } else {
138 diplomat_result_out_value = diplomat::Err<ICU4XError>(static_cast<ICU4XError>(diplomat_result_raw_out_value.err));
139 }
140 return diplomat_result_out_value;
141}
143 auto diplomat_result_raw_out_value = capi::ICU4XPropertyValueNameToEnumMapper_load_east_asian_width(provider.AsFFI());
145 if (diplomat_result_raw_out_value.is_ok) {
146 diplomat_result_out_value = diplomat::Ok<ICU4XPropertyValueNameToEnumMapper>(ICU4XPropertyValueNameToEnumMapper(diplomat_result_raw_out_value.ok));
147 } else {
148 diplomat_result_out_value = diplomat::Err<ICU4XError>(static_cast<ICU4XError>(diplomat_result_raw_out_value.err));
149 }
150 return diplomat_result_out_value;
151}
153 auto diplomat_result_raw_out_value = capi::ICU4XPropertyValueNameToEnumMapper_load_bidi_class(provider.AsFFI());
155 if (diplomat_result_raw_out_value.is_ok) {
156 diplomat_result_out_value = diplomat::Ok<ICU4XPropertyValueNameToEnumMapper>(ICU4XPropertyValueNameToEnumMapper(diplomat_result_raw_out_value.ok));
157 } else {
158 diplomat_result_out_value = diplomat::Err<ICU4XError>(static_cast<ICU4XError>(diplomat_result_raw_out_value.err));
159 }
160 return diplomat_result_out_value;
161}
163 auto diplomat_result_raw_out_value = capi::ICU4XPropertyValueNameToEnumMapper_load_indic_syllabic_category(provider.AsFFI());
165 if (diplomat_result_raw_out_value.is_ok) {
166 diplomat_result_out_value = diplomat::Ok<ICU4XPropertyValueNameToEnumMapper>(ICU4XPropertyValueNameToEnumMapper(diplomat_result_raw_out_value.ok));
167 } else {
168 diplomat_result_out_value = diplomat::Err<ICU4XError>(static_cast<ICU4XError>(diplomat_result_raw_out_value.err));
169 }
170 return diplomat_result_out_value;
171}
173 auto diplomat_result_raw_out_value = capi::ICU4XPropertyValueNameToEnumMapper_load_line_break(provider.AsFFI());
175 if (diplomat_result_raw_out_value.is_ok) {
176 diplomat_result_out_value = diplomat::Ok<ICU4XPropertyValueNameToEnumMapper>(ICU4XPropertyValueNameToEnumMapper(diplomat_result_raw_out_value.ok));
177 } else {
178 diplomat_result_out_value = diplomat::Err<ICU4XError>(static_cast<ICU4XError>(diplomat_result_raw_out_value.err));
179 }
180 return diplomat_result_out_value;
181}
183 auto diplomat_result_raw_out_value = capi::ICU4XPropertyValueNameToEnumMapper_load_grapheme_cluster_break(provider.AsFFI());
185 if (diplomat_result_raw_out_value.is_ok) {
186 diplomat_result_out_value = diplomat::Ok<ICU4XPropertyValueNameToEnumMapper>(ICU4XPropertyValueNameToEnumMapper(diplomat_result_raw_out_value.ok));
187 } else {
188 diplomat_result_out_value = diplomat::Err<ICU4XError>(static_cast<ICU4XError>(diplomat_result_raw_out_value.err));
189 }
190 return diplomat_result_out_value;
191}
193 auto diplomat_result_raw_out_value = capi::ICU4XPropertyValueNameToEnumMapper_load_word_break(provider.AsFFI());
195 if (diplomat_result_raw_out_value.is_ok) {
196 diplomat_result_out_value = diplomat::Ok<ICU4XPropertyValueNameToEnumMapper>(ICU4XPropertyValueNameToEnumMapper(diplomat_result_raw_out_value.ok));
197 } else {
198 diplomat_result_out_value = diplomat::Err<ICU4XError>(static_cast<ICU4XError>(diplomat_result_raw_out_value.err));
199 }
200 return diplomat_result_out_value;
201}
203 auto diplomat_result_raw_out_value = capi::ICU4XPropertyValueNameToEnumMapper_load_sentence_break(provider.AsFFI());
205 if (diplomat_result_raw_out_value.is_ok) {
206 diplomat_result_out_value = diplomat::Ok<ICU4XPropertyValueNameToEnumMapper>(ICU4XPropertyValueNameToEnumMapper(diplomat_result_raw_out_value.ok));
207 } else {
208 diplomat_result_out_value = diplomat::Err<ICU4XError>(static_cast<ICU4XError>(diplomat_result_raw_out_value.err));
209 }
210 return diplomat_result_out_value;
211}
213 auto diplomat_result_raw_out_value = capi::ICU4XPropertyValueNameToEnumMapper_load_script(provider.AsFFI());
215 if (diplomat_result_raw_out_value.is_ok) {
216 diplomat_result_out_value = diplomat::Ok<ICU4XPropertyValueNameToEnumMapper>(ICU4XPropertyValueNameToEnumMapper(diplomat_result_raw_out_value.ok));
217 } else {
218 diplomat_result_out_value = diplomat::Err<ICU4XError>(static_cast<ICU4XError>(diplomat_result_raw_out_value.err));
219 }
220 return diplomat_result_out_value;
221}
222#endif
ICU4XError
Definition ICU4XError.hpp:23
Definition ICU4XDataProvider.hpp:32
Definition ICU4XPropertyValueNameToEnumMapper.hpp:34
static diplomat::result< ICU4XPropertyValueNameToEnumMapper, ICU4XError > load_general_category(const ICU4XDataProvider &provider)
Definition ICU4XPropertyValueNameToEnumMapper.hpp:122
static diplomat::result< ICU4XPropertyValueNameToEnumMapper, ICU4XError > load_grapheme_cluster_break(const ICU4XDataProvider &provider)
Definition ICU4XPropertyValueNameToEnumMapper.hpp:182
ICU4XPropertyValueNameToEnumMapper(ICU4XPropertyValueNameToEnumMapper &&) noexcept=default
static diplomat::result< ICU4XPropertyValueNameToEnumMapper, ICU4XError > load_line_break(const ICU4XDataProvider &provider)
Definition ICU4XPropertyValueNameToEnumMapper.hpp:172
static diplomat::result< ICU4XPropertyValueNameToEnumMapper, ICU4XError > load_bidi_class(const ICU4XDataProvider &provider)
Definition ICU4XPropertyValueNameToEnumMapper.hpp:152
static diplomat::result< ICU4XPropertyValueNameToEnumMapper, ICU4XError > load_word_break(const ICU4XDataProvider &provider)
Definition ICU4XPropertyValueNameToEnumMapper.hpp:192
static diplomat::result< ICU4XPropertyValueNameToEnumMapper, ICU4XError > load_indic_syllabic_category(const ICU4XDataProvider &provider)
Definition ICU4XPropertyValueNameToEnumMapper.hpp:162
static diplomat::result< ICU4XPropertyValueNameToEnumMapper, ICU4XError > load_script(const ICU4XDataProvider &provider)
Definition ICU4XPropertyValueNameToEnumMapper.hpp:212
ICU4XPropertyValueNameToEnumMapper(capi::ICU4XPropertyValueNameToEnumMapper *i)
Definition ICU4XPropertyValueNameToEnumMapper.hpp:106
static diplomat::result< ICU4XPropertyValueNameToEnumMapper, ICU4XError > load_hangul_syllable_type(const ICU4XDataProvider &provider)
Definition ICU4XPropertyValueNameToEnumMapper.hpp:132
static diplomat::result< ICU4XPropertyValueNameToEnumMapper, ICU4XError > load_east_asian_width(const ICU4XDataProvider &provider)
Definition ICU4XPropertyValueNameToEnumMapper.hpp:142
static diplomat::result< ICU4XPropertyValueNameToEnumMapper, ICU4XError > load_sentence_break(const ICU4XDataProvider &provider)
Definition ICU4XPropertyValueNameToEnumMapper.hpp:202
int16_t get_loose(const std::string_view name) const
Definition ICU4XPropertyValueNameToEnumMapper.hpp:119
int16_t get_strict(const std::string_view name) const
Definition ICU4XPropertyValueNameToEnumMapper.hpp:116
Definition diplomat_runtime.hpp:84
Definition diplomat_runtime.hpp:69
Definition diplomat_runtime.hpp:55