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>
12#include "diplomat_runtime.hpp"
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 {
32public:
33 enum Value {
34 Ltr = 0,
35 Rtl = 1,
36 Mixed = 2,
37 };
38
39 BidiDirection(): value(Value::Ltr) {}
40
41 // Implicit conversions between enum and ::Value
42 constexpr BidiDirection(Value v) : value(v) {}
43 constexpr operator Value() const { return value; }
44 // Prevent usage as boolean value
45 explicit operator bool() const = delete;
46
47 inline icu4x::capi::BidiDirection AsFFI() const;
48 inline static icu4x::BidiDirection FromFFI(icu4x::capi::BidiDirection c_enum);
49private:
50 Value value;
51};
52
53} // namespace
54#endif // ICU4X_BidiDirection_D_HPP
Definition BidiDirection.d.hpp:31
BidiDirection()
Definition BidiDirection.d.hpp:39
Value
Definition BidiDirection.d.hpp:33
@ Mixed
Definition BidiDirection.d.hpp:36
@ Ltr
Definition BidiDirection.d.hpp:34
@ Rtl
Definition BidiDirection.d.hpp:35
constexpr BidiDirection(Value v)
Definition BidiDirection.d.hpp:42
Definition Bidi.d.hpp:13