tor-browser

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

BidiParagraph.hpp (3636B)


      1 #ifndef icu4x_BidiParagraph_HPP
      2 #define icu4x_BidiParagraph_HPP
      3 
      4 #include "BidiParagraph.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 "BidiDirection.hpp"
     16 
     17 
     18 namespace icu4x {
     19 namespace capi {
     20    extern "C" {
     21 
     22    bool icu4x_BidiParagraph_set_paragraph_in_text_mv1(icu4x::capi::BidiParagraph* self, size_t n);
     23 
     24    icu4x::capi::BidiDirection icu4x_BidiParagraph_direction_mv1(const icu4x::capi::BidiParagraph* self);
     25 
     26    size_t icu4x_BidiParagraph_size_mv1(const icu4x::capi::BidiParagraph* self);
     27 
     28    size_t icu4x_BidiParagraph_range_start_mv1(const icu4x::capi::BidiParagraph* self);
     29 
     30    size_t icu4x_BidiParagraph_range_end_mv1(const icu4x::capi::BidiParagraph* self);
     31 
     32    typedef struct icu4x_BidiParagraph_reorder_line_mv1_result { bool is_ok;} icu4x_BidiParagraph_reorder_line_mv1_result;
     33    icu4x_BidiParagraph_reorder_line_mv1_result icu4x_BidiParagraph_reorder_line_mv1(const icu4x::capi::BidiParagraph* self, size_t range_start, size_t range_end, diplomat::capi::DiplomatWrite* write);
     34 
     35    uint8_t icu4x_BidiParagraph_level_at_mv1(const icu4x::capi::BidiParagraph* self, size_t pos);
     36 
     37    void icu4x_BidiParagraph_destroy_mv1(BidiParagraph* self);
     38 
     39    } // extern "C"
     40 } // namespace capi
     41 } // namespace
     42 
     43 inline bool icu4x::BidiParagraph::set_paragraph_in_text(size_t n) {
     44  auto result = icu4x::capi::icu4x_BidiParagraph_set_paragraph_in_text_mv1(this->AsFFI(),
     45    n);
     46  return result;
     47 }
     48 
     49 inline icu4x::BidiDirection icu4x::BidiParagraph::direction() const {
     50  auto result = icu4x::capi::icu4x_BidiParagraph_direction_mv1(this->AsFFI());
     51  return icu4x::BidiDirection::FromFFI(result);
     52 }
     53 
     54 inline size_t icu4x::BidiParagraph::size() const {
     55  auto result = icu4x::capi::icu4x_BidiParagraph_size_mv1(this->AsFFI());
     56  return result;
     57 }
     58 
     59 inline size_t icu4x::BidiParagraph::range_start() const {
     60  auto result = icu4x::capi::icu4x_BidiParagraph_range_start_mv1(this->AsFFI());
     61  return result;
     62 }
     63 
     64 inline size_t icu4x::BidiParagraph::range_end() const {
     65  auto result = icu4x::capi::icu4x_BidiParagraph_range_end_mv1(this->AsFFI());
     66  return result;
     67 }
     68 
     69 inline std::optional<std::string> icu4x::BidiParagraph::reorder_line(size_t range_start, size_t range_end) const {
     70  std::string output;
     71  diplomat::capi::DiplomatWrite write = diplomat::WriteFromString(output);
     72  auto result = icu4x::capi::icu4x_BidiParagraph_reorder_line_mv1(this->AsFFI(),
     73    range_start,
     74    range_end,
     75    &write);
     76  return result.is_ok ? std::optional<std::string>(std::move(output)) : std::nullopt;
     77 }
     78 
     79 inline uint8_t icu4x::BidiParagraph::level_at(size_t pos) const {
     80  auto result = icu4x::capi::icu4x_BidiParagraph_level_at_mv1(this->AsFFI(),
     81    pos);
     82  return result;
     83 }
     84 
     85 inline const icu4x::capi::BidiParagraph* icu4x::BidiParagraph::AsFFI() const {
     86  return reinterpret_cast<const icu4x::capi::BidiParagraph*>(this);
     87 }
     88 
     89 inline icu4x::capi::BidiParagraph* icu4x::BidiParagraph::AsFFI() {
     90  return reinterpret_cast<icu4x::capi::BidiParagraph*>(this);
     91 }
     92 
     93 inline const icu4x::BidiParagraph* icu4x::BidiParagraph::FromFFI(const icu4x::capi::BidiParagraph* ptr) {
     94  return reinterpret_cast<const icu4x::BidiParagraph*>(ptr);
     95 }
     96 
     97 inline icu4x::BidiParagraph* icu4x::BidiParagraph::FromFFI(icu4x::capi::BidiParagraph* ptr) {
     98  return reinterpret_cast<icu4x::BidiParagraph*>(ptr);
     99 }
    100 
    101 inline void icu4x::BidiParagraph::operator delete(void* ptr) {
    102  icu4x::capi::icu4x_BidiParagraph_destroy_mv1(reinterpret_cast<icu4x::capi::BidiParagraph*>(ptr));
    103 }
    104 
    105 
    106 #endif // icu4x_BidiParagraph_HPP