VariantOffsets.hpp (1038B)
1 #ifndef icu4x_VariantOffsets_HPP 2 #define icu4x_VariantOffsets_HPP 3 4 #include "VariantOffsets.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 #include "UtcOffset.hpp" 16 17 18 namespace icu4x { 19 namespace capi { 20 extern "C" { 21 22 } // extern "C" 23 } // namespace capi 24 } // namespace 25 26 27 inline icu4x::capi::VariantOffsets icu4x::VariantOffsets::AsFFI() const { 28 return icu4x::capi::VariantOffsets { 29 /* .standard = */ standard->AsFFI(), 30 /* .daylight = */ daylight ? daylight->AsFFI() : nullptr, 31 }; 32 } 33 34 inline icu4x::VariantOffsets icu4x::VariantOffsets::FromFFI(icu4x::capi::VariantOffsets c_struct) { 35 return icu4x::VariantOffsets { 36 /* .standard = */ std::unique_ptr<icu4x::UtcOffset>(icu4x::UtcOffset::FromFFI(c_struct.standard)), 37 /* .daylight = */ std::unique_ptr<icu4x::UtcOffset>(icu4x::UtcOffset::FromFFI(c_struct.daylight)), 38 }; 39 } 40 41 42 #endif // icu4x_VariantOffsets_HPP