ReorderedIndexMap.hpp (2489B)
1 #ifndef icu4x_ReorderedIndexMap_HPP 2 #define icu4x_ReorderedIndexMap_HPP 3 4 #include "ReorderedIndexMap.d.hpp" 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> 14 #include "../diplomat_runtime.hpp" 15 16 17 namespace icu4x { 18 namespace capi { 19 extern "C" { 20 21 diplomat::capi::DiplomatUsizeView icu4x_ReorderedIndexMap_as_slice_mv1(const icu4x::capi::ReorderedIndexMap* self); 22 23 size_t icu4x_ReorderedIndexMap_len_mv1(const icu4x::capi::ReorderedIndexMap* self); 24 25 bool icu4x_ReorderedIndexMap_is_empty_mv1(const icu4x::capi::ReorderedIndexMap* self); 26 27 size_t icu4x_ReorderedIndexMap_get_mv1(const icu4x::capi::ReorderedIndexMap* self, size_t index); 28 29 void icu4x_ReorderedIndexMap_destroy_mv1(ReorderedIndexMap* self); 30 31 } // extern "C" 32 } // namespace capi 33 } // namespace 34 35 inline diplomat::span<const size_t> icu4x::ReorderedIndexMap::as_slice() const { 36 auto result = icu4x::capi::icu4x_ReorderedIndexMap_as_slice_mv1(this->AsFFI()); 37 return diplomat::span<const size_t>(result.data, result.len); 38 } 39 40 inline size_t icu4x::ReorderedIndexMap::len() const { 41 auto result = icu4x::capi::icu4x_ReorderedIndexMap_len_mv1(this->AsFFI()); 42 return result; 43 } 44 45 inline bool icu4x::ReorderedIndexMap::is_empty() const { 46 auto result = icu4x::capi::icu4x_ReorderedIndexMap_is_empty_mv1(this->AsFFI()); 47 return result; 48 } 49 50 inline size_t icu4x::ReorderedIndexMap::operator[](size_t index) const { 51 auto result = icu4x::capi::icu4x_ReorderedIndexMap_get_mv1(this->AsFFI(), 52 index); 53 return result; 54 } 55 56 inline const icu4x::capi::ReorderedIndexMap* icu4x::ReorderedIndexMap::AsFFI() const { 57 return reinterpret_cast<const icu4x::capi::ReorderedIndexMap*>(this); 58 } 59 60 inline icu4x::capi::ReorderedIndexMap* icu4x::ReorderedIndexMap::AsFFI() { 61 return reinterpret_cast<icu4x::capi::ReorderedIndexMap*>(this); 62 } 63 64 inline const icu4x::ReorderedIndexMap* icu4x::ReorderedIndexMap::FromFFI(const icu4x::capi::ReorderedIndexMap* ptr) { 65 return reinterpret_cast<const icu4x::ReorderedIndexMap*>(ptr); 66 } 67 68 inline icu4x::ReorderedIndexMap* icu4x::ReorderedIndexMap::FromFFI(icu4x::capi::ReorderedIndexMap* ptr) { 69 return reinterpret_cast<icu4x::ReorderedIndexMap*>(ptr); 70 } 71 72 inline void icu4x::ReorderedIndexMap::operator delete(void* ptr) { 73 icu4x::capi::icu4x_ReorderedIndexMap_destroy_mv1(reinterpret_cast<icu4x::capi::ReorderedIndexMap*>(ptr)); 74 } 75 76 77 #endif // icu4x_ReorderedIndexMap_HPP