From d9dc7acd34bf9f06f15fe3263d09544840adb3a2 Mon Sep 17 00:00:00 2001 From: Sebastian Crane Date: Sat, 26 Feb 2022 23:18:19 +0000 Subject: [PATCH] Refactor response functions to use 'as->' macro Signed-off-by: Sebastian Crane --- src/bot.clj | 28 +++++++++++----------------- 1 file changed, 11 insertions(+), 17 deletions(-) diff --git a/src/bot.clj b/src/bot.clj index 59928b6..59ce976 100644 --- a/src/bot.clj +++ b/src/bot.clj @@ -13,25 +13,19 @@ (defn sort-case-insensitive [coll] (sort #(apply compare (map str/lower-case %&)) coll)) -(defn sorted-players-of-game [state game] - (->> game - (keywordise-game) - (game/get-players-of-game state) - (sort-case-insensitive))) - -(defn match-string [& {:keys [state game]}] - (str "Anyone ready for " - game - "? " - (str/join " " (sorted-players-of-game state game)))) +(defn match-string [& {:keys [state game player]}] + (as-> (keywordise-game game) x + (game/get-players-of-game state x) + (sort-case-insensitive x) + (str/join " " x) + (str "Anyone ready for " game "? " x))) (defn list-players-string [& {:keys [state game]}] - (let [players (str/join (map #(str " _" % "_") - (sorted-players-of-game state game)))] - (str "Players of " - game - ":" - players))) + (as-> (keywordise-game game) x + (game/get-players-of-game state x) + (sort-case-insensitive x) + (map #(str " _" % "_") x) + (apply str "Players of " game ":" x))) (defn add-player-string [& {:keys [game player]}] (str "Added "