mirror of
https://github.com/mii443/mozc.git
synced 2025-08-23 00:25:34 +00:00
Pass DataManager as const& to Rewriter constructors.
#codehealth PiperOrigin-RevId: 723474493
This commit is contained in:
@ -157,7 +157,7 @@ std::string A11yDescriptionRewriter::GetKanaCharacterLabel(
|
||||
}
|
||||
|
||||
A11yDescriptionRewriter::A11yDescriptionRewriter(
|
||||
const DataManager *data_manager)
|
||||
const DataManager &data_manager)
|
||||
: small_letter_set_(
|
||||
{// Small hiragana
|
||||
U'ぁ', U'ぃ', U'ぅ', U'ぇ', U'ぉ', U'ゃ', U'ゅ', U'ょ', U'っ', U'ゎ',
|
||||
@ -177,8 +177,8 @@ A11yDescriptionRewriter::A11yDescriptionRewriter(
|
||||
{U'ッ', U'ツ'},
|
||||
}) {
|
||||
absl::string_view token_array_data, string_array_data;
|
||||
data_manager->GetA11yDescriptionRewriterData(&token_array_data,
|
||||
&string_array_data);
|
||||
data_manager.GetA11yDescriptionRewriterData(&token_array_data,
|
||||
&string_array_data);
|
||||
description_map_ = (token_array_data.empty() || string_array_data.empty())
|
||||
? nullptr
|
||||
: std::make_unique<SerializedDictionary>(
|
||||
|
@ -45,7 +45,7 @@ namespace mozc {
|
||||
|
||||
class A11yDescriptionRewriter : public RewriterInterface {
|
||||
public:
|
||||
explicit A11yDescriptionRewriter(const DataManager *data_manager);
|
||||
explicit A11yDescriptionRewriter(const DataManager &data_manager);
|
||||
|
||||
A11yDescriptionRewriter(const A11yDescriptionRewriter &) = delete;
|
||||
A11yDescriptionRewriter &operator=(const A11yDescriptionRewriter &) = delete;
|
||||
|
@ -54,8 +54,8 @@ void AddCandidateWithValue(const absl::string_view value, Segment *segment) {
|
||||
class A11yDescriptionRewriterTest : public ::testing::Test {
|
||||
protected:
|
||||
A11yDescriptionRewriterTest()
|
||||
: rewriter_(&mock_data_manager_),
|
||||
rewriter_without_data_(&dummy_data_manager_) {}
|
||||
: rewriter_(mock_data_manager_),
|
||||
rewriter_without_data_(dummy_data_manager_) {}
|
||||
|
||||
const RewriterInterface *GetRewriter() { return &rewriter_; }
|
||||
const RewriterInterface *GetRewriterWithoutData() {
|
||||
|
@ -93,9 +93,9 @@ CorrectionRewriter::CorrectionRewriter(
|
||||
|
||||
// static
|
||||
std::unique_ptr<CorrectionRewriter>
|
||||
CorrectionRewriter::CreateCorrectionRewriter(const DataManager *data_manager) {
|
||||
CorrectionRewriter::CreateCorrectionRewriter(const DataManager &data_manager) {
|
||||
absl::string_view value_array_data, error_array_data, correction_array_data;
|
||||
data_manager->GetReadingCorrectionData(&value_array_data, &error_array_data,
|
||||
data_manager.GetReadingCorrectionData(&value_array_data, &error_array_data,
|
||||
&correction_array_data);
|
||||
return std::make_unique<CorrectionRewriter>(
|
||||
value_array_data, error_array_data, correction_array_data);
|
||||
|
@ -48,7 +48,7 @@ class CorrectionRewriter : public RewriterInterface {
|
||||
// default provided by data_manager. The caller takes the ownership of the
|
||||
// instance.
|
||||
static std::unique_ptr<CorrectionRewriter> CreateCorrectionRewriter(
|
||||
const DataManager *data_manager);
|
||||
const DataManager &data_manager);
|
||||
|
||||
CorrectionRewriter(absl::string_view value_array_data,
|
||||
absl::string_view error_array_data,
|
||||
|
@ -129,9 +129,9 @@ bool RewriteNumber(Segment *segment, const Segment::Candidate &candidate) {
|
||||
} // namespace
|
||||
|
||||
FocusCandidateRewriter::FocusCandidateRewriter(
|
||||
const DataManager *data_manager)
|
||||
: pos_matcher_(data_manager->GetPosMatcherData()) {
|
||||
absl::string_view data = data_manager->GetCounterSuffixSortedArray();
|
||||
const DataManager &data_manager)
|
||||
: pos_matcher_(data_manager.GetPosMatcherData()) {
|
||||
absl::string_view data = data_manager.GetCounterSuffixSortedArray();
|
||||
// Data manager is responsible for providing a valid data. Just verify data
|
||||
// in debug build.
|
||||
DCHECK(SerializedStringArray::VerifyData(data));
|
||||
|
@ -47,7 +47,7 @@ struct CounterSuffixEntry;
|
||||
|
||||
class FocusCandidateRewriter : public RewriterInterface {
|
||||
public:
|
||||
explicit FocusCandidateRewriter(const DataManager *data_manager);
|
||||
explicit FocusCandidateRewriter(const DataManager &data_manager);
|
||||
FocusCandidateRewriter(const FocusCandidateRewriter &) = delete;
|
||||
FocusCandidateRewriter &operator=(const FocusCandidateRewriter &) = delete;
|
||||
~FocusCandidateRewriter() override;
|
||||
|
@ -64,7 +64,7 @@ void AddCandidateWithContentValue(Segment *segment,
|
||||
class FocusCandidateRewriterTest : public testing::TestWithTempUserProfile {
|
||||
protected:
|
||||
void SetUp() override {
|
||||
rewriter_ = std::make_unique<FocusCandidateRewriter>(&mock_data_manager_);
|
||||
rewriter_ = std::make_unique<FocusCandidateRewriter>(mock_data_manager_);
|
||||
}
|
||||
|
||||
const RewriterInterface *GetRewriter() { return rewriter_.get(); }
|
||||
|
@ -454,9 +454,9 @@ std::vector<NumberUtil::NumberString> GetNumbersInDefaultOrder(
|
||||
|
||||
} // namespace
|
||||
|
||||
NumberRewriter::NumberRewriter(const DataManager *data_manager)
|
||||
: pos_matcher_(data_manager->GetPosMatcherData()) {
|
||||
absl::string_view data = data_manager->GetCounterSuffixSortedArray();
|
||||
NumberRewriter::NumberRewriter(const DataManager &data_manager)
|
||||
: pos_matcher_(data_manager.GetPosMatcherData()) {
|
||||
absl::string_view data = data_manager.GetCounterSuffixSortedArray();
|
||||
// Data manager is responsible for providing a valid data. Just verify data
|
||||
// in debug build.
|
||||
DCHECK(SerializedStringArray::VerifyData(data));
|
||||
|
@ -46,7 +46,7 @@ namespace mozc {
|
||||
// A rewriter to expand number styles (NumberUtil::NumberString::Style)
|
||||
class NumberRewriter : public RewriterInterface {
|
||||
public:
|
||||
explicit NumberRewriter(const DataManager *data_manager);
|
||||
explicit NumberRewriter(const DataManager &data_manager);
|
||||
NumberRewriter(const NumberRewriter &) = delete;
|
||||
NumberRewriter &operator=(const NumberRewriter &) = delete;
|
||||
~NumberRewriter() override;
|
||||
|
@ -132,7 +132,7 @@ class NumberRewriterTest : public testing::TestWithTempUserProfile {
|
||||
}
|
||||
|
||||
std::unique_ptr<NumberRewriter> CreateNumberRewriter() {
|
||||
return std::make_unique<NumberRewriter>(&mock_data_manager_);
|
||||
return std::make_unique<NumberRewriter>(mock_data_manager_);
|
||||
}
|
||||
|
||||
const testing::MockDataManager mock_data_manager_;
|
||||
|
@ -128,7 +128,7 @@ ABSL_FLAG(bool, use_history_rewriter, false, "Use history rewriter or not.");
|
||||
namespace mozc {
|
||||
|
||||
Rewriter::Rewriter(const engine::Modules &modules) {
|
||||
const DataManager *data_manager = &modules.GetDataManager();
|
||||
const DataManager &data_manager = modules.GetDataManager();
|
||||
const dictionary::DictionaryInterface *dictionary = modules.GetDictionary();
|
||||
const dictionary::PosMatcher &pos_matcher = *modules.GetPosMatcher();
|
||||
const dictionary::PosGroup *pos_group = modules.GetPosGroup();
|
||||
@ -142,11 +142,11 @@ Rewriter::Rewriter(const engine::Modules &modules) {
|
||||
AddRewriter(std::make_unique<TransliterationRewriter>(pos_matcher));
|
||||
AddRewriter(std::make_unique<EnglishVariantsRewriter>(pos_matcher));
|
||||
AddRewriter(std::make_unique<NumberRewriter>(data_manager));
|
||||
AddRewriter(CollocationRewriter::Create(*data_manager));
|
||||
AddRewriter(std::make_unique<SingleKanjiRewriter>(*data_manager));
|
||||
AddRewriter(CollocationRewriter::Create(data_manager));
|
||||
AddRewriter(std::make_unique<SingleKanjiRewriter>(data_manager));
|
||||
AddRewriter(std::make_unique<IvsVariantsRewriter>());
|
||||
AddRewriter(std::make_unique<EmojiRewriter>(*data_manager));
|
||||
AddRewriter(EmoticonRewriter::CreateFromDataManager(*data_manager));
|
||||
AddRewriter(std::make_unique<EmojiRewriter>(data_manager));
|
||||
AddRewriter(EmoticonRewriter::CreateFromDataManager(data_manager));
|
||||
AddRewriter(std::make_unique<CalculatorRewriter>());
|
||||
AddRewriter(std::make_unique<SymbolRewriter>(data_manager));
|
||||
AddRewriter(std::make_unique<UnicodeRewriter>());
|
||||
@ -178,10 +178,10 @@ Rewriter::Rewriter(const engine::Modules &modules) {
|
||||
#endif // MOZC_USAGE_REWRITER
|
||||
|
||||
AddRewriter(
|
||||
std::make_unique<VersionRewriter>(data_manager->GetDataVersion()));
|
||||
std::make_unique<VersionRewriter>(data_manager.GetDataVersion()));
|
||||
AddRewriter(CorrectionRewriter::CreateCorrectionRewriter(data_manager));
|
||||
AddRewriter(std::make_unique<T13nPromotionRewriter>());
|
||||
AddRewriter(std::make_unique<EnvironmentalFilterRewriter>(*data_manager));
|
||||
AddRewriter(std::make_unique<EnvironmentalFilterRewriter>(data_manager));
|
||||
AddRewriter(std::make_unique<RemoveRedundantCandidateRewriter>());
|
||||
AddRewriter(std::make_unique<OrderRewriter>());
|
||||
AddRewriter(std::make_unique<A11yDescriptionRewriter>(data_manager));
|
||||
|
@ -369,9 +369,9 @@ SymbolRewriter::CheckResizeSegmentsRequest(const ConversionRequest &request,
|
||||
return resize_request;
|
||||
}
|
||||
|
||||
SymbolRewriter::SymbolRewriter(const DataManager *data_manager) {
|
||||
SymbolRewriter::SymbolRewriter(const DataManager &data_manager) {
|
||||
absl::string_view token_array_data, string_array_data;
|
||||
data_manager->GetSymbolRewriterData(&token_array_data, &string_array_data);
|
||||
data_manager.GetSymbolRewriterData(&token_array_data, &string_array_data);
|
||||
DCHECK(SerializedDictionary::VerifyData(token_array_data, string_array_data));
|
||||
dictionary_ = std::make_unique<SerializedDictionary>(token_array_data,
|
||||
string_array_data);
|
||||
|
@ -50,7 +50,7 @@ class Segments;
|
||||
|
||||
class SymbolRewriter : public RewriterInterface {
|
||||
public:
|
||||
explicit SymbolRewriter(const DataManager *data_manager);
|
||||
explicit SymbolRewriter(const DataManager &data_manager);
|
||||
~SymbolRewriter() override = default;
|
||||
|
||||
int capability(const ConversionRequest &request) const override;
|
||||
|
@ -115,7 +115,7 @@ class SymbolRewriterTest : public testing::TestWithTempUserProfile {
|
||||
// TODO(toshiyuki): Modify symbol rewriter so that we can use symbol dictionary
|
||||
// for testing.
|
||||
TEST_F(SymbolRewriterTest, CheckResizeSegmentsRequestTest) {
|
||||
SymbolRewriter symbol_rewriter(data_manager_.get());
|
||||
SymbolRewriter symbol_rewriter(*data_manager_);
|
||||
const ConversionRequest request;
|
||||
|
||||
{
|
||||
@ -149,7 +149,7 @@ TEST_F(SymbolRewriterTest, CheckResizeSegmentsRequestTest) {
|
||||
}
|
||||
|
||||
TEST_F(SymbolRewriterTest, TriggerRewriteEachTest) {
|
||||
SymbolRewriter symbol_rewriter(data_manager_.get());
|
||||
SymbolRewriter symbol_rewriter(*data_manager_);
|
||||
const ConversionRequest request;
|
||||
{
|
||||
Segments segments;
|
||||
@ -164,7 +164,7 @@ TEST_F(SymbolRewriterTest, TriggerRewriteEachTest) {
|
||||
}
|
||||
|
||||
TEST_F(SymbolRewriterTest, HentaiganaSymbolTest) {
|
||||
SymbolRewriter symbol_rewriter(data_manager_.get());
|
||||
SymbolRewriter symbol_rewriter(*data_manager_);
|
||||
const ConversionRequest request;
|
||||
{
|
||||
Segments segments;
|
||||
@ -189,7 +189,7 @@ TEST_F(SymbolRewriterTest, HentaiganaSymbolTest) {
|
||||
}
|
||||
|
||||
TEST_F(SymbolRewriterTest, TriggerRewriteDescriptionTest) {
|
||||
SymbolRewriter symbol_rewriter(data_manager_.get());
|
||||
SymbolRewriter symbol_rewriter(*data_manager_);
|
||||
const ConversionRequest request;
|
||||
{
|
||||
Segments segments;
|
||||
@ -202,7 +202,7 @@ TEST_F(SymbolRewriterTest, TriggerRewriteDescriptionTest) {
|
||||
}
|
||||
|
||||
TEST_F(SymbolRewriterTest, InsertAfterSingleKanjiAndT13n) {
|
||||
SymbolRewriter symbol_rewriter(data_manager_.get());
|
||||
SymbolRewriter symbol_rewriter(*data_manager_);
|
||||
const ConversionRequest request;
|
||||
{
|
||||
Segments segments;
|
||||
@ -236,7 +236,7 @@ TEST_F(SymbolRewriterTest, InsertAfterSingleKanjiAndT13n) {
|
||||
}
|
||||
|
||||
TEST_F(SymbolRewriterTest, InsertSymbolsPositionMobileSymbolKey) {
|
||||
SymbolRewriter symbol_rewriter(data_manager_.get());
|
||||
SymbolRewriter symbol_rewriter(*data_manager_);
|
||||
commands::Request command_request;
|
||||
request_test_util::FillMobileRequest(&command_request);
|
||||
const ConversionRequest request =
|
||||
@ -260,7 +260,7 @@ TEST_F(SymbolRewriterTest, InsertSymbolsPositionMobileSymbolKey) {
|
||||
}
|
||||
|
||||
TEST_F(SymbolRewriterTest, InsertSymbolsPositionMobileAlphabetKey) {
|
||||
SymbolRewriter symbol_rewriter(data_manager_.get());
|
||||
SymbolRewriter symbol_rewriter(*data_manager_);
|
||||
commands::Request command_request;
|
||||
request_test_util::FillMobileRequest(&command_request);
|
||||
const ConversionRequest request =
|
||||
@ -286,7 +286,7 @@ TEST_F(SymbolRewriterTest, InsertSymbolsPositionMobileAlphabetKey) {
|
||||
}
|
||||
|
||||
TEST_F(SymbolRewriterTest, SetKey) {
|
||||
SymbolRewriter symbol_rewriter(data_manager_.get());
|
||||
SymbolRewriter symbol_rewriter(*data_manager_);
|
||||
Segments segments;
|
||||
const ConversionRequest request;
|
||||
|
||||
@ -308,7 +308,7 @@ TEST_F(SymbolRewriterTest, SetKey) {
|
||||
|
||||
TEST_F(SymbolRewriterTest, MobileEnvironmentTest) {
|
||||
commands::Request request;
|
||||
SymbolRewriter rewriter(data_manager_.get());
|
||||
SymbolRewriter rewriter(*data_manager_);
|
||||
|
||||
{
|
||||
request.set_mixed_conversion(true);
|
||||
@ -326,7 +326,7 @@ TEST_F(SymbolRewriterTest, MobileEnvironmentTest) {
|
||||
}
|
||||
|
||||
TEST_F(SymbolRewriterTest, ExpandSpace) {
|
||||
SymbolRewriter symbol_rewriter(data_manager_.get());
|
||||
SymbolRewriter symbol_rewriter(*data_manager_);
|
||||
Segments segments;
|
||||
const ConversionRequest request;
|
||||
|
||||
@ -361,7 +361,7 @@ TEST_F(SymbolRewriterTest, ExpandSpace) {
|
||||
}
|
||||
|
||||
TEST_F(SymbolRewriterTest, InvalidSizeOfSegments) {
|
||||
const SymbolRewriter rewriter(data_manager_.get());
|
||||
const SymbolRewriter rewriter(*data_manager_);
|
||||
|
||||
// Valid case: segment size is 1.
|
||||
{
|
||||
@ -389,7 +389,7 @@ TEST_F(SymbolRewriterTest, InvalidSizeOfSegments) {
|
||||
}
|
||||
|
||||
TEST_F(SymbolRewriterTest, ResizeSegmentFailureIsNotFatal) {
|
||||
const SymbolRewriter rewriter(data_manager_.get());
|
||||
const SymbolRewriter rewriter(*data_manager_);
|
||||
|
||||
Segments segments;
|
||||
const ConversionRequest request;
|
||||
|
@ -53,9 +53,9 @@ namespace mozc {
|
||||
|
||||
using ::mozc::dictionary::DictionaryInterface;
|
||||
|
||||
UsageRewriter::UsageRewriter(const DataManager *data_manager,
|
||||
UsageRewriter::UsageRewriter(const DataManager &data_manager,
|
||||
const DictionaryInterface *dictionary)
|
||||
: pos_matcher_(data_manager->GetPosMatcherData()),
|
||||
: pos_matcher_(data_manager.GetPosMatcherData()),
|
||||
dictionary_(dictionary),
|
||||
base_conjugation_suffix_(nullptr) {
|
||||
absl::string_view base_conjugation_suffix_data;
|
||||
@ -63,7 +63,7 @@ UsageRewriter::UsageRewriter(const DataManager *data_manager,
|
||||
absl::string_view conjugation_suffix_index_data;
|
||||
absl::string_view usage_items_data;
|
||||
absl::string_view string_array_data;
|
||||
data_manager->GetUsageRewriterData(
|
||||
data_manager.GetUsageRewriterData(
|
||||
&base_conjugation_suffix_data, &conjugation_suffix_data,
|
||||
&conjugation_suffix_index_data, &usage_items_data, &string_array_data);
|
||||
base_conjugation_suffix_ =
|
||||
|
@ -53,7 +53,7 @@ namespace mozc {
|
||||
|
||||
class UsageRewriter : public RewriterInterface {
|
||||
public:
|
||||
UsageRewriter(const DataManager *data_manager,
|
||||
UsageRewriter(const DataManager &data_manager,
|
||||
const dictionary::DictionaryInterface *dictionary);
|
||||
~UsageRewriter() override = default;
|
||||
bool Rewrite(const ConversionRequest &request,
|
||||
|
@ -117,11 +117,11 @@ class UsageRewriterTest : public testing::TestWithTempUserProfile {
|
||||
}
|
||||
|
||||
UsageRewriter *CreateUsageRewriter() const {
|
||||
return new UsageRewriter(data_manager_.get(), user_dictionary_.get());
|
||||
return new UsageRewriter(*data_manager_, user_dictionary_.get());
|
||||
}
|
||||
|
||||
UsageRewriter *CreateUsageRewriterWithTestDataManager() const {
|
||||
return new UsageRewriter(test_data_manager_.get(), user_dictionary_.get());
|
||||
return new UsageRewriter(*test_data_manager_, user_dictionary_.get());
|
||||
}
|
||||
|
||||
static ConversionRequest ConvReq(const config::Config &config,
|
||||
|
@ -163,7 +163,7 @@ class UserSegmentHistoryRewriterTest : public testing::TestWithTempUserProfile {
|
||||
const PosGroup &pos_group() const { return *pos_group_; }
|
||||
|
||||
NumberRewriter *CreateNumberRewriter() const {
|
||||
return new NumberRewriter(&mock_data_manager_);
|
||||
return new NumberRewriter(mock_data_manager_);
|
||||
}
|
||||
|
||||
UserSegmentHistoryRewriter *CreateUserSegmentHistoryRewriter() const {
|
||||
|
Reference in New Issue
Block a user