tor-browser

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

LineBreakOptionsV2.hpp (1488B)


      1 #ifndef icu4x_LineBreakOptionsV2_HPP
      2 #define icu4x_LineBreakOptionsV2_HPP
      3 
      4 #include "LineBreakOptionsV2.d.hpp"
      5 
      6 #include <stdio.h>
      7 #include <stdint.h>
      8 #include <stddef.h>
      9 #include <stdbool.h>
     10 #include <memory>
     11 #include <functional>
     12 #include <optional>
     13 #include <cstdlib>
     14 #include "../diplomat_runtime.hpp"
     15 #include "LineBreakStrictness.hpp"
     16 #include "LineBreakWordOption.hpp"
     17 
     18 
     19 namespace icu4x {
     20 namespace capi {
     21    extern "C" {
     22 
     23    } // extern "C"
     24 } // namespace capi
     25 } // namespace
     26 
     27 
     28 inline icu4x::capi::LineBreakOptionsV2 icu4x::LineBreakOptionsV2::AsFFI() const {
     29  return icu4x::capi::LineBreakOptionsV2 {
     30    /* .strictness = */ strictness.has_value() ? (icu4x::capi::LineBreakStrictness_option{ { strictness.value().AsFFI() }, true }) : (icu4x::capi::LineBreakStrictness_option{ {}, false }),
     31    /* .word_option = */ word_option.has_value() ? (icu4x::capi::LineBreakWordOption_option{ { word_option.value().AsFFI() }, true }) : (icu4x::capi::LineBreakWordOption_option{ {}, false }),
     32  };
     33 }
     34 
     35 inline icu4x::LineBreakOptionsV2 icu4x::LineBreakOptionsV2::FromFFI(icu4x::capi::LineBreakOptionsV2 c_struct) {
     36  return icu4x::LineBreakOptionsV2 {
     37    /* .strictness = */ c_struct.strictness.is_ok ? std::optional(icu4x::LineBreakStrictness::FromFFI(c_struct.strictness.ok)) : std::nullopt,
     38    /* .word_option = */ c_struct.word_option.is_ok ? std::optional(icu4x::LineBreakWordOption::FromFFI(c_struct.word_option.ok)) : std::nullopt,
     39  };
     40 }
     41 
     42 
     43 #endif // icu4x_LineBreakOptionsV2_HPP