tor-browser

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

LocaleFallbacker.d.hpp (3099B)


      1 #ifndef icu4x_LocaleFallbacker_D_HPP
      2 #define icu4x_LocaleFallbacker_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 namespace icu4x {
     15 namespace capi { struct DataProvider; }
     16 class DataProvider;
     17 namespace capi { struct LocaleFallbacker; }
     18 class LocaleFallbacker;
     19 namespace capi { struct LocaleFallbackerWithConfig; }
     20 class LocaleFallbackerWithConfig;
     21 struct LocaleFallbackConfig;
     22 class DataError;
     23 }
     24 
     25 
     26 namespace icu4x {
     27 namespace capi {
     28    struct LocaleFallbacker;
     29 } // namespace capi
     30 } // namespace
     31 
     32 namespace icu4x {
     33 /**
     34 * An object that runs the ICU4X locale fallback algorithm.
     35 *
     36 * See the [Rust documentation for `LocaleFallbacker`](https://docs.rs/icu/latest/icu/locale/fallback/struct.LocaleFallbacker.html) for more information.
     37 */
     38 class LocaleFallbacker {
     39 public:
     40 
     41  /**
     42   * Creates a new `LocaleFallbacker` from compiled data.
     43   *
     44   * See the [Rust documentation for `new`](https://docs.rs/icu/latest/icu/locale/fallback/struct.LocaleFallbacker.html#method.new) for more information.
     45   */
     46  inline static std::unique_ptr<icu4x::LocaleFallbacker> create();
     47 
     48  /**
     49   * Creates a new `LocaleFallbacker` from a data provider.
     50   *
     51   * See the [Rust documentation for `new`](https://docs.rs/icu/latest/icu/locale/fallback/struct.LocaleFallbacker.html#method.new) for more information.
     52   */
     53  inline static diplomat::result<std::unique_ptr<icu4x::LocaleFallbacker>, icu4x::DataError> create_with_provider(const icu4x::DataProvider& provider);
     54 
     55  /**
     56   * Creates a new `LocaleFallbacker` without data for limited functionality.
     57   *
     58   * See the [Rust documentation for `new_without_data`](https://docs.rs/icu/latest/icu/locale/fallback/struct.LocaleFallbacker.html#method.new_without_data) for more information.
     59   */
     60  inline static std::unique_ptr<icu4x::LocaleFallbacker> without_data();
     61 
     62  /**
     63   * Associates this `LocaleFallbacker` with configuration options.
     64   *
     65   * See the [Rust documentation for `for_config`](https://docs.rs/icu/latest/icu/locale/fallback/struct.LocaleFallbacker.html#method.for_config) for more information.
     66   */
     67  inline std::unique_ptr<icu4x::LocaleFallbackerWithConfig> for_config(icu4x::LocaleFallbackConfig config) const;
     68 
     69  inline const icu4x::capi::LocaleFallbacker* AsFFI() const;
     70  inline icu4x::capi::LocaleFallbacker* AsFFI();
     71  inline static const icu4x::LocaleFallbacker* FromFFI(const icu4x::capi::LocaleFallbacker* ptr);
     72  inline static icu4x::LocaleFallbacker* FromFFI(icu4x::capi::LocaleFallbacker* ptr);
     73  inline static void operator delete(void* ptr);
     74 private:
     75  LocaleFallbacker() = delete;
     76  LocaleFallbacker(const icu4x::LocaleFallbacker&) = delete;
     77  LocaleFallbacker(icu4x::LocaleFallbacker&&) noexcept = delete;
     78  LocaleFallbacker operator=(const icu4x::LocaleFallbacker&) = delete;
     79  LocaleFallbacker operator=(icu4x::LocaleFallbacker&&) noexcept = delete;
     80  static void operator delete[](void*, size_t) = delete;
     81 };
     82 
     83 } // namespace
     84 #endif // icu4x_LocaleFallbacker_D_HPP