ICU4X
International Components for Unicode
Loading...
Searching...
No Matches
TimeRangeFormatter.d.hpp
Go to the documentation of this file.
1#ifndef ICU4X_TimeRangeFormatter_D_HPP
2#define ICU4X_TimeRangeFormatter_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"
13namespace icu4x {
14namespace capi { struct DataProvider; }
15class DataProvider;
16namespace capi { struct Locale; }
17class Locale;
18namespace capi { struct Time; }
19class Time;
20namespace capi { struct TimeRangeFormatter; }
21class TimeRangeFormatter;
22class DateTimeAlignment;
23class DateTimeFormatterLoadError;
24class DateTimeLength;
25class TimePrecision;
26} // namespace icu4x
27
28
29
30namespace icu4x {
31namespace capi {
32 struct TimeRangeFormatter;
33} // namespace capi
34} // namespace
35
36namespace icu4x {
41public:
42
50 inline static icu4x::diplomat::result<std::unique_ptr<icu4x::TimeRangeFormatter>, icu4x::DateTimeFormatterLoadError> create(const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::TimePrecision> time_precision, std::optional<icu4x::DateTimeAlignment> alignment);
51
59 inline static icu4x::diplomat::result<std::unique_ptr<icu4x::TimeRangeFormatter>, icu4x::DateTimeFormatterLoadError> create_with_provider(const icu4x::DataProvider& provider, const icu4x::Locale& locale, std::optional<icu4x::DateTimeLength> length, std::optional<icu4x::TimePrecision> time_precision, std::optional<icu4x::DateTimeAlignment> alignment);
60
64 inline std::string format(const icu4x::Time& start_time, const icu4x::Time& end_time) const;
65 template<typename W>
66 inline void format_write(const icu4x::Time& start_time, const icu4x::Time& end_time, W& writeable_output) const;
67
68 inline const icu4x::capi::TimeRangeFormatter* AsFFI() const;
69 inline icu4x::capi::TimeRangeFormatter* AsFFI();
70 inline static const icu4x::TimeRangeFormatter* FromFFI(const icu4x::capi::TimeRangeFormatter* ptr);
71 inline static icu4x::TimeRangeFormatter* FromFFI(icu4x::capi::TimeRangeFormatter* ptr);
72 inline static void operator delete(void* ptr);
73private:
74 TimeRangeFormatter() = delete;
77 TimeRangeFormatter operator=(const icu4x::TimeRangeFormatter&) = delete;
78 TimeRangeFormatter operator=(icu4x::TimeRangeFormatter&&) noexcept = delete;
79 static void operator delete[](void*, size_t) = delete;
80};
81
82} // namespace
83#endif // ICU4X_TimeRangeFormatter_D_HPP
Definition DataProvider.d.hpp:40
Definition DateTimeFormatterLoadError.d.hpp:41
Definition Locale.d.hpp:33
Definition TimeRangeFormatter.d.hpp:40
static icu4x::diplomat::result< std::unique_ptr< icu4x::TimeRangeFormatter >, icu4x::DateTimeFormatterLoadError > create(const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::TimePrecision > time_precision, std::optional< icu4x::DateTimeAlignment > alignment)
Definition TimeRangeFormatter.hpp:42
void format_write(const icu4x::Time &start_time, const icu4x::Time &end_time, W &writeable_output) const
Definition TimeRangeFormatter.hpp:69
std::string format(const icu4x::Time &start_time, const icu4x::Time &end_time) const
Definition TimeRangeFormatter.hpp:59
static icu4x::diplomat::result< std::unique_ptr< icu4x::TimeRangeFormatter >, icu4x::DateTimeFormatterLoadError > create_with_provider(const icu4x::DataProvider &provider, const icu4x::Locale &locale, std::optional< icu4x::DateTimeLength > length, std::optional< icu4x::TimePrecision > time_precision, std::optional< icu4x::DateTimeAlignment > alignment)
Definition TimeRangeFormatter.hpp:50
Definition Time.d.hpp:34
Definition Bidi.d.hpp:13
Definition diplomat_runtime.hpp:164