TimeZoneVariant.hpp (1283B)
1 #ifndef icu4x_TimeZoneVariant_HPP 2 #define icu4x_TimeZoneVariant_HPP 3 4 #include "TimeZoneVariant.d.hpp" 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 "../diplomat_runtime.hpp" 15 16 17 namespace icu4x { 18 namespace capi { 19 extern "C" { 20 21 icu4x::capi::TimeZoneVariant icu4x_TimeZoneVariant_from_rearguard_isdst_mv1(icu4x::capi::TimeZoneVariant self, bool isdst); 22 23 } // extern "C" 24 } // namespace capi 25 } // namespace 26 27 inline icu4x::capi::TimeZoneVariant icu4x::TimeZoneVariant::AsFFI() const { 28 return static_cast<icu4x::capi::TimeZoneVariant>(value); 29 } 30 31 inline icu4x::TimeZoneVariant icu4x::TimeZoneVariant::FromFFI(icu4x::capi::TimeZoneVariant c_enum) { 32 switch (c_enum) { 33 case icu4x::capi::TimeZoneVariant_Standard: 34 case icu4x::capi::TimeZoneVariant_Daylight: 35 return static_cast<icu4x::TimeZoneVariant::Value>(c_enum); 36 default: 37 std::abort(); 38 } 39 } 40 41 inline icu4x::TimeZoneVariant icu4x::TimeZoneVariant::from_rearguard_isdst(bool isdst) const { 42 auto result = icu4x::capi::icu4x_TimeZoneVariant_from_rearguard_isdst_mv1(this->AsFFI(), 43 isdst); 44 return icu4x::TimeZoneVariant::FromFFI(result); 45 } 46 #endif // icu4x_TimeZoneVariant_HPP