diff --git a/lib/Epub/Epub/hyphenation/EnglishHyphenator.cpp b/lib/Epub/Epub/hyphenation/EnglishHyphenator.cpp index 3bb15e62..3cf64c87 100644 --- a/lib/Epub/Epub/hyphenation/EnglishHyphenator.cpp +++ b/lib/Epub/Epub/hyphenation/EnglishHyphenator.cpp @@ -343,8 +343,6 @@ const EnglishHyphenator& EnglishHyphenator::instance() { return instance; } -Script EnglishHyphenator::script() const { return Script::Latin; } - std::vector EnglishHyphenator::breakIndexes(const std::vector& cps) const { return englishBreakIndexes(cps); } diff --git a/lib/Epub/Epub/hyphenation/EnglishHyphenator.h b/lib/Epub/Epub/hyphenation/EnglishHyphenator.h index 927b6d9a..c3bf12a1 100644 --- a/lib/Epub/Epub/hyphenation/EnglishHyphenator.h +++ b/lib/Epub/Epub/hyphenation/EnglishHyphenator.h @@ -7,7 +7,6 @@ class EnglishHyphenator final : public LanguageHyphenator { public: static const EnglishHyphenator& instance(); - Script script() const override; std::vector breakIndexes(const std::vector& cps) const override; private: diff --git a/lib/Epub/Epub/hyphenation/HyphenationCommon.h b/lib/Epub/Epub/hyphenation/HyphenationCommon.h index 3fa192cd..0e68ef04 100644 --- a/lib/Epub/Epub/hyphenation/HyphenationCommon.h +++ b/lib/Epub/Epub/hyphenation/HyphenationCommon.h @@ -9,8 +9,6 @@ struct CodepointInfo { size_t byteOffset; }; -enum class Script { Latin, Cyrillic, Mixed }; - // Minimum number of codepoints required in prefix and suffix for hyphenation. constexpr size_t MIN_PREFIX_CP = 2; constexpr size_t MIN_SUFFIX_CP = 2; diff --git a/lib/Epub/Epub/hyphenation/Hyphenator.cpp b/lib/Epub/Epub/hyphenation/Hyphenator.cpp index 9bac28b7..4f22cafc 100644 --- a/lib/Epub/Epub/hyphenation/Hyphenator.cpp +++ b/lib/Epub/Epub/hyphenation/Hyphenator.cpp @@ -13,25 +13,6 @@ namespace { -// Central registry for language-specific hyphenators supported on device. -const std::array& registeredHyphenators() { - static const std::array hyphenators = { - &EnglishHyphenator::instance(), - &RussianHyphenator::instance(), - }; - return hyphenators; -} - -// Finds the hyphenator matching the detected script. -const LanguageHyphenator* hyphenatorForScript(const Script script) { - for (const auto* hyphenator : registeredHyphenators()) { - if (hyphenator->script() == script) { - return hyphenator; - } - } - return nullptr; -} - // Maps a BCP-47 language tag to a language-specific hyphenator. const LanguageHyphenator* hyphenatorForLanguage(const std::string& langTag) { if (langTag.empty()) return nullptr; @@ -109,7 +90,6 @@ std::vector collectBreakIndexes(const std::vector& cps) { return {}; } - // Use cached hyphenator to avoid repeated language lookups. if (const auto* hyphenator = cachedHyphenator()) { auto indexes = hyphenator->breakIndexes(cps); return indexes; diff --git a/lib/Epub/Epub/hyphenation/LanguageHyphenator.h b/lib/Epub/Epub/hyphenation/LanguageHyphenator.h index e8f7d9c3..737d6129 100644 --- a/lib/Epub/Epub/hyphenation/LanguageHyphenator.h +++ b/lib/Epub/Epub/hyphenation/LanguageHyphenator.h @@ -7,6 +7,5 @@ class LanguageHyphenator { public: virtual ~LanguageHyphenator() = default; - virtual Script script() const = 0; virtual std::vector breakIndexes(const std::vector& cps) const = 0; }; diff --git a/lib/Epub/Epub/hyphenation/RussianHyphenator.cpp b/lib/Epub/Epub/hyphenation/RussianHyphenator.cpp index 2efb6638..d7fd0342 100644 --- a/lib/Epub/Epub/hyphenation/RussianHyphenator.cpp +++ b/lib/Epub/Epub/hyphenation/RussianHyphenator.cpp @@ -405,8 +405,6 @@ const RussianHyphenator& RussianHyphenator::instance() { return instance; } -Script RussianHyphenator::script() const { return Script::Cyrillic; } - std::vector RussianHyphenator::breakIndexes(const std::vector& cps) const { return russianBreakIndexes(cps); } diff --git a/lib/Epub/Epub/hyphenation/RussianHyphenator.h b/lib/Epub/Epub/hyphenation/RussianHyphenator.h index 164335ef..74744ae9 100644 --- a/lib/Epub/Epub/hyphenation/RussianHyphenator.h +++ b/lib/Epub/Epub/hyphenation/RussianHyphenator.h @@ -7,7 +7,6 @@ class RussianHyphenator final : public LanguageHyphenator { public: static const RussianHyphenator& instance(); - Script script() const override; std::vector breakIndexes(const std::vector& cps) const override; private: