1#ifndef ICU4X_UtcOffset_HPP
2#define ICU4X_UtcOffset_HPP
22 typedef struct icu4x_UtcOffset_from_seconds_mv1_result {
union {icu4x::capi::UtcOffset* ok; };
bool is_ok;} icu4x_UtcOffset_from_seconds_mv1_result;
23 icu4x_UtcOffset_from_seconds_mv1_result icu4x_UtcOffset_from_seconds_mv1(int32_t seconds);
25 typedef struct icu4x_UtcOffset_from_string_mv1_result {
union {icu4x::capi::UtcOffset* ok; };
bool is_ok;} icu4x_UtcOffset_from_string_mv1_result;
26 icu4x_UtcOffset_from_string_mv1_result icu4x_UtcOffset_from_string_mv1(icu4x::diplomat::capi::DiplomatStringView offset);
28 int32_t icu4x_UtcOffset_seconds_mv1(
const icu4x::capi::UtcOffset* self);
30 bool icu4x_UtcOffset_is_non_negative_mv1(
const icu4x::capi::UtcOffset* self);
32 bool icu4x_UtcOffset_is_zero_mv1(
const icu4x::capi::UtcOffset* self);
34 int32_t icu4x_UtcOffset_hours_part_mv1(
const icu4x::capi::UtcOffset* self);
36 uint32_t icu4x_UtcOffset_minutes_part_mv1(
const icu4x::capi::UtcOffset* self);
38 uint32_t icu4x_UtcOffset_seconds_part_mv1(
const icu4x::capi::UtcOffset* self);
40 void icu4x_UtcOffset_to_string_mv1(
const icu4x::capi::UtcOffset* self, icu4x::diplomat::capi::DiplomatWrite* write);
42 void icu4x_UtcOffset_destroy_mv1(UtcOffset* self);
49 auto result = icu4x::capi::icu4x_UtcOffset_from_seconds_mv1(
seconds);
54 auto result = icu4x::capi::icu4x_UtcOffset_from_string_mv1({offset.data(), offset.size()});
59 auto result = icu4x::capi::icu4x_UtcOffset_seconds_mv1(this->AsFFI());
64 auto result = icu4x::capi::icu4x_UtcOffset_is_non_negative_mv1(this->AsFFI());
69 auto result = icu4x::capi::icu4x_UtcOffset_is_zero_mv1(this->AsFFI());
74 auto result = icu4x::capi::icu4x_UtcOffset_hours_part_mv1(this->AsFFI());
79 auto result = icu4x::capi::icu4x_UtcOffset_minutes_part_mv1(this->AsFFI());
84 auto result = icu4x::capi::icu4x_UtcOffset_seconds_part_mv1(this->AsFFI());
90 icu4x::diplomat::capi::DiplomatWrite write = icu4x::diplomat::WriteFromString(output);
91 icu4x::capi::icu4x_UtcOffset_to_string_mv1(this->AsFFI(),
98 icu4x::capi::icu4x_UtcOffset_to_string_mv1(this->AsFFI(),
102inline const icu4x::capi::UtcOffset* icu4x::UtcOffset::AsFFI()
const {
103 return reinterpret_cast<const icu4x::capi::UtcOffset*
>(
this);
106inline icu4x::capi::UtcOffset* icu4x::UtcOffset::AsFFI() {
107 return reinterpret_cast<icu4x::capi::UtcOffset*
>(
this);
110inline const icu4x::UtcOffset* icu4x::UtcOffset::FromFFI(
const icu4x::capi::UtcOffset* ptr) {
114inline icu4x::UtcOffset* icu4x::UtcOffset::FromFFI(icu4x::capi::UtcOffset* ptr) {
118inline void icu4x::UtcOffset::operator
delete(
void* ptr) {
119 icu4x::capi::icu4x_UtcOffset_destroy_mv1(
reinterpret_cast<icu4x::capi::UtcOffset*
>(ptr));
Definition UtcOffset.d.hpp:31
int32_t hours_part() const
Definition UtcOffset.hpp:73
int32_t seconds() const
Definition UtcOffset.hpp:58
uint32_t minutes_part() const
Definition UtcOffset.hpp:78
static icu4x::diplomat::result< std::unique_ptr< icu4x::UtcOffset >, icu4x::TimeZoneInvalidOffsetError > from_seconds(int32_t seconds)
Definition UtcOffset.hpp:48
static icu4x::diplomat::result< std::unique_ptr< icu4x::UtcOffset >, icu4x::TimeZoneInvalidOffsetError > from_string(std::string_view offset)
Definition UtcOffset.hpp:53
std::string to_string() const
Definition UtcOffset.hpp:88
uint32_t seconds_part() const
Definition UtcOffset.hpp:83
void to_string_write(W &writeable_output) const
Definition UtcOffset.hpp:96
bool is_zero() const
Definition UtcOffset.hpp:68
bool is_non_negative() const
Definition UtcOffset.hpp:63
Definition TimeZoneInvalidOffsetError.d.hpp:26
Definition diplomat_runtime.hpp:243
Definition diplomat_runtime.hpp:202