Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 12efad3d authored by Jean Chalard's avatar Jean Chalard
Browse files

Some more obvious optimizations

The speedup is about 15%

Bug: 6394357
Change-Id: Ibd57363d9d793206dd916d8927366db4192083b6
parent 47db0be7
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -507,21 +507,21 @@ public class FusionDictionary implements Iterable<Word> {
     */
    public static CharGroup findWordInTree(Node node, final String s) {
        int index = 0;
        final StringBuilder checker = new StringBuilder();
        final StringBuilder checker = DBG ? new StringBuilder() : null;

        CharGroup currentGroup;
        do {
            int indexOfGroup = findIndexOfChar(node, s.codePointAt(index));
            if (CHARACTER_NOT_FOUND == indexOfGroup) return null;
            currentGroup = node.mData.get(indexOfGroup);
            checker.append(new String(currentGroup.mChars, 0, currentGroup.mChars.length));
            if (DBG) checker.append(new String(currentGroup.mChars, 0, currentGroup.mChars.length));
            index += currentGroup.mChars.length;
            if (index < s.length()) {
                node = currentGroup.mChildren;
            }
        } while (null != node && index < s.length());

        if (!s.equals(checker.toString())) return null;
        if (DBG && !s.equals(checker.toString())) return null;
        return currentGroup;
    }