34 typedef struct icu4x_Date_from_iso_in_calendar_mv1_result {
union {icu4x::capi::Date* ok; icu4x::capi::CalendarError err;};
bool is_ok;} icu4x_Date_from_iso_in_calendar_mv1_result;
35 icu4x_Date_from_iso_in_calendar_mv1_result icu4x_Date_from_iso_in_calendar_mv1(int32_t iso_year, uint8_t iso_month, uint8_t iso_day,
const icu4x::capi::Calendar* calendar);
37 typedef struct icu4x_Date_from_fields_in_calendar_mv1_result {
union {icu4x::capi::Date* ok; icu4x::capi::CalendarDateFromFieldsError err;};
bool is_ok;} icu4x_Date_from_fields_in_calendar_mv1_result;
38 icu4x_Date_from_fields_in_calendar_mv1_result icu4x_Date_from_fields_in_calendar_mv1(icu4x::capi::DateFields fields, icu4x::capi::DateFromFieldsOptions options,
const icu4x::capi::Calendar* calendar);
40 typedef struct icu4x_Date_from_codes_in_calendar_mv1_result {
union {icu4x::capi::Date* ok; icu4x::capi::CalendarError err;};
bool is_ok;} icu4x_Date_from_codes_in_calendar_mv1_result;
41 icu4x_Date_from_codes_in_calendar_mv1_result icu4x_Date_from_codes_in_calendar_mv1(icu4x::diplomat::capi::DiplomatStringView era_code, int32_t year, icu4x::diplomat::capi::DiplomatStringView month_code, uint8_t day,
const icu4x::capi::Calendar* calendar);
43 typedef struct icu4x_Date_from_rata_die_mv1_result {
union {icu4x::capi::Date* ok; icu4x::capi::CalendarError err;};
bool is_ok;} icu4x_Date_from_rata_die_mv1_result;
44 icu4x_Date_from_rata_die_mv1_result icu4x_Date_from_rata_die_mv1(int64_t rd,
const icu4x::capi::Calendar* calendar);
46 typedef struct icu4x_Date_from_string_mv1_result {
union {icu4x::capi::Date* ok; icu4x::capi::Rfc9557ParseError err;};
bool is_ok;} icu4x_Date_from_string_mv1_result;
47 icu4x_Date_from_string_mv1_result icu4x_Date_from_string_mv1(icu4x::diplomat::capi::DiplomatStringView v,
const icu4x::capi::Calendar* calendar);
49 icu4x::capi::Date* icu4x_Date_to_calendar_mv1(
const icu4x::capi::Date* self,
const icu4x::capi::Calendar* calendar);
51 icu4x::capi::IsoDate* icu4x_Date_to_iso_mv1(
const icu4x::capi::Date* self);
53 int64_t icu4x_Date_to_rata_die_mv1(
const icu4x::capi::Date* self);
55 uint16_t icu4x_Date_day_of_year_mv1(
const icu4x::capi::Date* self);
57 uint8_t icu4x_Date_day_of_month_mv1(
const icu4x::capi::Date* self);
59 icu4x::capi::Weekday icu4x_Date_day_of_week_mv1(
const icu4x::capi::Date* self);
61 icu4x::capi::Weekday icu4x_Date_weekday_mv1(
const icu4x::capi::Date* self);
63 uint8_t icu4x_Date_ordinal_month_mv1(
const icu4x::capi::Date* self);
65 void icu4x_Date_month_code_mv1(
const icu4x::capi::Date* self, icu4x::diplomat::capi::DiplomatWrite* write);
67 uint8_t icu4x_Date_month_number_mv1(
const icu4x::capi::Date* self);
69 bool icu4x_Date_month_is_leap_mv1(
const icu4x::capi::Date* self);
71 int32_t icu4x_Date_era_year_or_related_iso_mv1(
const icu4x::capi::Date* self);
73 int32_t icu4x_Date_extended_year_mv1(
const icu4x::capi::Date* self);
75 void icu4x_Date_era_mv1(
const icu4x::capi::Date* self, icu4x::diplomat::capi::DiplomatWrite* write);
77 uint8_t icu4x_Date_months_in_year_mv1(
const icu4x::capi::Date* self);
79 uint8_t icu4x_Date_days_in_month_mv1(
const icu4x::capi::Date* self);
81 uint16_t icu4x_Date_days_in_year_mv1(
const icu4x::capi::Date* self);
83 bool icu4x_Date_is_in_leap_year_mv1(
const icu4x::capi::Date* self);
85 icu4x::capi::Calendar* icu4x_Date_calendar_mv1(
const icu4x::capi::Date* self);
87 typedef struct icu4x_Date_try_add_with_options_mv1_result {
union {icu4x::capi::Date* ok; icu4x::capi::CalendarDateAddError err;};
bool is_ok;} icu4x_Date_try_add_with_options_mv1_result;
88 icu4x_Date_try_add_with_options_mv1_result icu4x_Date_try_add_with_options_mv1(
const icu4x::capi::Date* self, icu4x::capi::DateDuration duration, icu4x::capi::DateAddOptions options);
90 typedef struct icu4x_Date_try_until_with_options_mv1_result {
union {icu4x::capi::DateDuration ok; };
bool is_ok;} icu4x_Date_try_until_with_options_mv1_result;
91 icu4x_Date_try_until_with_options_mv1_result icu4x_Date_try_until_with_options_mv1(
const icu4x::capi::Date* self,
const icu4x::capi::Date* other, icu4x::capi::DateDifferenceOptions options);
93 void icu4x_Date_destroy_mv1(Date* self);
100 auto result = icu4x::capi::icu4x_Date_from_iso_in_calendar_mv1(iso_year,
108 auto result = icu4x::capi::icu4x_Date_from_fields_in_calendar_mv1(fields.AsFFI(),
115 auto result = icu4x::capi::icu4x_Date_from_codes_in_calendar_mv1({era_code.data(), era_code.size()},
124 auto result = icu4x::capi::icu4x_Date_from_rata_die_mv1(rd,
130 auto result = icu4x::capi::icu4x_Date_from_string_mv1({v.data(), v.size()},
136 auto result = icu4x::capi::icu4x_Date_to_calendar_mv1(this->AsFFI(),
138 return std::unique_ptr<icu4x::Date>(icu4x::Date::FromFFI(result));
142 auto result = icu4x::capi::icu4x_Date_to_iso_mv1(this->AsFFI());
143 return std::unique_ptr<icu4x::IsoDate>(icu4x::IsoDate::FromFFI(result));
147 auto result = icu4x::capi::icu4x_Date_to_rata_die_mv1(this->AsFFI());
152 auto result = icu4x::capi::icu4x_Date_day_of_year_mv1(this->AsFFI());
157 auto result = icu4x::capi::icu4x_Date_day_of_month_mv1(this->AsFFI());
162 auto result = icu4x::capi::icu4x_Date_day_of_week_mv1(this->AsFFI());
163 return icu4x::Weekday::FromFFI(result);
167 auto result = icu4x::capi::icu4x_Date_weekday_mv1(this->AsFFI());
168 return icu4x::Weekday::FromFFI(result);
172 auto result = icu4x::capi::icu4x_Date_ordinal_month_mv1(this->AsFFI());
178 icu4x::diplomat::capi::DiplomatWrite write = icu4x::diplomat::WriteFromString(output);
179 icu4x::capi::icu4x_Date_month_code_mv1(this->AsFFI(),
186 icu4x::capi::icu4x_Date_month_code_mv1(this->AsFFI(),
191 auto result = icu4x::capi::icu4x_Date_month_number_mv1(this->AsFFI());
196 auto result = icu4x::capi::icu4x_Date_month_is_leap_mv1(this->AsFFI());
201 auto result = icu4x::capi::icu4x_Date_era_year_or_related_iso_mv1(this->AsFFI());
206 auto result = icu4x::capi::icu4x_Date_extended_year_mv1(this->AsFFI());
212 icu4x::diplomat::capi::DiplomatWrite write = icu4x::diplomat::WriteFromString(output);
213 icu4x::capi::icu4x_Date_era_mv1(this->AsFFI(),
220 icu4x::capi::icu4x_Date_era_mv1(this->AsFFI(),
225 auto result = icu4x::capi::icu4x_Date_months_in_year_mv1(this->AsFFI());
230 auto result = icu4x::capi::icu4x_Date_days_in_month_mv1(this->AsFFI());
235 auto result = icu4x::capi::icu4x_Date_days_in_year_mv1(this->AsFFI());
240 auto result = icu4x::capi::icu4x_Date_is_in_leap_year_mv1(this->AsFFI());
245 auto result = icu4x::capi::icu4x_Date_calendar_mv1(this->AsFFI());
246 return std::unique_ptr<icu4x::Calendar>(icu4x::Calendar::FromFFI(result));
250 auto result = icu4x::capi::icu4x_Date_try_add_with_options_mv1(this->AsFFI(),
257 auto result = icu4x::capi::icu4x_Date_try_until_with_options_mv1(this->AsFFI(),
263inline const icu4x::capi::Date* icu4x::Date::AsFFI()
const {
264 return reinterpret_cast<const icu4x::capi::Date*
>(
this);
267inline icu4x::capi::Date* icu4x::Date::AsFFI() {
268 return reinterpret_cast<icu4x::capi::Date*
>(
this);
271inline const icu4x::Date* icu4x::Date::FromFFI(
const icu4x::capi::Date* ptr) {
272 return reinterpret_cast<const icu4x::Date*
>(ptr);
275inline icu4x::Date* icu4x::Date::FromFFI(icu4x::capi::Date* ptr) {
276 return reinterpret_cast<icu4x::Date*
>(ptr);
279inline void icu4x::Date::operator
delete(
void* ptr) {
280 icu4x::capi::icu4x_Date_destroy_mv1(
reinterpret_cast<icu4x::capi::Date*
>(ptr));
Definition CalendarDateAddError.d.hpp:32
Definition CalendarDateFromFieldsError.d.hpp:40
Definition CalendarError.d.hpp:32
Definition Calendar.d.hpp:34
icu4x::Weekday day_of_week() const
Definition Date.hpp:161
std::unique_ptr< icu4x::IsoDate > to_iso() const
Definition Date.hpp:141
void era_write(W &writeable_output) const
Definition Date.hpp:218
uint8_t days_in_month() const
Definition Date.hpp:229
int64_t to_rata_die() const
Definition Date.hpp:146
icu4x::diplomat::result< std::unique_ptr< icu4x::Date >, icu4x::CalendarDateAddError > try_add_with_options(icu4x::DateDuration duration, icu4x::DateAddOptions options) const
Definition Date.hpp:249
icu4x::Weekday weekday() const
Definition Date.hpp:166
static icu4x::diplomat::result< std::unique_ptr< icu4x::Date >, icu4x::CalendarError > from_codes_in_calendar(std::string_view era_code, int32_t year, std::string_view month_code, uint8_t day, const icu4x::Calendar &calendar)
Definition Date.hpp:114
std::string era() const
Definition Date.hpp:210
uint8_t month_number() const
Definition Date.hpp:190
uint8_t day_of_month() const
Definition Date.hpp:156
uint8_t months_in_year() const
Definition Date.hpp:224
static icu4x::diplomat::result< std::unique_ptr< icu4x::Date >, icu4x::CalendarError > from_rata_die(int64_t rd, const icu4x::Calendar &calendar)
Definition Date.hpp:123
static icu4x::diplomat::result< std::unique_ptr< icu4x::Date >, icu4x::CalendarError > from_iso_in_calendar(int32_t iso_year, uint8_t iso_month, uint8_t iso_day, const icu4x::Calendar &calendar)
Definition Date.hpp:99
bool month_is_leap() const
Definition Date.hpp:195
uint8_t ordinal_month() const
Definition Date.hpp:171
void month_code_write(W &writeable_output) const
Definition Date.hpp:184
std::unique_ptr< icu4x::Date > to_calendar(const icu4x::Calendar &calendar) const
Definition Date.hpp:135
uint16_t days_in_year() const
Definition Date.hpp:234
int32_t era_year_or_related_iso() const
Definition Date.hpp:200
int32_t extended_year() const
Definition Date.hpp:205
uint16_t day_of_year() const
Definition Date.hpp:151
static icu4x::diplomat::result< std::unique_ptr< icu4x::Date >, icu4x::Rfc9557ParseError > from_string(std::string_view v, const icu4x::Calendar &calendar)
Definition Date.hpp:129
std::unique_ptr< icu4x::Calendar > calendar() const
Definition Date.hpp:244
std::string month_code() const
Definition Date.hpp:176
static icu4x::diplomat::result< std::unique_ptr< icu4x::Date >, icu4x::CalendarDateFromFieldsError > from_fields_in_calendar(icu4x::DateFields fields, icu4x::DateFromFieldsOptions options, const icu4x::Calendar &calendar)
Definition Date.hpp:107
icu4x::diplomat::result< icu4x::DateDuration, icu4x::CalendarMismatchedCalendarError > try_until_with_options(const icu4x::Date &other, icu4x::DateDifferenceOptions options) const
Definition Date.hpp:256
bool is_in_leap_year() const
Definition Date.hpp:239
Definition Rfc9557ParseError.d.hpp:33
Definition Weekday.d.hpp:35
Definition diplomat_runtime.hpp:166
Definition CalendarMismatchedCalendarError.d.hpp:26
Definition DateAddOptions.d.hpp:35
Definition DateDifferenceOptions.d.hpp:35
Definition DateDuration.d.hpp:39
Definition DateFields.d.hpp:35
Definition DateFromFieldsOptions.d.hpp:38
Definition diplomat_runtime.hpp:146
Definition diplomat_runtime.hpp:128
Definition diplomat_runtime.hpp:117