From 10bcecda1d8953e0e54a9740fd39b8508112ab37 Mon Sep 17 00:00:00 2001
From: Dariusz Rybicki <dariusz@elixxir.io>
Date: Mon, 18 Jul 2022 13:29:33 +0100
Subject: [PATCH] Add ViewConfigurator

---
 Sources/CollectionView/ViewConfigurator.swift | 21 +++++++++++++++++++
 1 file changed, 21 insertions(+)
 create mode 100644 Sources/CollectionView/ViewConfigurator.swift

diff --git a/Sources/CollectionView/ViewConfigurator.swift b/Sources/CollectionView/ViewConfigurator.swift
new file mode 100644
index 00000000..67e0453b
--- /dev/null
+++ b/Sources/CollectionView/ViewConfigurator.swift
@@ -0,0 +1,21 @@
+import UIKit
+
+public struct ViewConfigurator<View: UIView, Model> {
+  public init(configure: @escaping (View, Model) -> Void) {
+    self.configure = configure
+  }
+
+  public var configure: (View, Model) -> Void
+
+  public func callAsFunction(view: View, with model: Model) {
+    configure(view, model)
+  }
+}
+
+#if DEBUG
+extension ViewConfigurator {
+  public static func failing() -> ViewConfigurator {
+    ViewConfigurator { _, _ in fatalError("Not implemented") }
+  }
+}
+#endif
-- 
GitLab