ICU4X
International Components for Unicode
Loading...
Searching...
No Matches
ScriptExtensionsSet.hpp
Go to the documentation of this file.
1#ifndef icu4x_ScriptExtensionsSet_HPP
2#define icu4x_ScriptExtensionsSet_HPP
3
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>
15
16
17namespace icu4x {
18namespace capi {
19 extern "C" {
20
21 bool icu4x_ScriptExtensionsSet_contains_mv1(const icu4x::capi::ScriptExtensionsSet* self, uint16_t script);
22
23 size_t icu4x_ScriptExtensionsSet_count_mv1(const icu4x::capi::ScriptExtensionsSet* self);
24
25 typedef struct icu4x_ScriptExtensionsSet_script_at_mv1_result {union {uint16_t ok; }; bool is_ok;} icu4x_ScriptExtensionsSet_script_at_mv1_result;
26 icu4x_ScriptExtensionsSet_script_at_mv1_result icu4x_ScriptExtensionsSet_script_at_mv1(const icu4x::capi::ScriptExtensionsSet* self, size_t index);
27
28 void icu4x_ScriptExtensionsSet_destroy_mv1(ScriptExtensionsSet* self);
29
30 } // extern "C"
31} // namespace capi
32} // namespace
33
34inline bool icu4x::ScriptExtensionsSet::contains(uint16_t script) const {
35 auto result = icu4x::capi::icu4x_ScriptExtensionsSet_contains_mv1(this->AsFFI(),
36 script);
37 return result;
38}
39
40inline size_t icu4x::ScriptExtensionsSet::count() const {
41 auto result = icu4x::capi::icu4x_ScriptExtensionsSet_count_mv1(this->AsFFI());
42 return result;
43}
44
45inline std::optional<uint16_t> icu4x::ScriptExtensionsSet::script_at(size_t index) const {
46 auto result = icu4x::capi::icu4x_ScriptExtensionsSet_script_at_mv1(this->AsFFI(),
47 index);
48 return result.is_ok ? std::optional<uint16_t>(result.ok) : std::nullopt;
49}
50
51inline const icu4x::capi::ScriptExtensionsSet* icu4x::ScriptExtensionsSet::AsFFI() const {
52 return reinterpret_cast<const icu4x::capi::ScriptExtensionsSet*>(this);
53}
54
55inline icu4x::capi::ScriptExtensionsSet* icu4x::ScriptExtensionsSet::AsFFI() {
56 return reinterpret_cast<icu4x::capi::ScriptExtensionsSet*>(this);
57}
58
59inline const icu4x::ScriptExtensionsSet* icu4x::ScriptExtensionsSet::FromFFI(const icu4x::capi::ScriptExtensionsSet* ptr) {
60 return reinterpret_cast<const icu4x::ScriptExtensionsSet*>(ptr);
61}
62
63inline icu4x::ScriptExtensionsSet* icu4x::ScriptExtensionsSet::FromFFI(icu4x::capi::ScriptExtensionsSet* ptr) {
64 return reinterpret_cast<icu4x::ScriptExtensionsSet*>(ptr);
65}
66
67inline void icu4x::ScriptExtensionsSet::operator delete(void* ptr) {
68 icu4x::capi::icu4x_ScriptExtensionsSet_destroy_mv1(reinterpret_cast<icu4x::capi::ScriptExtensionsSet*>(ptr));
69}
70
71
72#endif // icu4x_ScriptExtensionsSet_HPP
std::optional< uint16_t > script_at(size_t index) const
Definition ScriptExtensionsSet.hpp:45
size_t count() const
Definition ScriptExtensionsSet.hpp:40
bool contains(uint16_t script) const
Definition ScriptExtensionsSet.hpp:34
Definition Bidi.d.hpp:14