23#include <unicode/brkiter.h>
24#include <unicode/utext.h>
26#include <unordered_map>
30#define LOAD_CHARACTER_BREAKITERATOR 0
31#define LOAD_WORD_BREAKITERATOR 1
32#define LOAD_SENTENCE_BREAKITERATOR 2
33#define LOAD_LINE_BREAKITERATOR 3
44 const css::lang::Locale& nLocale, sal_Int16 nCharacterIteratorMode, sal_Int32
nCount,
45 sal_Int32& nDone )
override;
47 const css::lang::Locale& rLocale, sal_Int16 nCharacterIteratorMode, sal_Int32
nCount,
48 sal_Int32& nDone )
override;
50 virtual css::i18n::Boundary SAL_CALL
previousWord(
const OUString&
Text, sal_Int32 nStartPos,
51 const css::lang::Locale& nLocale, sal_Int16 WordType)
override;
52 virtual css::i18n::Boundary SAL_CALL
nextWord(
const OUString&
Text, sal_Int32 nStartPos,
53 const css::lang::Locale& nLocale, sal_Int16 WordType)
override;
55 const css::lang::Locale& nLocale, sal_Int16 WordType,
sal_Bool bDirection )
override;
58 const css::lang::Locale& nLocale )
override;
59 virtual sal_Int32 SAL_CALL
endOfSentence(
const OUString&
Text, sal_Int32 nStartPos,
60 const css::lang::Locale& nLocale )
override;
62 virtual css::i18n::LineBreakResults SAL_CALL
getLineBreak(
const OUString&
Text, sal_Int32 nStartPos,
63 const css::lang::Locale& nLocale, sal_Int32 nMinBreakPos,
64 const css::i18n::LineBreakHyphenationOptions& hOptions,
65 const css::i18n::LineBreakUserOptions& bOptions )
override;
100 sal_Int16 rBreakType, sal_Int16 rWordType,
const char* name,
const OUString& rText);
103 typedef std::unordered_map< OString, std::shared_ptr< BI_ValueData > >
BIMap;
virtual sal_Int32 SAL_CALL previousCharacters(const OUString &Text, sal_Int32 nStartPos, const css::lang::Locale &nLocale, sal_Int16 nCharacterIteratorMode, sal_Int32 nCount, sal_Int32 &nDone) override
void loadICUBreakIterator(const css::lang::Locale &rLocale, sal_Int16 rBreakType, sal_Int16 rWordType, const char *name, const OUString &rText)
virtual sal_Bool SAL_CALL supportsService(const OUString &ServiceName) override
virtual ~BreakIterator_Unicode() override
virtual sal_Int32 SAL_CALL nextCharacters(const OUString &Text, sal_Int32 nStartPos, const css::lang::Locale &rLocale, sal_Int16 nCharacterIteratorMode, sal_Int32 nCount, sal_Int32 &nDone) override
virtual css::i18n::LineBreakResults SAL_CALL getLineBreak(const OUString &Text, sal_Int32 nStartPos, const css::lang::Locale &nLocale, sal_Int32 nMinBreakPos, const css::i18n::LineBreakHyphenationOptions &hOptions, const css::i18n::LineBreakUserOptions &bOptions) override
struct i18npool::BreakIterator_Unicode::BI_Data * icuBI
struct i18npool::BreakIterator_Unicode::BI_Data sentence
virtual sal_Int32 SAL_CALL endOfSentence(const OUString &Text, sal_Int32 nStartPos, const css::lang::Locale &nLocale) override
struct i18npool::BreakIterator_Unicode::BI_Data line
virtual OUString SAL_CALL getImplementationName() override
const char * cBreakIterator
virtual css::i18n::Boundary SAL_CALL getWordBoundary(const OUString &Text, sal_Int32 nPos, const css::lang::Locale &nLocale, sal_Int16 WordType, sal_Bool bDirection) override
virtual css::i18n::Boundary SAL_CALL previousWord(const OUString &Text, sal_Int32 nStartPos, const css::lang::Locale &nLocale, sal_Int16 WordType) override
std::unordered_map< OString, std::shared_ptr< BI_ValueData > > BIMap
virtual css::i18n::Boundary SAL_CALL nextWord(const OUString &Text, sal_Int32 nStartPos, const css::lang::Locale &nLocale, sal_Int16 WordType) override
struct i18npool::BreakIterator_Unicode::BI_Data character
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override
virtual sal_Int32 SAL_CALL beginOfSentence(const OUString &Text, sal_Int32 nStartPos, const css::lang::Locale &nLocale) override
Constant values shared between i18npool and, for example, the number formatter.
std::shared_ptr< BI_ValueData > mpValue
std::shared_ptr< icu::BreakIterator > mpBreakIterator