ICU4X
International Components for Unicode
Loading...
Searching...
No Matches
WordSegmenter.d.hpp
Go to the documentation of this file.
1#ifndef icu4x_WordSegmenter_D_HPP
2#define icu4x_WordSegmenter_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>
13
14namespace icu4x {
15namespace capi { struct DataProvider; }
16class DataProvider;
17namespace capi { struct Locale; }
18class Locale;
19namespace capi { struct WordBreakIteratorLatin1; }
21namespace capi { struct WordBreakIteratorUtf16; }
23namespace capi { struct WordBreakIteratorUtf8; }
25namespace capi { struct WordSegmenter; }
26class WordSegmenter;
27class DataError;
28}
29
30
31namespace icu4x {
32namespace capi {
33 struct WordSegmenter;
34} // namespace capi
35} // namespace
36
37namespace icu4x {
43class WordSegmenter {
44public:
45
55 inline static std::unique_ptr<icu4x::WordSegmenter> create_auto();
56
67
78
88 inline static std::unique_ptr<icu4x::WordSegmenter> create_lstm();
89
100
111
121 inline static std::unique_ptr<icu4x::WordSegmenter> create_dictionary();
122
133
144
153 inline std::unique_ptr<icu4x::WordBreakIteratorUtf8> segment(std::string_view input) const;
154
163 inline std::unique_ptr<icu4x::WordBreakIteratorUtf16> segment16(std::u16string_view input) const;
164
170 inline std::unique_ptr<icu4x::WordBreakIteratorLatin1> segment_latin1(diplomat::span<const uint8_t> input) const;
171
172 inline const icu4x::capi::WordSegmenter* AsFFI() const;
173 inline icu4x::capi::WordSegmenter* AsFFI();
174 inline static const icu4x::WordSegmenter* FromFFI(const icu4x::capi::WordSegmenter* ptr);
175 inline static icu4x::WordSegmenter* FromFFI(icu4x::capi::WordSegmenter* ptr);
176 inline static void operator delete(void* ptr);
177private:
178 WordSegmenter() = delete;
179 WordSegmenter(const icu4x::WordSegmenter&) = delete;
180 WordSegmenter(icu4x::WordSegmenter&&) noexcept = delete;
181 WordSegmenter operator=(const icu4x::WordSegmenter&) = delete;
182 WordSegmenter operator=(icu4x::WordSegmenter&&) noexcept = delete;
183 static void operator delete[](void*, size_t) = delete;
184};
185
186} // namespace
187#endif // icu4x_WordSegmenter_D_HPP
Definition diplomat_runtime.hpp:140
Definition diplomat_runtime.hpp:223
Definition DataError.d.hpp:37
Definition DataProvider.d.hpp:40
Definition Locale.d.hpp:33
Definition WordBreakIteratorLatin1.d.hpp:29
Definition WordBreakIteratorUtf16.d.hpp:29
Definition WordBreakIteratorUtf8.d.hpp:29
Definition WordSegmenter.d.hpp:43
static diplomat::result< std::unique_ptr< icu4x::WordSegmenter >, icu4x::DataError > create_lstm_with_content_locale(const icu4x::Locale &locale)
Definition WordSegmenter.hpp:84
static std::unique_ptr< icu4x::WordSegmenter > create_dictionary()
Definition WordSegmenter.hpp:95
std::unique_ptr< icu4x::WordBreakIteratorUtf8 > segment(std::string_view input) const
Definition WordSegmenter.hpp:111
std::unique_ptr< icu4x::WordBreakIteratorUtf16 > segment16(std::u16string_view input) const
Definition WordSegmenter.hpp:117
static diplomat::result< std::unique_ptr< icu4x::WordSegmenter >, icu4x::DataError > create_dictionary_with_content_locale(const icu4x::Locale &locale)
Definition WordSegmenter.hpp:100
static std::unique_ptr< icu4x::WordSegmenter > create_auto()
Definition WordSegmenter.hpp:63
static diplomat::result< std::unique_ptr< icu4x::WordSegmenter >, icu4x::DataError > create_dictionary_with_content_locale_and_provider(const icu4x::DataProvider &provider, const icu4x::Locale &locale)
Definition WordSegmenter.hpp:105
std::unique_ptr< icu4x::WordBreakIteratorLatin1 > segment_latin1(diplomat::span< const uint8_t > input) const
Definition WordSegmenter.hpp:123
static diplomat::result< std::unique_ptr< icu4x::WordSegmenter >, icu4x::DataError > create_lstm_with_content_locale_and_provider(const icu4x::DataProvider &provider, const icu4x::Locale &locale)
Definition WordSegmenter.hpp:89
static diplomat::result< std::unique_ptr< icu4x::WordSegmenter >, icu4x::DataError > create_auto_with_content_locale_and_provider(const icu4x::DataProvider &provider, const icu4x::Locale &locale)
Definition WordSegmenter.hpp:73
static diplomat::result< std::unique_ptr< icu4x::WordSegmenter >, icu4x::DataError > create_auto_with_content_locale(const icu4x::Locale &locale)
Definition WordSegmenter.hpp:68
static std::unique_ptr< icu4x::WordSegmenter > create_lstm()
Definition WordSegmenter.hpp:79
Definition Bidi.d.hpp:14