1 #ifndef icu4x_GraphemeClusterBreakIteratorUtf16_D_HPP 2 #define icu4x_GraphemeClusterBreakIteratorUtf16_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 14 namespace icu4x { 15 namespace capi { 16 struct GraphemeClusterBreakIteratorUtf16; 17 } // namespace capi 18 } // namespace 19 20 namespace icu4x { 21 class GraphemeClusterBreakIteratorUtf16 { 22 public: 23 24 inline int32_t next(); 25 26 inline const icu4x::capi::GraphemeClusterBreakIteratorUtf16* AsFFI() const; 27 inline icu4x::capi::GraphemeClusterBreakIteratorUtf16* AsFFI(); 28 inline static const icu4x::GraphemeClusterBreakIteratorUtf16* FromFFI(const icu4x::capi::GraphemeClusterBreakIteratorUtf16* ptr); 29 inline static icu4x::GraphemeClusterBreakIteratorUtf16* FromFFI(icu4x::capi::GraphemeClusterBreakIteratorUtf16* ptr); 30 inline static void operator delete(void* ptr); 31 private: 32 GraphemeClusterBreakIteratorUtf16() = delete; 33 GraphemeClusterBreakIteratorUtf16(const icu4x::GraphemeClusterBreakIteratorUtf16&) = delete; 34 GraphemeClusterBreakIteratorUtf16(icu4x::GraphemeClusterBreakIteratorUtf16&&) noexcept = delete; 35 GraphemeClusterBreakIteratorUtf16 operator=(const icu4x::GraphemeClusterBreakIteratorUtf16&) = delete; 36 GraphemeClusterBreakIteratorUtf16 operator=(icu4x::GraphemeClusterBreakIteratorUtf16&&) noexcept = delete; 37 static void operator delete[](void*, size_t) = delete; 38 }; 39 40 } // namespace 41 #endif // icu4x_GraphemeClusterBreakIteratorUtf16_D_HPP 42