tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

ListLength.d.hpp (1254B)


      1 #ifndef icu4x_ListLength_D_HPP
      2 #define icu4x_ListLength_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 
     15 namespace icu4x {
     16 namespace capi {
     17    enum ListLength {
     18      ListLength_Wide = 0,
     19      ListLength_Short = 1,
     20      ListLength_Narrow = 2,
     21    };
     22 
     23    typedef struct ListLength_option {union { ListLength ok; }; bool is_ok; } ListLength_option;
     24 } // namespace capi
     25 } // namespace
     26 
     27 namespace icu4x {
     28 /**
     29 * See the [Rust documentation for `ListLength`](https://docs.rs/icu/latest/icu/list/options/enum.ListLength.html) for more information.
     30 */
     31 class ListLength {
     32 public:
     33  enum Value {
     34    Wide = 0,
     35    Short = 1,
     36    Narrow = 2,
     37  };
     38 
     39  ListLength() = default;
     40  // Implicit conversions between enum and ::Value
     41  constexpr ListLength(Value v) : value(v) {}
     42  constexpr operator Value() const { return value; }
     43  // Prevent usage as boolean value
     44  explicit operator bool() const = delete;
     45 
     46  inline icu4x::capi::ListLength AsFFI() const;
     47  inline static icu4x::ListLength FromFFI(icu4x::capi::ListLength c_enum);
     48 private:
     49    Value value;
     50 };
     51 
     52 } // namespace
     53 #endif // icu4x_ListLength_D_HPP