From 56d3acf88d83fe189adb08f904310ee44dcc6bf9 Mon Sep 17 00:00:00 2001 From: Maxwell Date: Thu, 18 Jun 2020 20:42:31 +0200 Subject: [PATCH] Add Node to seperate class See commit: aecf003153ed3ae6b4a10c4229312e18641e9506 --- .../java/io/wax911/emojify/util/tree/Node.kt | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 emojify/src/main/java/io/wax911/emojify/util/tree/Node.kt 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