Merge "Use emplace_back in getWordProperty()."
diff --git a/native/jni/src/suggest/policyimpl/dictionary/structure/v2/patricia_trie_policy.cpp b/native/jni/src/suggest/policyimpl/dictionary/structure/v2/patricia_trie_policy.cpp
index 5b2402d..4e795f8 100644
--- a/native/jni/src/suggest/policyimpl/dictionary/structure/v2/patricia_trie_policy.cpp
+++ b/native/jni/src/suggest/policyimpl/dictionary/structure/v2/patricia_trie_policy.cpp
@@ -349,14 +349,14 @@
         // Skip the entry if the entry has been deleted. This never happens for ver2 dicts.
         if (bigramsIt.getBigramPos() != NOT_A_DICT_POS) {
             int word1Probability = NOT_A_PROBABILITY;
-            int word1CodePointCount = getCodePointsAndProbabilityAndReturnCodePointCount(
+            const int word1CodePointCount = getCodePointsAndProbabilityAndReturnCodePointCount(
                     bigramsIt.getBigramPos(), MAX_WORD_LENGTH, bigramWord1CodePoints,
                     &word1Probability);
-            std::vector<int> word1(bigramWord1CodePoints,
+            const std::vector<int> word1(bigramWord1CodePoints,
                     bigramWord1CodePoints + word1CodePointCount);
             const int probability = getProbability(word1Probability, bigramsIt.getProbability());
-            bigrams.push_back(WordProperty::BigramProperty(&word1, probability,
-                    NOT_A_TIMESTAMP /* timestamp */, 0 /* level */, 0 /* count */));
+            bigrams.emplace_back(&word1, probability,
+                    NOT_A_TIMESTAMP /* timestamp */, 0 /* level */, 0 /* count */);
         }
     }
     // Fetch shortcut information.
@@ -372,12 +372,11 @@
             hasNext = ShortcutListReadingUtils::hasNext(shortcutFlags);
             const int shortcutTargetLength = ShortcutListReadingUtils::readShortcutTarget(
                     mDictRoot, MAX_WORD_LENGTH, shortcutTargetCodePoints, &shortcutPos);
-            std::vector<int> shortcutTarget(shortcutTargetCodePoints,
+            const std::vector<int> shortcutTarget(shortcutTargetCodePoints,
                     shortcutTargetCodePoints + shortcutTargetLength);
             const int shortcutProbability =
                     ShortcutListReadingUtils::getProbabilityFromFlags(shortcutFlags);
-            shortcuts.push_back(
-                    WordProperty::ShortcutProperty(&shortcutTarget, shortcutProbability));
+            shortcuts.emplace_back(&shortcutTarget, shortcutProbability);
         }
     }
     return WordProperty(&codePointVector, ptNodeParams.isNotAWord(),
diff --git a/native/jni/src/suggest/policyimpl/dictionary/structure/v4/ver4_patricia_trie_policy.cpp b/native/jni/src/suggest/policyimpl/dictionary/structure/v4/ver4_patricia_trie_policy.cpp
index 88ef7a8..107ddab 100644
--- a/native/jni/src/suggest/policyimpl/dictionary/structure/v4/ver4_patricia_trie_policy.cpp
+++ b/native/jni/src/suggest/policyimpl/dictionary/structure/v4/ver4_patricia_trie_policy.cpp
@@ -382,16 +382,16 @@
             const int codePointCount = getCodePointsAndProbabilityAndReturnCodePointCount(
                     word1TerminalPtNodePos, MAX_WORD_LENGTH, bigramWord1CodePoints,
                     &word1Probability);
-            std::vector<int> word1(bigramWord1CodePoints,
+            const std::vector<int> word1(bigramWord1CodePoints,
                     bigramWord1CodePoints + codePointCount);
             const HistoricalInfo *const historicalInfo = bigramEntry.getHistoricalInfo();
             const int probability = bigramEntry.hasHistoricalInfo() ?
                     ForgettingCurveUtils::decodeProbability(
                             bigramEntry.getHistoricalInfo(), mHeaderPolicy) :
                     getProbability(word1Probability, bigramEntry.getProbability());
-            bigrams.push_back(WordProperty::BigramProperty(&word1, probability,
+            bigrams.emplace_back(&word1, probability,
                     historicalInfo->getTimeStamp(), historicalInfo->getLevel(),
-                    historicalInfo->getCount()));
+                    historicalInfo->getCount());
         }
     }
     // Fetch shortcut information.
@@ -407,8 +407,8 @@
             int shortcutProbability = NOT_A_PROBABILITY;
             shortcutDictContent->getShortcutEntryAndAdvancePosition(MAX_WORD_LENGTH, shortcutTarget,
                     &shortcutTargetLength, &shortcutProbability, &hasNext, &shortcutPos);
-            std::vector<int> target(shortcutTarget, shortcutTarget + shortcutTargetLength);
-            shortcuts.push_back(WordProperty::ShortcutProperty(&target, shortcutProbability));
+            const std::vector<int> target(shortcutTarget, shortcutTarget + shortcutTargetLength);
+            shortcuts.emplace_back(&target, shortcutProbability);
         }
     }
     return WordProperty(&codePointVector, ptNodeParams.isNotAWord(),