From 62c64e3026c6a408023270b37714e322ce9e1279 Mon Sep 17 00:00:00 2001 From: Max Desiatov Date: Tue, 11 Aug 2020 20:27:24 +0100 Subject: [PATCH] Add void-returning overload to `JSClosure.init` --- Sources/JavaScriptKit/JSFunction.swift | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/Sources/JavaScriptKit/JSFunction.swift b/Sources/JavaScriptKit/JSFunction.swift index 87c38dd38..f3b0c5b22 100644 --- a/Sources/JavaScriptKit/JSFunction.swift +++ b/Sources/JavaScriptKit/JSFunction.swift @@ -82,6 +82,13 @@ public class JSClosure: JSFunctionRef { id = objectRef } + convenience public init(_ body: @escaping ([JSValue]) -> ()) { + self.init { (arguments: [JSValue]) -> JSValue in + body(arguments) + return .undefined + } + } + public func release() { Self.sharedFunctions[hostFuncRef] = nil isReleased = true