From a48008d553925419773e3c3a2c67ec51eb67d3ab Mon Sep 17 00:00:00 2001 From: Janne Koschinski <janne@kuschku.de> Date: Sat, 26 May 2018 00:43:57 +0200 Subject: [PATCH] Improve performance and clarity of hostmask splitter --- .../libquassel/util/irc/HostmaskHelper.kt | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/lib/src/main/java/de/kuschku/libquassel/util/irc/HostmaskHelper.kt b/lib/src/main/java/de/kuschku/libquassel/util/irc/HostmaskHelper.kt index 1b6c3dbd2..c4fff7431 100644 --- a/lib/src/main/java/de/kuschku/libquassel/util/irc/HostmaskHelper.kt +++ b/lib/src/main/java/de/kuschku/libquassel/util/irc/HostmaskHelper.kt @@ -20,20 +20,15 @@ package de.kuschku.libquassel.util.irc object HostmaskHelper { - fun nick(mask: String): String { - val (nick, _, _) = split(mask) - return nick - } + fun nick(mask: String) = mask + .substringBefore('!', missingDelimiterValue = mask) - fun user(mask: String): String { - val (_, user, _) = split(mask) - return user - } + fun user(mask: String) = mask + .substringBeforeLast('@', missingDelimiterValue = mask) + .substringAfter('!', missingDelimiterValue = "") - fun host(mask: String): String { - val (_, _, host) = split(mask) - return host - } + fun host(mask: String) = mask + .substringAfterLast('@', missingDelimiterValue = "") fun split(mask: String): Triple<String, String, String> { val userPartHostSplit = mask.split("@", limit = 2) -- GitLab