diff --git a/emojify/src/main/java/io/wax911/emojify/util/tree/Node.kt b/emojify/src/main/java/io/wax911/emojify/util/tree/Node.kt new file mode 100644 index 00000000..da2698c8 --- /dev/null +++ b/emojify/src/main/java/io/wax911/emojify/util/tree/Node.kt @@ -0,0 +1,30 @@ +package io.wax911.emojify.util.tree + +import io.wax911.emojify.model.Emoji +import java.util.HashMap + +/** + * Node representation of an emoji tree + * + * @see io.wax911.emojify.util.EmojiTree + */ +class Node { + private val children = HashMap() + + internal var emoji: Emoji? = null + + internal val isEndOfEmoji: Boolean + get() = emoji != null + + internal fun hasChild(child: Char): Boolean { + return children.containsKey(child) + } + + internal fun addChild(child: Char) { + children[child] = Node() + } + + internal fun getChild(child: Char): Node? { + return children[child] + } +} \ No newline at end of file