1 #ifndef icu4x_LocaleFallbackerWithConfig_D_HPP 2 #define icu4x_LocaleFallbackerWithConfig_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 "../diplomat_runtime.hpp" 12 13 namespace icu4x { 14 namespace capi { struct Locale; } 15 class Locale; 16 namespace capi { struct LocaleFallbackIterator; } 17 class LocaleFallbackIterator; 18 } 19 20 21 namespace icu4x { 22 namespace capi { 23 struct LocaleFallbackerWithConfig; 24 } // namespace capi 25 } // namespace 26 27 namespace icu4x { 28 class LocaleFallbackerWithConfig { 29 public: 30 31 inline std::unique_ptr<icu4x::LocaleFallbackIterator> fallback_for_locale(const icu4x::Locale& locale) const; 32 33 inline const icu4x::capi::LocaleFallbackerWithConfig* AsFFI() const; 34 inline icu4x::capi::LocaleFallbackerWithConfig* AsFFI(); 35 inline static const icu4x::LocaleFallbackerWithConfig* FromFFI(const icu4x::capi::LocaleFallbackerWithConfig* ptr); 36 inline static icu4x::LocaleFallbackerWithConfig* FromFFI(icu4x::capi::LocaleFallbackerWithConfig* ptr); 37 inline static void operator delete(void* ptr); 38 private: 39 LocaleFallbackerWithConfig() = delete; 40 LocaleFallbackerWithConfig(const icu4x::LocaleFallbackerWithConfig&) = delete; 41 LocaleFallbackerWithConfig(icu4x::LocaleFallbackerWithConfig&&) noexcept = delete; 42 LocaleFallbackerWithConfig operator=(const icu4x::LocaleFallbackerWithConfig&) = delete; 43 LocaleFallbackerWithConfig operator=(icu4x::LocaleFallbackerWithConfig&&) noexcept = delete; 44 static void operator delete[](void*, size_t) = delete; 45 }; 46 47 } // namespace 48 #endif // icu4x_LocaleFallbackerWithConfig_D_HPP 49