From a3bce280656505e049e6e047abd83752cb7f2931 Mon Sep 17 00:00:00 2001 From: neon443 <69979447+neon443@users.noreply.github.com> Date: Mon, 3 Nov 2025 16:39:46 +0000 Subject: [PATCH] tiny optimisation in insert(word: String) --- StickerSlack/Emoji/Trie.swift | 3 ++- StickerSlack/EmojiHoarder.swift | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/StickerSlack/Emoji/Trie.swift b/StickerSlack/Emoji/Trie.swift index aa9bbb6..2a8875a 100644 --- a/StickerSlack/Emoji/Trie.swift +++ b/StickerSlack/Emoji/Trie.swift @@ -21,6 +21,7 @@ class Trie: ObservableObject { let word = word.lowercased() var currentNode = root let indices = word.indices + let last = indices.last for i in indices { let char = word[i] @@ -30,7 +31,7 @@ class Trie: ObservableObject { currentNode.children[char] = TrieNode() currentNode = currentNode.children[char]! } - if i == indices.last { + if i == last { currentNode.isEndOfWord = true } } diff --git a/StickerSlack/EmojiHoarder.swift b/StickerSlack/EmojiHoarder.swift index 7b5108f..6e8c32e 100644 --- a/StickerSlack/EmojiHoarder.swift +++ b/StickerSlack/EmojiHoarder.swift @@ -18,9 +18,9 @@ class EmojiHoarder: ObservableObject { private let decoder = JSONDecoder() @Published var emojis: [Emoji] = [] + @Published var trie: Trie = Trie() @Published var filteredEmojis: [String] = [] - @Published var prefix: Int = 100 init(localOnly: Bool = false) { let localDB = loadLocalDB()