From 5f1acf3c66d9e128883a7a54409a08a42ab9ea05 Mon Sep 17 00:00:00 2001 From: Stephen Blott Date: Fri, 18 Mar 2016 06:12:55 +0000 Subject: Add Utils.makeIdempotent. The intention is to use this to clean up some of the initialisation sequences in the front end. --- lib/utils.coffee | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'lib') diff --git a/lib/utils.coffee b/lib/utils.coffee index 9969811a..31f4bec6 100644 --- a/lib/utils.coffee +++ b/lib/utils.coffee @@ -236,6 +236,10 @@ Utils = # Like Nodejs's nextTick. nextTick: (func) -> @setTimeout 0, func + # Make an idempotent function. + makeIdempotent: (func) -> + (args...) -> ([previousFunc, func] = [func, null])[0]? args... + # Utility for parsing and using the custom search-engine configuration. We re-use the previous parse if the # search-engine configuration is unchanged. SearchEngines = -- cgit v1.2.3