ICU4X
International Components for Unicode
Loading...
Searching...
No Matches
DateDurationUnit.d.hpp
Go to the documentation of this file.
1#ifndef ICU4X_DateDurationUnit_D_HPP
2#define ICU4X_DateDurationUnit_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 DateDurationUnit {
18 DateDurationUnit_Years = 0,
19 DateDurationUnit_Months = 1,
20 DateDurationUnit_Weeks = 2,
21 DateDurationUnit_Days = 3,
22 };
23
24 typedef struct DateDurationUnit_option {union { DateDurationUnit ok; }; bool is_ok; } DateDurationUnit_option;
25} // namespace capi
26} // namespace
27
28namespace icu4x {
33public:
34 enum Value {
35 Years = 0,
36 Months = 1,
37 Weeks = 2,
38 Days = 3,
39 };
40
42
43 // Implicit conversions between enum and ::Value
44 constexpr DateDurationUnit(Value v) : value(v) {}
45 constexpr operator Value() const { return value; }
46 // Prevent usage as boolean value
47 explicit operator bool() const = delete;
48
49 inline icu4x::capi::DateDurationUnit AsFFI() const;
50 inline static icu4x::DateDurationUnit FromFFI(icu4x::capi::DateDurationUnit c_enum);
51private:
52 Value value;
53};
54
55} // namespace
56#endif // ICU4X_DateDurationUnit_D_HPP
Definition DateDurationUnit.d.hpp:32
constexpr DateDurationUnit(Value v)
Definition DateDurationUnit.d.hpp:44
DateDurationUnit()
Definition DateDurationUnit.d.hpp:41
Value
Definition DateDurationUnit.d.hpp:34
@ Weeks
Definition DateDurationUnit.d.hpp:37
@ Months
Definition DateDurationUnit.d.hpp:36
@ Days
Definition DateDurationUnit.d.hpp:38
@ Years
Definition DateDurationUnit.d.hpp:35
Definition Bidi.d.hpp:13