ScriptExtensionsSet.d.hpp (2363B)
1 #ifndef icu4x_ScriptExtensionsSet_D_HPP 2 #define icu4x_ScriptExtensionsSet_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 <cstdlib> 12 #include "../diplomat_runtime.hpp" 13 14 15 namespace icu4x { 16 namespace capi { 17 struct ScriptExtensionsSet; 18 } // namespace capi 19 } // namespace 20 21 namespace icu4x { 22 /** 23 * An object that represents the Script_Extensions property for a single character 24 * 25 * See the [Rust documentation for `ScriptExtensionsSet`](https://docs.rs/icu/latest/icu/properties/script/struct.ScriptExtensionsSet.html) for more information. 26 */ 27 class ScriptExtensionsSet { 28 public: 29 30 /** 31 * Check if the Script_Extensions property of the given code point covers the given script 32 * 33 * See the [Rust documentation for `contains`](https://docs.rs/icu/latest/icu/properties/script/struct.ScriptExtensionsSet.html#method.contains) for more information. 34 */ 35 inline bool contains(uint16_t script) const; 36 37 /** 38 * Get the number of scripts contained in here 39 * 40 * See the [Rust documentation for `iter`](https://docs.rs/icu/latest/icu/properties/script/struct.ScriptExtensionsSet.html#method.iter) for more information. 41 */ 42 inline size_t count() const; 43 44 /** 45 * Get script at index 46 * 47 * See the [Rust documentation for `iter`](https://docs.rs/icu/latest/icu/properties/script/struct.ScriptExtensionsSet.html#method.iter) for more information. 48 */ 49 inline std::optional<uint16_t> script_at(size_t index) const; 50 51 inline const icu4x::capi::ScriptExtensionsSet* AsFFI() const; 52 inline icu4x::capi::ScriptExtensionsSet* AsFFI(); 53 inline static const icu4x::ScriptExtensionsSet* FromFFI(const icu4x::capi::ScriptExtensionsSet* ptr); 54 inline static icu4x::ScriptExtensionsSet* FromFFI(icu4x::capi::ScriptExtensionsSet* ptr); 55 inline static void operator delete(void* ptr); 56 private: 57 ScriptExtensionsSet() = delete; 58 ScriptExtensionsSet(const icu4x::ScriptExtensionsSet&) = delete; 59 ScriptExtensionsSet(icu4x::ScriptExtensionsSet&&) noexcept = delete; 60 ScriptExtensionsSet operator=(const icu4x::ScriptExtensionsSet&) = delete; 61 ScriptExtensionsSet operator=(icu4x::ScriptExtensionsSet&&) noexcept = delete; 62 static void operator delete[](void*, size_t) = delete; 63 }; 64 65 } // namespace 66 #endif // icu4x_ScriptExtensionsSet_D_HPP