ICU4X
International Components for Unicode
Loading...
Searching...
No Matches
DateRangeFormatter.hpp
Go to the documentation of this file.
1#ifndef ICU4X_DateRangeFormatter_HPP
2#define ICU4X_DateRangeFormatter_HPP
3
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 "DataProvider.hpp"
15#include "Date.hpp"
16#include "DateTimeAlignment.hpp"
18#include "DateTimeLength.hpp"
19#include "IsoDate.hpp"
20#include "Locale.hpp"
21#include "YearStyle.hpp"
22#include "diplomat_runtime.hpp"
23
24
25namespace icu4x {
26namespace capi {
27 extern "C" {
28
29 typedef struct icu4x_DateRangeFormatter_create_d_mv1_result {union {icu4x::capi::DateRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateRangeFormatter_create_d_mv1_result;
30 icu4x_DateRangeFormatter_create_d_mv1_result icu4x_DateRangeFormatter_create_d_mv1(const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::DateTimeAlignment_option alignment);
31
32 typedef struct icu4x_DateRangeFormatter_create_d_with_provider_mv1_result {union {icu4x::capi::DateRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateRangeFormatter_create_d_with_provider_mv1_result;
33 icu4x_DateRangeFormatter_create_d_with_provider_mv1_result icu4x_DateRangeFormatter_create_d_with_provider_mv1(const icu4x::capi::DataProvider* provider, const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::DateTimeAlignment_option alignment);
34
35 typedef struct icu4x_DateRangeFormatter_create_md_mv1_result {union {icu4x::capi::DateRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateRangeFormatter_create_md_mv1_result;
36 icu4x_DateRangeFormatter_create_md_mv1_result icu4x_DateRangeFormatter_create_md_mv1(const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::DateTimeAlignment_option alignment);
37
38 typedef struct icu4x_DateRangeFormatter_create_md_with_provider_mv1_result {union {icu4x::capi::DateRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateRangeFormatter_create_md_with_provider_mv1_result;
39 icu4x_DateRangeFormatter_create_md_with_provider_mv1_result icu4x_DateRangeFormatter_create_md_with_provider_mv1(const icu4x::capi::DataProvider* provider, const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::DateTimeAlignment_option alignment);
40
41 typedef struct icu4x_DateRangeFormatter_create_ymd_mv1_result {union {icu4x::capi::DateRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateRangeFormatter_create_ymd_mv1_result;
42 icu4x_DateRangeFormatter_create_ymd_mv1_result icu4x_DateRangeFormatter_create_ymd_mv1(const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::DateTimeAlignment_option alignment, icu4x::capi::YearStyle_option year_style);
43
44 typedef struct icu4x_DateRangeFormatter_create_ymd_with_provider_mv1_result {union {icu4x::capi::DateRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateRangeFormatter_create_ymd_with_provider_mv1_result;
45 icu4x_DateRangeFormatter_create_ymd_with_provider_mv1_result icu4x_DateRangeFormatter_create_ymd_with_provider_mv1(const icu4x::capi::DataProvider* provider, const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::DateTimeAlignment_option alignment, icu4x::capi::YearStyle_option year_style);
46
47 typedef struct icu4x_DateRangeFormatter_create_de_mv1_result {union {icu4x::capi::DateRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateRangeFormatter_create_de_mv1_result;
48 icu4x_DateRangeFormatter_create_de_mv1_result icu4x_DateRangeFormatter_create_de_mv1(const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::DateTimeAlignment_option alignment);
49
50 typedef struct icu4x_DateRangeFormatter_create_de_with_provider_mv1_result {union {icu4x::capi::DateRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateRangeFormatter_create_de_with_provider_mv1_result;
51 icu4x_DateRangeFormatter_create_de_with_provider_mv1_result icu4x_DateRangeFormatter_create_de_with_provider_mv1(const icu4x::capi::DataProvider* provider, const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::DateTimeAlignment_option alignment);
52
53 typedef struct icu4x_DateRangeFormatter_create_mde_mv1_result {union {icu4x::capi::DateRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateRangeFormatter_create_mde_mv1_result;
54 icu4x_DateRangeFormatter_create_mde_mv1_result icu4x_DateRangeFormatter_create_mde_mv1(const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::DateTimeAlignment_option alignment);
55
56 typedef struct icu4x_DateRangeFormatter_create_mde_with_provider_mv1_result {union {icu4x::capi::DateRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateRangeFormatter_create_mde_with_provider_mv1_result;
57 icu4x_DateRangeFormatter_create_mde_with_provider_mv1_result icu4x_DateRangeFormatter_create_mde_with_provider_mv1(const icu4x::capi::DataProvider* provider, const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::DateTimeAlignment_option alignment);
58
59 typedef struct icu4x_DateRangeFormatter_create_ymde_mv1_result {union {icu4x::capi::DateRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateRangeFormatter_create_ymde_mv1_result;
60 icu4x_DateRangeFormatter_create_ymde_mv1_result icu4x_DateRangeFormatter_create_ymde_mv1(const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::DateTimeAlignment_option alignment, icu4x::capi::YearStyle_option year_style);
61
62 typedef struct icu4x_DateRangeFormatter_create_ymde_with_provider_mv1_result {union {icu4x::capi::DateRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateRangeFormatter_create_ymde_with_provider_mv1_result;
63 icu4x_DateRangeFormatter_create_ymde_with_provider_mv1_result icu4x_DateRangeFormatter_create_ymde_with_provider_mv1(const icu4x::capi::DataProvider* provider, const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::DateTimeAlignment_option alignment, icu4x::capi::YearStyle_option year_style);
64
65 typedef struct icu4x_DateRangeFormatter_create_e_mv1_result {union {icu4x::capi::DateRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateRangeFormatter_create_e_mv1_result;
66 icu4x_DateRangeFormatter_create_e_mv1_result icu4x_DateRangeFormatter_create_e_mv1(const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length);
67
68 typedef struct icu4x_DateRangeFormatter_create_e_with_provider_mv1_result {union {icu4x::capi::DateRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateRangeFormatter_create_e_with_provider_mv1_result;
69 icu4x_DateRangeFormatter_create_e_with_provider_mv1_result icu4x_DateRangeFormatter_create_e_with_provider_mv1(const icu4x::capi::DataProvider* provider, const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length);
70
71 typedef struct icu4x_DateRangeFormatter_create_m_mv1_result {union {icu4x::capi::DateRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateRangeFormatter_create_m_mv1_result;
72 icu4x_DateRangeFormatter_create_m_mv1_result icu4x_DateRangeFormatter_create_m_mv1(const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::DateTimeAlignment_option alignment);
73
74 typedef struct icu4x_DateRangeFormatter_create_m_with_provider_mv1_result {union {icu4x::capi::DateRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateRangeFormatter_create_m_with_provider_mv1_result;
75 icu4x_DateRangeFormatter_create_m_with_provider_mv1_result icu4x_DateRangeFormatter_create_m_with_provider_mv1(const icu4x::capi::DataProvider* provider, const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::DateTimeAlignment_option alignment);
76
77 typedef struct icu4x_DateRangeFormatter_create_ym_mv1_result {union {icu4x::capi::DateRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateRangeFormatter_create_ym_mv1_result;
78 icu4x_DateRangeFormatter_create_ym_mv1_result icu4x_DateRangeFormatter_create_ym_mv1(const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::DateTimeAlignment_option alignment, icu4x::capi::YearStyle_option year_style);
79
80 typedef struct icu4x_DateRangeFormatter_create_ym_with_provider_mv1_result {union {icu4x::capi::DateRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateRangeFormatter_create_ym_with_provider_mv1_result;
81 icu4x_DateRangeFormatter_create_ym_with_provider_mv1_result icu4x_DateRangeFormatter_create_ym_with_provider_mv1(const icu4x::capi::DataProvider* provider, const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::DateTimeAlignment_option alignment, icu4x::capi::YearStyle_option year_style);
82
83 typedef struct icu4x_DateRangeFormatter_create_y_mv1_result {union {icu4x::capi::DateRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateRangeFormatter_create_y_mv1_result;
84 icu4x_DateRangeFormatter_create_y_mv1_result icu4x_DateRangeFormatter_create_y_mv1(const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::DateTimeAlignment_option alignment, icu4x::capi::YearStyle_option year_style);
85
86 typedef struct icu4x_DateRangeFormatter_create_y_with_provider_mv1_result {union {icu4x::capi::DateRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateRangeFormatter_create_y_with_provider_mv1_result;
87 icu4x_DateRangeFormatter_create_y_with_provider_mv1_result icu4x_DateRangeFormatter_create_y_with_provider_mv1(const icu4x::capi::DataProvider* provider, const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::DateTimeAlignment_option alignment, icu4x::capi::YearStyle_option year_style);
88
89 void icu4x_DateRangeFormatter_format_iso_mv1(const icu4x::capi::DateRangeFormatter* self, const icu4x::capi::IsoDate* start_iso_date, const icu4x::capi::IsoDate* end_iso_date, icu4x::diplomat::capi::DiplomatWrite* write);
90
91 void icu4x_DateRangeFormatter_format_same_calendar_mv1(const icu4x::capi::DateRangeFormatter* self, const icu4x::capi::Date* start_date, const icu4x::capi::Date* end_date, icu4x::diplomat::capi::DiplomatWrite* write);
92
93 void icu4x_DateRangeFormatter_destroy_mv1(DateRangeFormatter* self);
94
95 } // extern "C"
96} // namespace capi
97} // namespace
98
99inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateRangeFormatter::create_d(const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::DateTimeAlignment> alignment) {
100 auto result = icu4x::capi::icu4x_DateRangeFormatter_create_d_mv1(locale.AsFFI(),
101 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
102 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }));
103 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateRangeFormatter>>(std::unique_ptr<icu4x::DateRangeFormatter>(icu4x::DateRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
104}
105
106inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateRangeFormatter::create_d_with_provider(const icu4x::DataProvider& provider, const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::DateTimeAlignment> alignment) {
107 auto result = icu4x::capi::icu4x_DateRangeFormatter_create_d_with_provider_mv1(provider.AsFFI(),
108 locale.AsFFI(),
109 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
110 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }));
111 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateRangeFormatter>>(std::unique_ptr<icu4x::DateRangeFormatter>(icu4x::DateRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
112}
113
114inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateRangeFormatter::create_md(const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::DateTimeAlignment> alignment) {
115 auto result = icu4x::capi::icu4x_DateRangeFormatter_create_md_mv1(locale.AsFFI(),
116 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
117 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }));
118 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateRangeFormatter>>(std::unique_ptr<icu4x::DateRangeFormatter>(icu4x::DateRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
119}
120
121inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateRangeFormatter::create_md_with_provider(const icu4x::DataProvider& provider, const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::DateTimeAlignment> alignment) {
122 auto result = icu4x::capi::icu4x_DateRangeFormatter_create_md_with_provider_mv1(provider.AsFFI(),
123 locale.AsFFI(),
124 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
125 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }));
126 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateRangeFormatter>>(std::unique_ptr<icu4x::DateRangeFormatter>(icu4x::DateRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
127}
128
129inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateRangeFormatter::create_ymd(const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::DateTimeAlignment> alignment, std::optional<icu4x::YearStyle> year_style) {
130 auto result = icu4x::capi::icu4x_DateRangeFormatter_create_ymd_mv1(locale.AsFFI(),
131 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
132 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }),
133 year_style.has_value() ? (icu4x::capi::YearStyle_option{ { year_style.value().AsFFI() }, true }) : (icu4x::capi::YearStyle_option{ {}, false }));
134 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateRangeFormatter>>(std::unique_ptr<icu4x::DateRangeFormatter>(icu4x::DateRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
135}
136
137inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateRangeFormatter::create_ymd_with_provider(const icu4x::DataProvider& provider, const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::DateTimeAlignment> alignment, std::optional<icu4x::YearStyle> year_style) {
138 auto result = icu4x::capi::icu4x_DateRangeFormatter_create_ymd_with_provider_mv1(provider.AsFFI(),
139 locale.AsFFI(),
140 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
141 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }),
142 year_style.has_value() ? (icu4x::capi::YearStyle_option{ { year_style.value().AsFFI() }, true }) : (icu4x::capi::YearStyle_option{ {}, false }));
143 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateRangeFormatter>>(std::unique_ptr<icu4x::DateRangeFormatter>(icu4x::DateRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
144}
145
146inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateRangeFormatter::create_de(const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::DateTimeAlignment> alignment) {
147 auto result = icu4x::capi::icu4x_DateRangeFormatter_create_de_mv1(locale.AsFFI(),
148 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
149 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }));
150 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateRangeFormatter>>(std::unique_ptr<icu4x::DateRangeFormatter>(icu4x::DateRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
151}
152
153inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateRangeFormatter::create_de_with_provider(const icu4x::DataProvider& provider, const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::DateTimeAlignment> alignment) {
154 auto result = icu4x::capi::icu4x_DateRangeFormatter_create_de_with_provider_mv1(provider.AsFFI(),
155 locale.AsFFI(),
156 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
157 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }));
158 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateRangeFormatter>>(std::unique_ptr<icu4x::DateRangeFormatter>(icu4x::DateRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
159}
160
161inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateRangeFormatter::create_mde(const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::DateTimeAlignment> alignment) {
162 auto result = icu4x::capi::icu4x_DateRangeFormatter_create_mde_mv1(locale.AsFFI(),
163 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
164 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }));
165 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateRangeFormatter>>(std::unique_ptr<icu4x::DateRangeFormatter>(icu4x::DateRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
166}
167
168inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateRangeFormatter::create_mde_with_provider(const icu4x::DataProvider& provider, const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::DateTimeAlignment> alignment) {
169 auto result = icu4x::capi::icu4x_DateRangeFormatter_create_mde_with_provider_mv1(provider.AsFFI(),
170 locale.AsFFI(),
171 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
172 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }));
173 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateRangeFormatter>>(std::unique_ptr<icu4x::DateRangeFormatter>(icu4x::DateRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
174}
175
176inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateRangeFormatter::create_ymde(const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::DateTimeAlignment> alignment, std::optional<icu4x::YearStyle> year_style) {
177 auto result = icu4x::capi::icu4x_DateRangeFormatter_create_ymde_mv1(locale.AsFFI(),
178 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
179 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }),
180 year_style.has_value() ? (icu4x::capi::YearStyle_option{ { year_style.value().AsFFI() }, true }) : (icu4x::capi::YearStyle_option{ {}, false }));
181 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateRangeFormatter>>(std::unique_ptr<icu4x::DateRangeFormatter>(icu4x::DateRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
182}
183
184inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateRangeFormatter::create_ymde_with_provider(const icu4x::DataProvider& provider, const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::DateTimeAlignment> alignment, std::optional<icu4x::YearStyle> year_style) {
185 auto result = icu4x::capi::icu4x_DateRangeFormatter_create_ymde_with_provider_mv1(provider.AsFFI(),
186 locale.AsFFI(),
187 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
188 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }),
189 year_style.has_value() ? (icu4x::capi::YearStyle_option{ { year_style.value().AsFFI() }, true }) : (icu4x::capi::YearStyle_option{ {}, false }));
190 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateRangeFormatter>>(std::unique_ptr<icu4x::DateRangeFormatter>(icu4x::DateRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
191}
192
194 auto result = icu4x::capi::icu4x_DateRangeFormatter_create_e_mv1(locale.AsFFI(),
195 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }));
196 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateRangeFormatter>>(std::unique_ptr<icu4x::DateRangeFormatter>(icu4x::DateRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
197}
198
200 auto result = icu4x::capi::icu4x_DateRangeFormatter_create_e_with_provider_mv1(provider.AsFFI(),
201 locale.AsFFI(),
202 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }));
203 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateRangeFormatter>>(std::unique_ptr<icu4x::DateRangeFormatter>(icu4x::DateRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
204}
205
206inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateRangeFormatter::create_m(const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::DateTimeAlignment> alignment) {
207 auto result = icu4x::capi::icu4x_DateRangeFormatter_create_m_mv1(locale.AsFFI(),
208 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
209 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }));
210 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateRangeFormatter>>(std::unique_ptr<icu4x::DateRangeFormatter>(icu4x::DateRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
211}
212
213inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateRangeFormatter::create_m_with_provider(const icu4x::DataProvider& provider, const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::DateTimeAlignment> alignment) {
214 auto result = icu4x::capi::icu4x_DateRangeFormatter_create_m_with_provider_mv1(provider.AsFFI(),
215 locale.AsFFI(),
216 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
217 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }));
218 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateRangeFormatter>>(std::unique_ptr<icu4x::DateRangeFormatter>(icu4x::DateRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
219}
220
221inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateRangeFormatter::create_ym(const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::DateTimeAlignment> alignment, std::optional<icu4x::YearStyle> year_style) {
222 auto result = icu4x::capi::icu4x_DateRangeFormatter_create_ym_mv1(locale.AsFFI(),
223 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
224 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }),
225 year_style.has_value() ? (icu4x::capi::YearStyle_option{ { year_style.value().AsFFI() }, true }) : (icu4x::capi::YearStyle_option{ {}, false }));
226 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateRangeFormatter>>(std::unique_ptr<icu4x::DateRangeFormatter>(icu4x::DateRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
227}
228
229inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateRangeFormatter::create_ym_with_provider(const icu4x::DataProvider& provider, const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::DateTimeAlignment> alignment, std::optional<icu4x::YearStyle> year_style) {
230 auto result = icu4x::capi::icu4x_DateRangeFormatter_create_ym_with_provider_mv1(provider.AsFFI(),
231 locale.AsFFI(),
232 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
233 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }),
234 year_style.has_value() ? (icu4x::capi::YearStyle_option{ { year_style.value().AsFFI() }, true }) : (icu4x::capi::YearStyle_option{ {}, false }));
235 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateRangeFormatter>>(std::unique_ptr<icu4x::DateRangeFormatter>(icu4x::DateRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
236}
237
238inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateRangeFormatter::create_y(const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::DateTimeAlignment> alignment, std::optional<icu4x::YearStyle> year_style) {
239 auto result = icu4x::capi::icu4x_DateRangeFormatter_create_y_mv1(locale.AsFFI(),
240 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
241 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }),
242 year_style.has_value() ? (icu4x::capi::YearStyle_option{ { year_style.value().AsFFI() }, true }) : (icu4x::capi::YearStyle_option{ {}, false }));
243 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateRangeFormatter>>(std::unique_ptr<icu4x::DateRangeFormatter>(icu4x::DateRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
244}
245
246inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateRangeFormatter::create_y_with_provider(const icu4x::DataProvider& provider, const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::DateTimeAlignment> alignment, std::optional<icu4x::YearStyle> year_style) {
247 auto result = icu4x::capi::icu4x_DateRangeFormatter_create_y_with_provider_mv1(provider.AsFFI(),
248 locale.AsFFI(),
249 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
250 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }),
251 year_style.has_value() ? (icu4x::capi::YearStyle_option{ { year_style.value().AsFFI() }, true }) : (icu4x::capi::YearStyle_option{ {}, false }));
252 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateRangeFormatter>>(std::unique_ptr<icu4x::DateRangeFormatter>(icu4x::DateRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
253}
254
255inline std::string icu4x::DateRangeFormatter::format_iso(const icu4x::IsoDate& start_iso_date, const icu4x::IsoDate& end_iso_date) const {
256 std::string output;
257 icu4x::diplomat::capi::DiplomatWrite write = icu4x::diplomat::WriteFromString(output);
258 icu4x::capi::icu4x_DateRangeFormatter_format_iso_mv1(this->AsFFI(),
259 start_iso_date.AsFFI(),
260 end_iso_date.AsFFI(),
261 &write);
262 return output;
263}
264template<typename W>
265inline void icu4x::DateRangeFormatter::format_iso_write(const icu4x::IsoDate& start_iso_date, const icu4x::IsoDate& end_iso_date, W& writeable) const {
266 icu4x::diplomat::capi::DiplomatWrite write = icu4x::diplomat::WriteTrait<W>::Construct(writeable);
267 icu4x::capi::icu4x_DateRangeFormatter_format_iso_mv1(this->AsFFI(),
268 start_iso_date.AsFFI(),
269 end_iso_date.AsFFI(),
270 &write);
271}
272
273inline std::string icu4x::DateRangeFormatter::format_same_calendar(const icu4x::Date& start_date, const icu4x::Date& end_date) const {
274 std::string output;
275 icu4x::diplomat::capi::DiplomatWrite write = icu4x::diplomat::WriteFromString(output);
276 icu4x::capi::icu4x_DateRangeFormatter_format_same_calendar_mv1(this->AsFFI(),
277 start_date.AsFFI(),
278 end_date.AsFFI(),
279 &write);
280 return output;
281}
282template<typename W>
283inline void icu4x::DateRangeFormatter::format_same_calendar_write(const icu4x::Date& start_date, const icu4x::Date& end_date, W& writeable) const {
284 icu4x::diplomat::capi::DiplomatWrite write = icu4x::diplomat::WriteTrait<W>::Construct(writeable);
285 icu4x::capi::icu4x_DateRangeFormatter_format_same_calendar_mv1(this->AsFFI(),
286 start_date.AsFFI(),
287 end_date.AsFFI(),
288 &write);
289}
290
291inline const icu4x::capi::DateRangeFormatter* icu4x::DateRangeFormatter::AsFFI() const {
292 return reinterpret_cast<const icu4x::capi::DateRangeFormatter*>(this);
293}
294
295inline icu4x::capi::DateRangeFormatter* icu4x::DateRangeFormatter::AsFFI() {
296 return reinterpret_cast<icu4x::capi::DateRangeFormatter*>(this);
297}
298
299inline const icu4x::DateRangeFormatter* icu4x::DateRangeFormatter::FromFFI(const icu4x::capi::DateRangeFormatter* ptr) {
300 return reinterpret_cast<const icu4x::DateRangeFormatter*>(ptr);
301}
302
303inline icu4x::DateRangeFormatter* icu4x::DateRangeFormatter::FromFFI(icu4x::capi::DateRangeFormatter* ptr) {
304 return reinterpret_cast<icu4x::DateRangeFormatter*>(ptr);
305}
306
307inline void icu4x::DateRangeFormatter::operator delete(void* ptr) {
308 icu4x::capi::icu4x_DateRangeFormatter_destroy_mv1(reinterpret_cast<icu4x::capi::DateRangeFormatter*>(ptr));
309}
310
311
312#endif // ICU4X_DateRangeFormatter_HPP
Definition DataProvider.d.hpp:40
Definition DateRangeFormatter.d.hpp:42
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_ym(const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::DateTimeAlignment > alignment, std::optional< icu4x::YearStyle > year_style)
Definition DateRangeFormatter.hpp:221
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_d(const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::DateTimeAlignment > alignment)
Definition DateRangeFormatter.hpp:99
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_ymde_with_provider(const icu4x::DataProvider &provider, const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::DateTimeAlignment > alignment, std::optional< icu4x::YearStyle > year_style)
Definition DateRangeFormatter.hpp:184
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_md(const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::DateTimeAlignment > alignment)
Definition DateRangeFormatter.hpp:114
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_mde_with_provider(const icu4x::DataProvider &provider, const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::DateTimeAlignment > alignment)
Definition DateRangeFormatter.hpp:168
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_y_with_provider(const icu4x::DataProvider &provider, const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::DateTimeAlignment > alignment, std::optional< icu4x::YearStyle > year_style)
Definition DateRangeFormatter.hpp:246
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_m_with_provider(const icu4x::DataProvider &provider, const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::DateTimeAlignment > alignment)
Definition DateRangeFormatter.hpp:213
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_m(const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::DateTimeAlignment > alignment)
Definition DateRangeFormatter.hpp:206
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_ymd(const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::DateTimeAlignment > alignment, std::optional< icu4x::YearStyle > year_style)
Definition DateRangeFormatter.hpp:129
std::string format_iso(const icu4x::IsoDate &start_iso_date, const icu4x::IsoDate &end_iso_date) const
Definition DateRangeFormatter.hpp:255
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_de_with_provider(const icu4x::DataProvider &provider, const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::DateTimeAlignment > alignment)
Definition DateRangeFormatter.hpp:153
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_e_with_provider(const icu4x::DataProvider &provider, const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length)
Definition DateRangeFormatter.hpp:199
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_md_with_provider(const icu4x::DataProvider &provider, const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::DateTimeAlignment > alignment)
Definition DateRangeFormatter.hpp:121
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_e(const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length)
Definition DateRangeFormatter.hpp:193
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_de(const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::DateTimeAlignment > alignment)
Definition DateRangeFormatter.hpp:146
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_y(const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::DateTimeAlignment > alignment, std::optional< icu4x::YearStyle > year_style)
Definition DateRangeFormatter.hpp:238
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_ymd_with_provider(const icu4x::DataProvider &provider, const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::DateTimeAlignment > alignment, std::optional< icu4x::YearStyle > year_style)
Definition DateRangeFormatter.hpp:137
void format_iso_write(const icu4x::IsoDate &start_iso_date, const icu4x::IsoDate &end_iso_date, W &writeable_output) const
Definition DateRangeFormatter.hpp:265
void format_same_calendar_write(const icu4x::Date &start_date, const icu4x::Date &end_date, W &writeable_output) const
Definition DateRangeFormatter.hpp:283
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_ym_with_provider(const icu4x::DataProvider &provider, const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::DateTimeAlignment > alignment, std::optional< icu4x::YearStyle > year_style)
Definition DateRangeFormatter.hpp:229
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_ymde(const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::DateTimeAlignment > alignment, std::optional< icu4x::YearStyle > year_style)
Definition DateRangeFormatter.hpp:176
std::string format_same_calendar(const icu4x::Date &start_date, const icu4x::Date &end_date) const
Definition DateRangeFormatter.hpp:273
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_mde(const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::DateTimeAlignment > alignment)
Definition DateRangeFormatter.hpp:161
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_d_with_provider(const icu4x::DataProvider &provider, const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::DateTimeAlignment > alignment)
Definition DateRangeFormatter.hpp:106
Definition DateTimeFormatterLoadError.d.hpp:41
Definition Date.d.hpp:47
Definition IsoDate.d.hpp:44
Definition Locale.d.hpp:33
Definition Bidi.d.hpp:13
Definition diplomat_runtime.hpp:164
Definition diplomat_runtime.hpp:135