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 {
43public:
44
54 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);
55
65 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);
66
72 inline std::string format(const icu4x::Time& start_time, const icu4x::Time& end_time) const;
73 template<typename W>
74 inline void format_write(const icu4x::Time& start_time, const icu4x::Time& end_time, W& writeable_output) const;
75
76 inline const icu4x::capi::TimeRangeFormatter* AsFFI() const;
77 inline icu4x::capi::TimeRangeFormatter* AsFFI();
78 inline static const icu4x::TimeRangeFormatter* FromFFI(const icu4x::capi::TimeRangeFormatter* ptr);
79 inline static icu4x::TimeRangeFormatter* FromFFI(icu4x::capi::TimeRangeFormatter* ptr);
80 inline static void operator delete(void* ptr);
81private:
82 TimeRangeFormatter() = delete;
85 TimeRangeFormatter operator=(const icu4x::TimeRangeFormatter&) = delete;
86 TimeRangeFormatter operator=(icu4x::TimeRangeFormatter&&) noexcept = delete;
87 static void operator delete[](void*, size_t) = delete;
88};
89
90} // namespace
91#endif // ICU4X_TimeRangeFormatter_D_HPP
Definition DataProvider.d.hpp:40
Definition DateTimeFormatterLoadError.d.hpp:41
Definition Locale.d.hpp:33
Definition TimeRangeFormatter.d.hpp:42
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:243