ICU4X
International Components for Unicode
Loading...
Searching...
No Matches
DateTimeRangeFormatter.hpp
Go to the documentation of this file.
1#ifndef ICU4X_DateTimeRangeFormatter_HPP
2#define ICU4X_DateTimeRangeFormatter_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 "Time.hpp"
22#include "TimePrecision.hpp"
23#include "YearStyle.hpp"
24#include "diplomat_runtime.hpp"
25
26
27namespace icu4x {
28namespace capi {
29 extern "C" {
30
31 typedef struct icu4x_DateTimeRangeFormatter_create_dt_mv1_result {union {icu4x::capi::DateTimeRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateTimeRangeFormatter_create_dt_mv1_result;
32 icu4x_DateTimeRangeFormatter_create_dt_mv1_result icu4x_DateTimeRangeFormatter_create_dt_mv1(const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::TimePrecision_option time_precision, icu4x::capi::DateTimeAlignment_option alignment);
33
34 typedef struct icu4x_DateTimeRangeFormatter_create_dt_with_provider_mv1_result {union {icu4x::capi::DateTimeRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateTimeRangeFormatter_create_dt_with_provider_mv1_result;
35 icu4x_DateTimeRangeFormatter_create_dt_with_provider_mv1_result icu4x_DateTimeRangeFormatter_create_dt_with_provider_mv1(const icu4x::capi::DataProvider* provider, const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::TimePrecision_option time_precision, icu4x::capi::DateTimeAlignment_option alignment);
36
37 typedef struct icu4x_DateTimeRangeFormatter_create_mdt_mv1_result {union {icu4x::capi::DateTimeRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateTimeRangeFormatter_create_mdt_mv1_result;
38 icu4x_DateTimeRangeFormatter_create_mdt_mv1_result icu4x_DateTimeRangeFormatter_create_mdt_mv1(const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::TimePrecision_option time_precision, icu4x::capi::DateTimeAlignment_option alignment);
39
40 typedef struct icu4x_DateTimeRangeFormatter_create_mdt_with_provider_mv1_result {union {icu4x::capi::DateTimeRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateTimeRangeFormatter_create_mdt_with_provider_mv1_result;
41 icu4x_DateTimeRangeFormatter_create_mdt_with_provider_mv1_result icu4x_DateTimeRangeFormatter_create_mdt_with_provider_mv1(const icu4x::capi::DataProvider* provider, const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::TimePrecision_option time_precision, icu4x::capi::DateTimeAlignment_option alignment);
42
43 typedef struct icu4x_DateTimeRangeFormatter_create_ymdt_mv1_result {union {icu4x::capi::DateTimeRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateTimeRangeFormatter_create_ymdt_mv1_result;
44 icu4x_DateTimeRangeFormatter_create_ymdt_mv1_result icu4x_DateTimeRangeFormatter_create_ymdt_mv1(const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::TimePrecision_option time_precision, icu4x::capi::DateTimeAlignment_option alignment, icu4x::capi::YearStyle_option year_style);
45
46 typedef struct icu4x_DateTimeRangeFormatter_create_ymdt_with_provider_mv1_result {union {icu4x::capi::DateTimeRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateTimeRangeFormatter_create_ymdt_with_provider_mv1_result;
47 icu4x_DateTimeRangeFormatter_create_ymdt_with_provider_mv1_result icu4x_DateTimeRangeFormatter_create_ymdt_with_provider_mv1(const icu4x::capi::DataProvider* provider, const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::TimePrecision_option time_precision, icu4x::capi::DateTimeAlignment_option alignment, icu4x::capi::YearStyle_option year_style);
48
49 typedef struct icu4x_DateTimeRangeFormatter_create_det_mv1_result {union {icu4x::capi::DateTimeRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateTimeRangeFormatter_create_det_mv1_result;
50 icu4x_DateTimeRangeFormatter_create_det_mv1_result icu4x_DateTimeRangeFormatter_create_det_mv1(const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::TimePrecision_option time_precision, icu4x::capi::DateTimeAlignment_option alignment);
51
52 typedef struct icu4x_DateTimeRangeFormatter_create_det_with_provider_mv1_result {union {icu4x::capi::DateTimeRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateTimeRangeFormatter_create_det_with_provider_mv1_result;
53 icu4x_DateTimeRangeFormatter_create_det_with_provider_mv1_result icu4x_DateTimeRangeFormatter_create_det_with_provider_mv1(const icu4x::capi::DataProvider* provider, const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::TimePrecision_option time_precision, icu4x::capi::DateTimeAlignment_option alignment);
54
55 typedef struct icu4x_DateTimeRangeFormatter_create_mdet_mv1_result {union {icu4x::capi::DateTimeRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateTimeRangeFormatter_create_mdet_mv1_result;
56 icu4x_DateTimeRangeFormatter_create_mdet_mv1_result icu4x_DateTimeRangeFormatter_create_mdet_mv1(const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::TimePrecision_option time_precision, icu4x::capi::DateTimeAlignment_option alignment);
57
58 typedef struct icu4x_DateTimeRangeFormatter_create_mdet_with_provider_mv1_result {union {icu4x::capi::DateTimeRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateTimeRangeFormatter_create_mdet_with_provider_mv1_result;
59 icu4x_DateTimeRangeFormatter_create_mdet_with_provider_mv1_result icu4x_DateTimeRangeFormatter_create_mdet_with_provider_mv1(const icu4x::capi::DataProvider* provider, const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::TimePrecision_option time_precision, icu4x::capi::DateTimeAlignment_option alignment);
60
61 typedef struct icu4x_DateTimeRangeFormatter_create_ymdet_mv1_result {union {icu4x::capi::DateTimeRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateTimeRangeFormatter_create_ymdet_mv1_result;
62 icu4x_DateTimeRangeFormatter_create_ymdet_mv1_result icu4x_DateTimeRangeFormatter_create_ymdet_mv1(const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::TimePrecision_option time_precision, icu4x::capi::DateTimeAlignment_option alignment, icu4x::capi::YearStyle_option year_style);
63
64 typedef struct icu4x_DateTimeRangeFormatter_create_ymdet_with_provider_mv1_result {union {icu4x::capi::DateTimeRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateTimeRangeFormatter_create_ymdet_with_provider_mv1_result;
65 icu4x_DateTimeRangeFormatter_create_ymdet_with_provider_mv1_result icu4x_DateTimeRangeFormatter_create_ymdet_with_provider_mv1(const icu4x::capi::DataProvider* provider, const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::TimePrecision_option time_precision, icu4x::capi::DateTimeAlignment_option alignment, icu4x::capi::YearStyle_option year_style);
66
67 typedef struct icu4x_DateTimeRangeFormatter_create_et_mv1_result {union {icu4x::capi::DateTimeRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateTimeRangeFormatter_create_et_mv1_result;
68 icu4x_DateTimeRangeFormatter_create_et_mv1_result icu4x_DateTimeRangeFormatter_create_et_mv1(const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::TimePrecision_option time_precision, icu4x::capi::DateTimeAlignment_option alignment);
69
70 typedef struct icu4x_DateTimeRangeFormatter_create_et_with_provider_mv1_result {union {icu4x::capi::DateTimeRangeFormatter* ok; icu4x::capi::DateTimeFormatterLoadError err;}; bool is_ok;} icu4x_DateTimeRangeFormatter_create_et_with_provider_mv1_result;
71 icu4x_DateTimeRangeFormatter_create_et_with_provider_mv1_result icu4x_DateTimeRangeFormatter_create_et_with_provider_mv1(const icu4x::capi::DataProvider* provider, const icu4x::capi::Locale* locale, icu4x::capi::DateTimeLength_option length, icu4x::capi::TimePrecision_option time_precision, icu4x::capi::DateTimeAlignment_option alignment);
72
73 void icu4x_DateTimeRangeFormatter_format_iso_mv1(const icu4x::capi::DateTimeRangeFormatter* self, const icu4x::capi::IsoDate* start_iso_date, const icu4x::capi::Time* start_time, const icu4x::capi::IsoDate* end_iso_date, const icu4x::capi::Time* end_time, icu4x::diplomat::capi::DiplomatWrite* write);
74
75 void icu4x_DateTimeRangeFormatter_format_same_calendar_mv1(const icu4x::capi::DateTimeRangeFormatter* self, const icu4x::capi::Date* start_date, const icu4x::capi::Time* start_time, const icu4x::capi::Date* end_date, const icu4x::capi::Time* end_time, icu4x::diplomat::capi::DiplomatWrite* write);
76
77 void icu4x_DateTimeRangeFormatter_destroy_mv1(DateTimeRangeFormatter* self);
78
79 } // extern "C"
80} // namespace capi
81} // namespace
82
83inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateTimeRangeFormatter::create_dt(const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::TimePrecision> time_precision, std::optional<icu4x::DateTimeAlignment> alignment) {
84 auto result = icu4x::capi::icu4x_DateTimeRangeFormatter_create_dt_mv1(locale.AsFFI(),
85 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
86 time_precision.has_value() ? (icu4x::capi::TimePrecision_option{ { time_precision.value().AsFFI() }, true }) : (icu4x::capi::TimePrecision_option{ {}, false }),
87 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }));
88 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateTimeRangeFormatter>>(std::unique_ptr<icu4x::DateTimeRangeFormatter>(icu4x::DateTimeRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
89}
90
91inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateTimeRangeFormatter::create_dt_with_provider(const icu4x::DataProvider& provider, const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::TimePrecision> time_precision, std::optional<icu4x::DateTimeAlignment> alignment) {
92 auto result = icu4x::capi::icu4x_DateTimeRangeFormatter_create_dt_with_provider_mv1(provider.AsFFI(),
93 locale.AsFFI(),
94 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
95 time_precision.has_value() ? (icu4x::capi::TimePrecision_option{ { time_precision.value().AsFFI() }, true }) : (icu4x::capi::TimePrecision_option{ {}, false }),
96 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }));
97 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateTimeRangeFormatter>>(std::unique_ptr<icu4x::DateTimeRangeFormatter>(icu4x::DateTimeRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
98}
99
100inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateTimeRangeFormatter::create_mdt(const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::TimePrecision> time_precision, std::optional<icu4x::DateTimeAlignment> alignment) {
101 auto result = icu4x::capi::icu4x_DateTimeRangeFormatter_create_mdt_mv1(locale.AsFFI(),
102 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
103 time_precision.has_value() ? (icu4x::capi::TimePrecision_option{ { time_precision.value().AsFFI() }, true }) : (icu4x::capi::TimePrecision_option{ {}, false }),
104 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }));
105 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateTimeRangeFormatter>>(std::unique_ptr<icu4x::DateTimeRangeFormatter>(icu4x::DateTimeRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
106}
107
108inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateTimeRangeFormatter::create_mdt_with_provider(const icu4x::DataProvider& provider, const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::TimePrecision> time_precision, std::optional<icu4x::DateTimeAlignment> alignment) {
109 auto result = icu4x::capi::icu4x_DateTimeRangeFormatter_create_mdt_with_provider_mv1(provider.AsFFI(),
110 locale.AsFFI(),
111 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
112 time_precision.has_value() ? (icu4x::capi::TimePrecision_option{ { time_precision.value().AsFFI() }, true }) : (icu4x::capi::TimePrecision_option{ {}, false }),
113 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }));
114 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateTimeRangeFormatter>>(std::unique_ptr<icu4x::DateTimeRangeFormatter>(icu4x::DateTimeRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
115}
116
117inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateTimeRangeFormatter::create_ymdt(const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::TimePrecision> time_precision, std::optional<icu4x::DateTimeAlignment> alignment, std::optional<icu4x::YearStyle> year_style) {
118 auto result = icu4x::capi::icu4x_DateTimeRangeFormatter_create_ymdt_mv1(locale.AsFFI(),
119 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
120 time_precision.has_value() ? (icu4x::capi::TimePrecision_option{ { time_precision.value().AsFFI() }, true }) : (icu4x::capi::TimePrecision_option{ {}, false }),
121 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }),
122 year_style.has_value() ? (icu4x::capi::YearStyle_option{ { year_style.value().AsFFI() }, true }) : (icu4x::capi::YearStyle_option{ {}, false }));
123 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateTimeRangeFormatter>>(std::unique_ptr<icu4x::DateTimeRangeFormatter>(icu4x::DateTimeRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
124}
125
126inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateTimeRangeFormatter::create_ymdt_with_provider(const icu4x::DataProvider& provider, const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::TimePrecision> time_precision, std::optional<icu4x::DateTimeAlignment> alignment, std::optional<icu4x::YearStyle> year_style) {
127 auto result = icu4x::capi::icu4x_DateTimeRangeFormatter_create_ymdt_with_provider_mv1(provider.AsFFI(),
128 locale.AsFFI(),
129 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
130 time_precision.has_value() ? (icu4x::capi::TimePrecision_option{ { time_precision.value().AsFFI() }, true }) : (icu4x::capi::TimePrecision_option{ {}, false }),
131 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }),
132 year_style.has_value() ? (icu4x::capi::YearStyle_option{ { year_style.value().AsFFI() }, true }) : (icu4x::capi::YearStyle_option{ {}, false }));
133 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateTimeRangeFormatter>>(std::unique_ptr<icu4x::DateTimeRangeFormatter>(icu4x::DateTimeRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
134}
135
136inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateTimeRangeFormatter::create_det(const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::TimePrecision> time_precision, std::optional<icu4x::DateTimeAlignment> alignment) {
137 auto result = icu4x::capi::icu4x_DateTimeRangeFormatter_create_det_mv1(locale.AsFFI(),
138 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
139 time_precision.has_value() ? (icu4x::capi::TimePrecision_option{ { time_precision.value().AsFFI() }, true }) : (icu4x::capi::TimePrecision_option{ {}, false }),
140 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }));
141 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateTimeRangeFormatter>>(std::unique_ptr<icu4x::DateTimeRangeFormatter>(icu4x::DateTimeRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
142}
143
144inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateTimeRangeFormatter::create_det_with_provider(const icu4x::DataProvider& provider, const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::TimePrecision> time_precision, std::optional<icu4x::DateTimeAlignment> alignment) {
145 auto result = icu4x::capi::icu4x_DateTimeRangeFormatter_create_det_with_provider_mv1(provider.AsFFI(),
146 locale.AsFFI(),
147 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
148 time_precision.has_value() ? (icu4x::capi::TimePrecision_option{ { time_precision.value().AsFFI() }, true }) : (icu4x::capi::TimePrecision_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::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateTimeRangeFormatter>>(std::unique_ptr<icu4x::DateTimeRangeFormatter>(icu4x::DateTimeRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
151}
152
153inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateTimeRangeFormatter::create_mdet(const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::TimePrecision> time_precision, std::optional<icu4x::DateTimeAlignment> alignment) {
154 auto result = icu4x::capi::icu4x_DateTimeRangeFormatter_create_mdet_mv1(locale.AsFFI(),
155 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
156 time_precision.has_value() ? (icu4x::capi::TimePrecision_option{ { time_precision.value().AsFFI() }, true }) : (icu4x::capi::TimePrecision_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::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateTimeRangeFormatter>>(std::unique_ptr<icu4x::DateTimeRangeFormatter>(icu4x::DateTimeRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
159}
160
161inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateTimeRangeFormatter::create_mdet_with_provider(const icu4x::DataProvider& provider, const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::TimePrecision> time_precision, std::optional<icu4x::DateTimeAlignment> alignment) {
162 auto result = icu4x::capi::icu4x_DateTimeRangeFormatter_create_mdet_with_provider_mv1(provider.AsFFI(),
163 locale.AsFFI(),
164 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
165 time_precision.has_value() ? (icu4x::capi::TimePrecision_option{ { time_precision.value().AsFFI() }, true }) : (icu4x::capi::TimePrecision_option{ {}, false }),
166 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }));
167 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateTimeRangeFormatter>>(std::unique_ptr<icu4x::DateTimeRangeFormatter>(icu4x::DateTimeRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
168}
169
170inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateTimeRangeFormatter::create_ymdet(const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::TimePrecision> time_precision, std::optional<icu4x::DateTimeAlignment> alignment, std::optional<icu4x::YearStyle> year_style) {
171 auto result = icu4x::capi::icu4x_DateTimeRangeFormatter_create_ymdet_mv1(locale.AsFFI(),
172 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
173 time_precision.has_value() ? (icu4x::capi::TimePrecision_option{ { time_precision.value().AsFFI() }, true }) : (icu4x::capi::TimePrecision_option{ {}, false }),
174 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }),
175 year_style.has_value() ? (icu4x::capi::YearStyle_option{ { year_style.value().AsFFI() }, true }) : (icu4x::capi::YearStyle_option{ {}, false }));
176 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateTimeRangeFormatter>>(std::unique_ptr<icu4x::DateTimeRangeFormatter>(icu4x::DateTimeRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
177}
178
179inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateTimeRangeFormatter::create_ymdet_with_provider(const icu4x::DataProvider& provider, const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::TimePrecision> time_precision, std::optional<icu4x::DateTimeAlignment> alignment, std::optional<icu4x::YearStyle> year_style) {
180 auto result = icu4x::capi::icu4x_DateTimeRangeFormatter_create_ymdet_with_provider_mv1(provider.AsFFI(),
181 locale.AsFFI(),
182 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
183 time_precision.has_value() ? (icu4x::capi::TimePrecision_option{ { time_precision.value().AsFFI() }, true }) : (icu4x::capi::TimePrecision_option{ {}, false }),
184 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }),
185 year_style.has_value() ? (icu4x::capi::YearStyle_option{ { year_style.value().AsFFI() }, true }) : (icu4x::capi::YearStyle_option{ {}, false }));
186 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateTimeRangeFormatter>>(std::unique_ptr<icu4x::DateTimeRangeFormatter>(icu4x::DateTimeRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
187}
188
189inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateTimeRangeFormatter::create_et(const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::TimePrecision> time_precision, std::optional<icu4x::DateTimeAlignment> alignment) {
190 auto result = icu4x::capi::icu4x_DateTimeRangeFormatter_create_et_mv1(locale.AsFFI(),
191 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
192 time_precision.has_value() ? (icu4x::capi::TimePrecision_option{ { time_precision.value().AsFFI() }, true }) : (icu4x::capi::TimePrecision_option{ {}, false }),
193 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }));
194 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateTimeRangeFormatter>>(std::unique_ptr<icu4x::DateTimeRangeFormatter>(icu4x::DateTimeRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
195}
196
197inline icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError> icu4x::DateTimeRangeFormatter::create_et_with_provider(const icu4x::DataProvider& provider, const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::TimePrecision> time_precision, std::optional<icu4x::DateTimeAlignment> alignment) {
198 auto result = icu4x::capi::icu4x_DateTimeRangeFormatter_create_et_with_provider_mv1(provider.AsFFI(),
199 locale.AsFFI(),
200 length.has_value() ? (icu4x::capi::DateTimeLength_option{ { length.value().AsFFI() }, true }) : (icu4x::capi::DateTimeLength_option{ {}, false }),
201 time_precision.has_value() ? (icu4x::capi::TimePrecision_option{ { time_precision.value().AsFFI() }, true }) : (icu4x::capi::TimePrecision_option{ {}, false }),
202 alignment.has_value() ? (icu4x::capi::DateTimeAlignment_option{ { alignment.value().AsFFI() }, true }) : (icu4x::capi::DateTimeAlignment_option{ {}, false }));
203 return result.is_ok ? icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Ok<std::unique_ptr<icu4x::DateTimeRangeFormatter>>(std::unique_ptr<icu4x::DateTimeRangeFormatter>(icu4x::DateTimeRangeFormatter::FromFFI(result.ok)))) : icu4x::diplomat::result<std::unique_ptr<icu4x::DateTimeRangeFormatter>, icu4x::DateTimeFormatterLoadError>(icu4x::diplomat::Err<icu4x::DateTimeFormatterLoadError>(icu4x::DateTimeFormatterLoadError::FromFFI(result.err)));
204}
205
206inline std::string icu4x::DateTimeRangeFormatter::format_iso(const icu4x::IsoDate& start_iso_date, const icu4x::Time& start_time, const icu4x::IsoDate& end_iso_date, const icu4x::Time& end_time) const {
207 std::string output;
208 icu4x::diplomat::capi::DiplomatWrite write = icu4x::diplomat::WriteFromString(output);
209 icu4x::capi::icu4x_DateTimeRangeFormatter_format_iso_mv1(this->AsFFI(),
210 start_iso_date.AsFFI(),
211 start_time.AsFFI(),
212 end_iso_date.AsFFI(),
213 end_time.AsFFI(),
214 &write);
215 return output;
216}
217template<typename W>
218inline void icu4x::DateTimeRangeFormatter::format_iso_write(const icu4x::IsoDate& start_iso_date, const icu4x::Time& start_time, const icu4x::IsoDate& end_iso_date, const icu4x::Time& end_time, W& writeable) const {
219 icu4x::diplomat::capi::DiplomatWrite write = icu4x::diplomat::WriteTrait<W>::Construct(writeable);
220 icu4x::capi::icu4x_DateTimeRangeFormatter_format_iso_mv1(this->AsFFI(),
221 start_iso_date.AsFFI(),
222 start_time.AsFFI(),
223 end_iso_date.AsFFI(),
224 end_time.AsFFI(),
225 &write);
226}
227
228inline std::string icu4x::DateTimeRangeFormatter::format_same_calendar(const icu4x::Date& start_date, const icu4x::Time& start_time, const icu4x::Date& end_date, const icu4x::Time& end_time) const {
229 std::string output;
230 icu4x::diplomat::capi::DiplomatWrite write = icu4x::diplomat::WriteFromString(output);
231 icu4x::capi::icu4x_DateTimeRangeFormatter_format_same_calendar_mv1(this->AsFFI(),
232 start_date.AsFFI(),
233 start_time.AsFFI(),
234 end_date.AsFFI(),
235 end_time.AsFFI(),
236 &write);
237 return output;
238}
239template<typename W>
240inline void icu4x::DateTimeRangeFormatter::format_same_calendar_write(const icu4x::Date& start_date, const icu4x::Time& start_time, const icu4x::Date& end_date, const icu4x::Time& end_time, W& writeable) const {
241 icu4x::diplomat::capi::DiplomatWrite write = icu4x::diplomat::WriteTrait<W>::Construct(writeable);
242 icu4x::capi::icu4x_DateTimeRangeFormatter_format_same_calendar_mv1(this->AsFFI(),
243 start_date.AsFFI(),
244 start_time.AsFFI(),
245 end_date.AsFFI(),
246 end_time.AsFFI(),
247 &write);
248}
249
250inline const icu4x::capi::DateTimeRangeFormatter* icu4x::DateTimeRangeFormatter::AsFFI() const {
251 return reinterpret_cast<const icu4x::capi::DateTimeRangeFormatter*>(this);
252}
253
254inline icu4x::capi::DateTimeRangeFormatter* icu4x::DateTimeRangeFormatter::AsFFI() {
255 return reinterpret_cast<icu4x::capi::DateTimeRangeFormatter*>(this);
256}
257
258inline const icu4x::DateTimeRangeFormatter* icu4x::DateTimeRangeFormatter::FromFFI(const icu4x::capi::DateTimeRangeFormatter* ptr) {
259 return reinterpret_cast<const icu4x::DateTimeRangeFormatter*>(ptr);
260}
261
262inline icu4x::DateTimeRangeFormatter* icu4x::DateTimeRangeFormatter::FromFFI(icu4x::capi::DateTimeRangeFormatter* ptr) {
263 return reinterpret_cast<icu4x::DateTimeRangeFormatter*>(ptr);
264}
265
266inline void icu4x::DateTimeRangeFormatter::operator delete(void* ptr) {
267 icu4x::capi::icu4x_DateTimeRangeFormatter_destroy_mv1(reinterpret_cast<icu4x::capi::DateTimeRangeFormatter*>(ptr));
268}
269
270
271#endif // ICU4X_DateTimeRangeFormatter_HPP
Definition DataProvider.d.hpp:40
Definition DateTimeFormatterLoadError.d.hpp:41
Definition DateTimeRangeFormatter.d.hpp:45
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateTimeRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_et(const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::TimePrecision > time_precision, std::optional< icu4x::DateTimeAlignment > alignment)
Definition DateTimeRangeFormatter.hpp:189
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateTimeRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_ymdet_with_provider(const icu4x::DataProvider &provider, const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::TimePrecision > time_precision, std::optional< icu4x::DateTimeAlignment > alignment, std::optional< icu4x::YearStyle > year_style)
Definition DateTimeRangeFormatter.hpp:179
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateTimeRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_mdt_with_provider(const icu4x::DataProvider &provider, const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::TimePrecision > time_precision, std::optional< icu4x::DateTimeAlignment > alignment)
Definition DateTimeRangeFormatter.hpp:108
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateTimeRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_det_with_provider(const icu4x::DataProvider &provider, const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::TimePrecision > time_precision, std::optional< icu4x::DateTimeAlignment > alignment)
Definition DateTimeRangeFormatter.hpp:144
void format_iso_write(const icu4x::IsoDate &start_iso_date, const icu4x::Time &start_time, const icu4x::IsoDate &end_iso_date, const icu4x::Time &end_time, W &writeable_output) const
Definition DateTimeRangeFormatter.hpp:218
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateTimeRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_ymdt(const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::TimePrecision > time_precision, std::optional< icu4x::DateTimeAlignment > alignment, std::optional< icu4x::YearStyle > year_style)
Definition DateTimeRangeFormatter.hpp:117
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateTimeRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_et_with_provider(const icu4x::DataProvider &provider, const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::TimePrecision > time_precision, std::optional< icu4x::DateTimeAlignment > alignment)
Definition DateTimeRangeFormatter.hpp:197
void format_same_calendar_write(const icu4x::Date &start_date, const icu4x::Time &start_time, const icu4x::Date &end_date, const icu4x::Time &end_time, W &writeable_output) const
Definition DateTimeRangeFormatter.hpp:240
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateTimeRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_mdt(const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::TimePrecision > time_precision, std::optional< icu4x::DateTimeAlignment > alignment)
Definition DateTimeRangeFormatter.hpp:100
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateTimeRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_ymdt_with_provider(const icu4x::DataProvider &provider, const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::TimePrecision > time_precision, std::optional< icu4x::DateTimeAlignment > alignment, std::optional< icu4x::YearStyle > year_style)
Definition DateTimeRangeFormatter.hpp:126
std::string format_same_calendar(const icu4x::Date &start_date, const icu4x::Time &start_time, const icu4x::Date &end_date, const icu4x::Time &end_time) const
Definition DateTimeRangeFormatter.hpp:228
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateTimeRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_mdet(const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::TimePrecision > time_precision, std::optional< icu4x::DateTimeAlignment > alignment)
Definition DateTimeRangeFormatter.hpp:153
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateTimeRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_dt(const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::TimePrecision > time_precision, std::optional< icu4x::DateTimeAlignment > alignment)
Definition DateTimeRangeFormatter.hpp:83
std::string format_iso(const icu4x::IsoDate &start_iso_date, const icu4x::Time &start_time, const icu4x::IsoDate &end_iso_date, const icu4x::Time &end_time) const
Definition DateTimeRangeFormatter.hpp:206
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateTimeRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_det(const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::TimePrecision > time_precision, std::optional< icu4x::DateTimeAlignment > alignment)
Definition DateTimeRangeFormatter.hpp:136
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateTimeRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_mdet_with_provider(const icu4x::DataProvider &provider, const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::TimePrecision > time_precision, std::optional< icu4x::DateTimeAlignment > alignment)
Definition DateTimeRangeFormatter.hpp:161
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateTimeRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_dt_with_provider(const icu4x::DataProvider &provider, const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::TimePrecision > time_precision, std::optional< icu4x::DateTimeAlignment > alignment)
Definition DateTimeRangeFormatter.hpp:91
static icu4x::diplomat::result< std::unique_ptr< icu4x::DateTimeRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_ymdet(const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::TimePrecision > time_precision, std::optional< icu4x::DateTimeAlignment > alignment, std::optional< icu4x::YearStyle > year_style)
Definition DateTimeRangeFormatter.hpp:170
Definition Date.d.hpp:47
Definition IsoDate.d.hpp:44
Definition Locale.d.hpp:33
Definition Time.d.hpp:34
Definition Bidi.d.hpp:13
Definition diplomat_runtime.hpp:164
Definition diplomat_runtime.hpp:135