MeasureUnit.d.hpp (1527B)
1 #ifndef icu4x_MeasureUnit_D_HPP 2 #define icu4x_MeasureUnit_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 MeasureUnit; 18 } // namespace capi 19 } // namespace 20 21 namespace icu4x { 22 /** 23 * An ICU4X Measurement Unit object which represents a single unit of measurement 24 * such as `meter`, `second`, `kilometer-per-hour`, `square-meter`, etc. 25 * 26 * You can create an instance of this object using [`MeasureUnitParser`] by calling the `parse` method. 27 * 28 * See the [Rust documentation for `MeasureUnit`](https://docs.rs/icu/latest/icu/experimental/measure/measureunit/struct.MeasureUnit.html) for more information. 29 */ 30 class MeasureUnit { 31 public: 32 33 inline const icu4x::capi::MeasureUnit* AsFFI() const; 34 inline icu4x::capi::MeasureUnit* AsFFI(); 35 inline static const icu4x::MeasureUnit* FromFFI(const icu4x::capi::MeasureUnit* ptr); 36 inline static icu4x::MeasureUnit* FromFFI(icu4x::capi::MeasureUnit* ptr); 37 inline static void operator delete(void* ptr); 38 private: 39 MeasureUnit() = delete; 40 MeasureUnit(const icu4x::MeasureUnit&) = delete; 41 MeasureUnit(icu4x::MeasureUnit&&) noexcept = delete; 42 MeasureUnit operator=(const icu4x::MeasureUnit&) = delete; 43 MeasureUnit operator=(icu4x::MeasureUnit&&) noexcept = delete; 44 static void operator delete[](void*, size_t) = delete; 45 }; 46 47 } // namespace 48 #endif // icu4x_MeasureUnit_D_HPP