ICU4X
International Components for Unicode
Loading...
Searching...
No Matches
BidiDirection.d.hpp
Go to the documentation of this file.
1#ifndef icu4x_BidiDirection_D_HPP
2#define icu4x_BidiDirection_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>
13
14
15namespace icu4x {
16namespace capi {
17 enum BidiDirection {
18 BidiDirection_Ltr = 0,
19 BidiDirection_Rtl = 1,
20 BidiDirection_Mixed = 2,
21 };
22
23 typedef struct BidiDirection_option {union { BidiDirection ok; }; bool is_ok; } BidiDirection_option;
24} // namespace capi
25} // namespace
26
27namespace icu4x {
29public:
30 enum Value {
31 Ltr = 0,
32 Rtl = 1,
33 Mixed = 2,
34 };
35
36 BidiDirection() = default;
37 // Implicit conversions between enum and ::Value
38 constexpr BidiDirection(Value v) : value(v) {}
39 constexpr operator Value() const { return value; }
40 // Prevent usage as boolean value
41 explicit operator bool() const = delete;
42
43 inline icu4x::capi::BidiDirection AsFFI() const;
44 inline static icu4x::BidiDirection FromFFI(icu4x::capi::BidiDirection c_enum);
45private:
46 Value value;
47};
48
49} // namespace
50#endif // icu4x_BidiDirection_D_HPP
Definition BidiDirection.d.hpp:28
Value
Definition BidiDirection.d.hpp:30
@ Mixed
Definition BidiDirection.d.hpp:33
@ Ltr
Definition BidiDirection.d.hpp:31
@ Rtl
Definition BidiDirection.d.hpp:32
constexpr BidiDirection(Value v)
Definition BidiDirection.d.hpp:38
Definition Bidi.d.hpp:14