• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #ifndef icu4x_DateTimeFormatterLoadError_D_HPP
2 #define icu4x_DateTimeFormatterLoadError_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 "../diplomat_runtime.hpp"
12 
13 
14 namespace icu4x {
15 namespace capi {
16     enum DateTimeFormatterLoadError {
17       DateTimeFormatterLoadError_Unknown = 0,
18       DateTimeFormatterLoadError_UnsupportedLength = 2051,
19       DateTimeFormatterLoadError_DuplicateField = 2057,
20       DateTimeFormatterLoadError_TypeTooSpecific = 2058,
21       DateTimeFormatterLoadError_DataMarkerNotFound = 1,
22       DateTimeFormatterLoadError_DataIdentifierNotFound = 2,
23       DateTimeFormatterLoadError_DataInvalidRequest = 3,
24       DateTimeFormatterLoadError_DataInconsistentData = 4,
25       DateTimeFormatterLoadError_DataDowncast = 5,
26       DateTimeFormatterLoadError_DataDeserialize = 6,
27       DateTimeFormatterLoadError_DataCustom = 7,
28       DateTimeFormatterLoadError_DataIo = 8,
29     };
30 
31     typedef struct DateTimeFormatterLoadError_option {union { DateTimeFormatterLoadError ok; }; bool is_ok; } DateTimeFormatterLoadError_option;
32 } // namespace capi
33 } // namespace
34 
35 namespace icu4x {
36 class DateTimeFormatterLoadError {
37 public:
38   enum Value {
39     Unknown = 0,
40     UnsupportedLength = 2051,
41     DuplicateField = 2057,
42     TypeTooSpecific = 2058,
43     DataMarkerNotFound = 1,
44     DataIdentifierNotFound = 2,
45     DataInvalidRequest = 3,
46     DataInconsistentData = 4,
47     DataDowncast = 5,
48     DataDeserialize = 6,
49     DataCustom = 7,
50     DataIo = 8,
51   };
52 
53   DateTimeFormatterLoadError() = default;
54   // Implicit conversions between enum and ::Value
DateTimeFormatterLoadError(Value v)55   constexpr DateTimeFormatterLoadError(Value v) : value(v) {}
operator Value() const56   constexpr operator Value() const { return value; }
57   // Prevent usage as boolean value
58   explicit operator bool() const = delete;
59 
60   inline icu4x::capi::DateTimeFormatterLoadError AsFFI() const;
61   inline static icu4x::DateTimeFormatterLoadError FromFFI(icu4x::capi::DateTimeFormatterLoadError c_enum);
62 private:
63     Value value;
64 };
65 
66 } // namespace
67 #endif // icu4x_DateTimeFormatterLoadError_D_HPP
68