ICU4X
International Components for Unicode
Loading...
Searching...
No Matches
CalendarKind.d.hpp
Go to the documentation of this file.
1#ifndef ICU4X_CalendarKind_D_HPP
2#define ICU4X_CalendarKind_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"
13namespace icu4x {
14namespace capi { struct Locale; }
15class Locale;
16class CalendarKind;
17} // namespace icu4x
18
19
20
21namespace icu4x {
22namespace capi {
23 enum CalendarKind {
24 CalendarKind_Iso = 0,
25 CalendarKind_Gregorian = 1,
26 CalendarKind_Buddhist = 2,
27 CalendarKind_Japanese = 3,
28 CalendarKind_JapaneseExtended = 4,
29 CalendarKind_Ethiopian = 5,
30 CalendarKind_EthiopianAmeteAlem = 6,
31 CalendarKind_Indian = 7,
32 CalendarKind_Coptic = 8,
33 CalendarKind_Dangi = 9,
34 CalendarKind_Chinese = 10,
35 CalendarKind_Hebrew = 11,
36 CalendarKind_HijriTabularTypeIIFriday = 12,
37 CalendarKind_HijriSimulatedMecca = 18,
38 CalendarKind_HijriTabularTypeIIThursday = 14,
39 CalendarKind_HijriUmmAlQura = 15,
40 CalendarKind_Persian = 16,
41 CalendarKind_Roc = 17,
42 };
43
44 typedef struct CalendarKind_option {union { CalendarKind ok; }; bool is_ok; } CalendarKind_option;
45} // namespace capi
46} // namespace
47
48namespace icu4x {
55public:
76
77 CalendarKind(): value(Value::Iso) {}
78
79 // Implicit conversions between enum and ::Value
80 constexpr CalendarKind(Value v) : value(v) {}
81 constexpr operator Value() const { return value; }
82 // Prevent usage as boolean value
83 explicit operator bool() const = delete;
84
90 inline static icu4x::CalendarKind create(const icu4x::Locale& locale);
91
92 inline icu4x::capi::CalendarKind AsFFI() const;
93 inline static icu4x::CalendarKind FromFFI(icu4x::capi::CalendarKind c_enum);
94private:
95 Value value;
96};
97
98} // namespace
99#endif // ICU4X_CalendarKind_D_HPP
Definition CalendarKind.d.hpp:54
static icu4x::CalendarKind create(const icu4x::Locale &locale)
Definition CalendarKind.hpp:58
constexpr CalendarKind(Value v)
Definition CalendarKind.d.hpp:80
Value
Definition CalendarKind.d.hpp:56
@ Coptic
Definition CalendarKind.d.hpp:65
@ Dangi
Definition CalendarKind.d.hpp:66
@ Iso
Definition CalendarKind.d.hpp:57
@ Gregorian
Definition CalendarKind.d.hpp:58
@ Hebrew
Definition CalendarKind.d.hpp:68
@ Ethiopian
Definition CalendarKind.d.hpp:62
@ Persian
Definition CalendarKind.d.hpp:73
@ Chinese
Definition CalendarKind.d.hpp:67
@ Indian
Definition CalendarKind.d.hpp:64
@ EthiopianAmeteAlem
Definition CalendarKind.d.hpp:63
@ HijriSimulatedMecca
Definition CalendarKind.d.hpp:70
@ HijriTabularTypeIIThursday
Definition CalendarKind.d.hpp:71
@ HijriUmmAlQura
Definition CalendarKind.d.hpp:72
@ Roc
Definition CalendarKind.d.hpp:74
@ Japanese
Definition CalendarKind.d.hpp:60
@ JapaneseExtended
Definition CalendarKind.d.hpp:61
@ Buddhist
Definition CalendarKind.d.hpp:59
@ HijriTabularTypeIIFriday
Definition CalendarKind.d.hpp:69
CalendarKind()
Definition CalendarKind.d.hpp:77
Definition Locale.d.hpp:33
Definition Bidi.d.hpp:13