ICU4X
International Components for Unicode
Loading...
Searching...
No Matches
DateRangeFormatter.d.hpp
Go to the documentation of this file.
1#ifndef ICU4X_DateRangeFormatter_D_HPP
2#define ICU4X_DateRangeFormatter_D_HPP
3
4#include <stdio.h>
5#include <stdint.h>
6#include <stddef.h>
7#include <stdbool.h>
8#include <memory>
9#include <functional>
10#include <optional>
11#include <cstdlib>
12#include "diplomat_runtime.hpp"
13namespace icu4x {
14namespace capi { struct DataProvider; }
15class DataProvider;
16namespace capi { struct Date; }
17class Date;
18namespace capi { struct DateRangeFormatter; }
19class DateRangeFormatter;
20namespace capi { struct IsoDate; }
21class IsoDate;
22namespace capi { struct Locale; }
23class Locale;
24class DateTimeAlignment;
25class DateTimeFormatterLoadError;
26class DateTimeLength;
27class YearStyle;
28} // namespace icu4x
29
30
31
32namespace icu4x {
33namespace capi {
34 struct DateRangeFormatter;
35} // namespace capi
36} // namespace
37
38namespace icu4x {
43public:
44
52 inline 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);
53
61 inline 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);
62
70 inline 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);
71
79 inline 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);
80
88 inline 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);
89
97 inline 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);
98
106 inline 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);
107
115 inline 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);
116
124 inline 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);
125
133 inline 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);
134
142 inline 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);
143
151 inline 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);
152
160 inline static icu4x::diplomat::result<std::unique_ptr<icu4x::DateRangeFormatter>, icu4x::DateTimeFormatterLoadError> create_e(const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length);
161
169 inline 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);
170
178 inline 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);
179
187 inline 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);
188
196 inline 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);
197
205 inline 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);
206
214 inline 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);
215
223 inline 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);
224
228 inline std::string format_iso(const icu4x::IsoDate& start_iso_date, const icu4x::IsoDate& end_iso_date) const;
229 template<typename W>
230 inline void format_iso_write(const icu4x::IsoDate& start_iso_date, const icu4x::IsoDate& end_iso_date, W& writeable_output) const;
231
235 inline std::string format_same_calendar(const icu4x::Date& start_date, const icu4x::Date& end_date) const;
236 template<typename W>
237 inline void format_same_calendar_write(const icu4x::Date& start_date, const icu4x::Date& end_date, W& writeable_output) const;
238
239 inline const icu4x::capi::DateRangeFormatter* AsFFI() const;
240 inline icu4x::capi::DateRangeFormatter* AsFFI();
241 inline static const icu4x::DateRangeFormatter* FromFFI(const icu4x::capi::DateRangeFormatter* ptr);
242 inline static icu4x::DateRangeFormatter* FromFFI(icu4x::capi::DateRangeFormatter* ptr);
243 inline static void operator delete(void* ptr);
244private:
245 DateRangeFormatter() = delete;
248 DateRangeFormatter operator=(const icu4x::DateRangeFormatter&) = delete;
249 DateRangeFormatter operator=(icu4x::DateRangeFormatter&&) noexcept = delete;
250 static void operator delete[](void*, size_t) = delete;
251};
252
253} // namespace
254#endif // ICU4X_DateRangeFormatter_D_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