tor-browser

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

LineBreakStrictness.d.hpp (1483B)


      1 #ifndef icu4x_LineBreakStrictness_D_HPP
      2 #define icu4x_LineBreakStrictness_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 LineBreakStrictness {
     18      LineBreakStrictness_Loose = 0,
     19      LineBreakStrictness_Normal = 1,
     20      LineBreakStrictness_Strict = 2,
     21      LineBreakStrictness_Anywhere = 3,
     22    };
     23 
     24    typedef struct LineBreakStrictness_option {union { LineBreakStrictness ok; }; bool is_ok; } LineBreakStrictness_option;
     25 } // namespace capi
     26 } // namespace
     27 
     28 namespace icu4x {
     29 /**
     30 * See the [Rust documentation for `LineBreakStrictness`](https://docs.rs/icu/latest/icu/segmenter/options/enum.LineBreakStrictness.html) for more information.
     31 */
     32 class LineBreakStrictness {
     33 public:
     34  enum Value {
     35    Loose = 0,
     36    Normal = 1,
     37    Strict = 2,
     38    Anywhere = 3,
     39  };
     40 
     41  LineBreakStrictness() = default;
     42  // Implicit conversions between enum and ::Value
     43  constexpr LineBreakStrictness(Value v) : value(v) {}
     44  constexpr operator Value() const { return value; }
     45  // Prevent usage as boolean value
     46  explicit operator bool() const = delete;
     47 
     48  inline icu4x::capi::LineBreakStrictness AsFFI() const;
     49  inline static icu4x::LineBreakStrictness FromFFI(icu4x::capi::LineBreakStrictness c_enum);
     50 private:
     51    Value value;
     52 };
     53 
     54 } // namespace
     55 #endif // icu4x_LineBreakStrictness_D_HPP