ICU4X
International Components for Unicode
Loading...
Searching...
No Matches
ICU4XScriptWithExtensionsBorrowed.hpp
Go to the documentation of this file.
1#ifndef ICU4XScriptWithExtensionsBorrowed_HPP
2#define ICU4XScriptWithExtensionsBorrowed_HPP
3#include <stdint.h>
4#include <stddef.h>
5#include <stdbool.h>
6#include <algorithm>
7#include <memory>
8#include <variant>
9#include <optional>
10#include "diplomat_runtime.hpp"
11
12#include "ICU4XScriptWithExtensionsBorrowed.h"
13
16
20struct ICU4XScriptWithExtensionsBorrowedDeleter {
21 void operator()(capi::ICU4XScriptWithExtensionsBorrowed* l) const noexcept {
22 capi::ICU4XScriptWithExtensionsBorrowed_destroy(l);
23 }
24};
25
32 public:
33
39 uint16_t get_script_val(uint32_t code_point) const;
40
48 ICU4XScriptExtensionsSet get_script_extensions_val(uint32_t code_point) const;
49
55 bool has_script(uint32_t code_point, uint16_t script) const;
56
64 inline const capi::ICU4XScriptWithExtensionsBorrowed* AsFFI() const { return this->inner.get(); }
65 inline capi::ICU4XScriptWithExtensionsBorrowed* AsFFIMut() { return this->inner.get(); }
66 inline explicit ICU4XScriptWithExtensionsBorrowed(capi::ICU4XScriptWithExtensionsBorrowed* i) : inner(i) {}
70 private:
71 std::unique_ptr<capi::ICU4XScriptWithExtensionsBorrowed, ICU4XScriptWithExtensionsBorrowedDeleter> inner;
72};
73
74#include "ICU4XScriptExtensionsSet.hpp"
76
77inline uint16_t ICU4XScriptWithExtensionsBorrowed::get_script_val(uint32_t code_point) const {
78 return capi::ICU4XScriptWithExtensionsBorrowed_get_script_val(this->inner.get(), code_point);
79}
81 return ICU4XScriptExtensionsSet(capi::ICU4XScriptWithExtensionsBorrowed_get_script_extensions_val(this->inner.get(), code_point));
82}
83inline bool ICU4XScriptWithExtensionsBorrowed::has_script(uint32_t code_point, uint16_t script) const {
84 return capi::ICU4XScriptWithExtensionsBorrowed_has_script(this->inner.get(), code_point, script);
85}
87 return ICU4XCodePointSetData(capi::ICU4XScriptWithExtensionsBorrowed_get_script_extensions_set(this->inner.get(), script));
88}
89#endif
Definition ICU4XCodePointSetData.hpp:37
Definition ICU4XScriptExtensionsSet.hpp:29
ICU4XScriptWithExtensionsBorrowed(capi::ICU4XScriptWithExtensionsBorrowed *i)
Definition ICU4XScriptWithExtensionsBorrowed.hpp:66
ICU4XScriptWithExtensionsBorrowed(ICU4XScriptWithExtensionsBorrowed &&) noexcept=default
ICU4XCodePointSetData get_script_extensions_set(uint16_t script) const
Definition ICU4XScriptWithExtensionsBorrowed.hpp:86
uint16_t get_script_val(uint32_t code_point) const
Definition ICU4XScriptWithExtensionsBorrowed.hpp:77
ICU4XScriptExtensionsSet get_script_extensions_val(uint32_t code_point) const
Definition ICU4XScriptWithExtensionsBorrowed.hpp:80
bool has_script(uint32_t code_point, uint16_t script) const
Definition ICU4XScriptWithExtensionsBorrowed.hpp:83