tor-browser

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

VariantOffsetsCalculator.d.hpp (3096B)


      1 #ifndef icu4x_VariantOffsetsCalculator_D_HPP
      2 #define icu4x_VariantOffsetsCalculator_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 IsoDate; }
     18 class IsoDate;
     19 namespace capi { struct Time; }
     20 class Time;
     21 namespace capi { struct TimeZone; }
     22 class TimeZone;
     23 namespace capi { struct VariantOffsetsCalculator; }
     24 class VariantOffsetsCalculator;
     25 struct VariantOffsets;
     26 class DataError;
     27 }
     28 
     29 
     30 namespace icu4x {
     31 namespace capi {
     32    struct VariantOffsetsCalculator;
     33 } // namespace capi
     34 } // namespace
     35 
     36 namespace icu4x {
     37 /**
     38 * See the [Rust documentation for `VariantOffsetsCalculator`](https://docs.rs/icu/latest/icu/time/zone/struct.VariantOffsetsCalculator.html) for more information.
     39 */
     40 class VariantOffsetsCalculator {
     41 public:
     42 
     43  /**
     44   * Construct a new [`VariantOffsetsCalculator`] instance using compiled data.
     45   *
     46   * See the [Rust documentation for `new`](https://docs.rs/icu/latest/icu/time/zone/struct.VariantOffsetsCalculator.html#method.new) for more information.
     47   */
     48  inline static std::unique_ptr<icu4x::VariantOffsetsCalculator> create();
     49 
     50  /**
     51   * Construct a new [`VariantOffsetsCalculator`] instance using a particular data source.
     52   *
     53   * See the [Rust documentation for `new`](https://docs.rs/icu/latest/icu/time/zone/struct.VariantOffsetsCalculator.html#method.new) for more information.
     54   */
     55  inline static diplomat::result<std::unique_ptr<icu4x::VariantOffsetsCalculator>, icu4x::DataError> create_with_provider(const icu4x::DataProvider& provider);
     56 
     57  /**
     58   * See the [Rust documentation for `compute_offsets_from_time_zone_and_name_timestamp`](https://docs.rs/icu/latest/icu/time/zone/struct.VariantOffsetsCalculatorBorrowed.html#method.compute_offsets_from_time_zone_and_name_timestamp) for more information.
     59   */
     60  inline std::optional<icu4x::VariantOffsets> compute_offsets_from_time_zone_and_date_time(const icu4x::TimeZone& time_zone, const icu4x::IsoDate& local_date, const icu4x::Time& local_time) const;
     61 
     62  inline const icu4x::capi::VariantOffsetsCalculator* AsFFI() const;
     63  inline icu4x::capi::VariantOffsetsCalculator* AsFFI();
     64  inline static const icu4x::VariantOffsetsCalculator* FromFFI(const icu4x::capi::VariantOffsetsCalculator* ptr);
     65  inline static icu4x::VariantOffsetsCalculator* FromFFI(icu4x::capi::VariantOffsetsCalculator* ptr);
     66  inline static void operator delete(void* ptr);
     67 private:
     68  VariantOffsetsCalculator() = delete;
     69  VariantOffsetsCalculator(const icu4x::VariantOffsetsCalculator&) = delete;
     70  VariantOffsetsCalculator(icu4x::VariantOffsetsCalculator&&) noexcept = delete;
     71  VariantOffsetsCalculator operator=(const icu4x::VariantOffsetsCalculator&) = delete;
     72  VariantOffsetsCalculator operator=(icu4x::VariantOffsetsCalculator&&) noexcept = delete;
     73  static void operator delete[](void*, size_t) = delete;
     74 };
     75 
     76 } // namespace
     77 #endif // icu4x_VariantOffsetsCalculator_D_HPP