diff options
Diffstat (limited to 'native/jni/src/suggest/core/dicnode')
-rw-r--r-- | native/jni/src/suggest/core/dicnode/dic_node.h | 13 | ||||
-rw-r--r-- | native/jni/src/suggest/core/dicnode/dic_node_vector.h | 5 |
2 files changed, 10 insertions, 8 deletions
diff --git a/native/jni/src/suggest/core/dicnode/dic_node.h b/native/jni/src/suggest/core/dicnode/dic_node.h index 7777de7d1..2618d7c27 100644 --- a/native/jni/src/suggest/core/dicnode/dic_node.h +++ b/native/jni/src/suggest/core/dicnode/dic_node.h @@ -26,6 +26,7 @@ #include "suggest/core/dictionary/error_type_utils.h" #include "suggest/core/layout/proximity_info_state.h" #include "utils/char_utils.h" +#include "utils/int_array_view.h" #if DEBUG_DICT #define LOGI_SHOW_ADD_COST_PROP \ @@ -136,17 +137,17 @@ class DicNode { } void initAsChild(const DicNode *const dicNode, const int childrenPtNodeArrayPos, - const int unigramProbability, const int wordId, const uint16_t mergedNodeCodePointCount, - const int *const mergedNodeCodePoints) { + const int unigramProbability, const int wordId, + const CodePointArrayView mergedCodePoints) { uint16_t newDepth = static_cast<uint16_t>(dicNode->getNodeCodePointCount() + 1); mIsCachedForNextSuggestion = dicNode->mIsCachedForNextSuggestion; const uint16_t newLeavingDepth = static_cast<uint16_t>( - dicNode->mDicNodeProperties.getLeavingDepth() + mergedNodeCodePointCount); - mDicNodeProperties.init(childrenPtNodeArrayPos, mergedNodeCodePoints[0], + dicNode->mDicNodeProperties.getLeavingDepth() + mergedCodePoints.size()); + mDicNodeProperties.init(childrenPtNodeArrayPos, mergedCodePoints[0], unigramProbability, wordId, newDepth, newLeavingDepth, dicNode->mDicNodeProperties.getPrevWordIds()); - mDicNodeState.init(&dicNode->mDicNodeState, mergedNodeCodePointCount, - mergedNodeCodePoints); + mDicNodeState.init(&dicNode->mDicNodeState, mergedCodePoints.size(), + mergedCodePoints.data()); PROF_NODE_COPY(&dicNode->mProfiler, mProfiler); } diff --git a/native/jni/src/suggest/core/dicnode/dic_node_vector.h b/native/jni/src/suggest/core/dicnode/dic_node_vector.h index fa491dcf9..44bf3febd 100644 --- a/native/jni/src/suggest/core/dicnode/dic_node_vector.h +++ b/native/jni/src/suggest/core/dicnode/dic_node_vector.h @@ -21,6 +21,7 @@ #include "defines.h" #include "suggest/core/dicnode/dic_node.h" +#include "utils/int_array_view.h" namespace latinime { @@ -60,11 +61,11 @@ class DicNodeVector { void pushLeavingChild(const DicNode *const dicNode, const int childrenPtNodeArrayPos, const int unigramProbability, const int wordId, - const uint16_t mergedNodeCodePointCount, const int *const mergedNodeCodePoints) { + const CodePointArrayView mergedCodePoints) { ASSERT(!mLock); mDicNodes.emplace_back(); mDicNodes.back().initAsChild(dicNode, childrenPtNodeArrayPos, unigramProbability, - wordId, mergedNodeCodePointCount, mergedNodeCodePoints); + wordId, mergedCodePoints); } DicNode *operator[](const int id) { |