1#ifndef ICU4XListFormatter_HPP
2#define ICU4XListFormatter_HPP
12#include "ICU4XListFormatter.h"
24struct ICU4XListFormatterDeleter {
25 void operator()(capi::ICU4XListFormatter* l)
const noexcept {
26 capi::ICU4XListFormatter_destroy(l);
66 inline const capi::ICU4XListFormatter* AsFFI()
const {
return this->inner.get(); }
67 inline capi::ICU4XListFormatter* AsFFIMut() {
return this->inner.get(); }
76#include "ICU4XDataProvider.hpp"
81 auto diplomat_result_raw_out_value = capi::ICU4XListFormatter_create_and_with_length(provider.AsFFI(), locale.AsFFI(),
static_cast<capi::ICU4XListLength
>(length));
83 if (diplomat_result_raw_out_value.is_ok) {
88 return diplomat_result_out_value;
91 auto diplomat_result_raw_out_value = capi::ICU4XListFormatter_create_or_with_length(provider.AsFFI(), locale.AsFFI(),
static_cast<capi::ICU4XListLength
>(length));
93 if (diplomat_result_raw_out_value.is_ok) {
98 return diplomat_result_out_value;
101 auto diplomat_result_raw_out_value = capi::ICU4XListFormatter_create_unit_with_length(provider.AsFFI(), locale.AsFFI(),
static_cast<capi::ICU4XListLength
>(length));
103 if (diplomat_result_raw_out_value.is_ok) {
108 return diplomat_result_out_value;
111 capi::DiplomatWriteable write_writer = diplomat::WriteableTrait<W>::Construct(write);
112 auto diplomat_result_raw_out_value = capi::ICU4XListFormatter_format(this->inner.get(), list.AsFFI(), &write_writer);
114 if (diplomat_result_raw_out_value.is_ok) {
119 return diplomat_result_out_value;
122 std::string diplomat_writeable_string;
124 auto diplomat_result_raw_out_value = capi::ICU4XListFormatter_format(this->inner.get(), list.AsFFI(), &diplomat_writeable_out);
126 if (diplomat_result_raw_out_value.is_ok) {
131 return diplomat_result_out_value.
replace_ok(std::move(diplomat_writeable_string));
ICU4XError
Definition ICU4XError.hpp:23
ICU4XListLength
Definition ICU4XListLength.hpp:19
Definition ICU4XDataProvider.hpp:32
Definition ICU4XList.hpp:28
Definition ICU4XLocale.hpp:32
Definition diplomat_runtime.hpp:84
result< T2, E > replace_ok(T2 &&t)
Definition diplomat_runtime.hpp:125
capi::DiplomatWriteable WriteableFromString(std::string &string)
Definition diplomat_runtime.hpp:31
Definition diplomat_runtime.hpp:69
Definition diplomat_runtime.hpp:55