Best Quick code snippet using for.configure
PilgrimAssembly.swift
Source:PilgrimAssembly.swift  
...50    private(set) var sharedInstances: [String: Any] = [:]51    private(set) var weakSharedInstances: [String: Any] = [:]52    private(set) var scopedInstances: [String: Any] = [:]53    private var instanceStack: [InstanceKey] = []54    private var configureStack: [() -> ()] = []55    private var requestDepth = 056    required public init() {57        isActivated = true58        makeInstanceInjectable(self)59        makeBindings()60    }61    open func makeBindings() -> Void {62    }63    public final func factoryFor(key: String) -> (() -> Any)? {64        bindings[key]65    }66    public final func shared<T>(name: String = #function, factory: () -> T, configure: ((T) -> Void)? = nil) -> T {67        shared(name: name, factory(), configure: configure)68    }69    public final func shared<T>(name: String = #function, _ factory: @autoclosure () -> T,70                                configure: ((T) -> Void)? = nil) -> T {71        if let instance = sharedInstances[name] as? T {72            return instance73        }74        return inject(75            lifecycle: .shared,76            name: name,77            factory: factory,78            configure: configure79        )80    }81    public final func weakShared<T: AnyObject>(name: String = #function, factory: () -> T,82                                               configure: ((T) -> Void)? = nil) -> T {83        weakShared(name: name, factory(), configure: configure)84    }85    public final func weakShared<T: AnyObject>(name: String = #function, _ factory: @autoclosure () -> T,86                                               configure: ((T) -> Void)? = nil) -> T {87        if let weakInstance = weakSharedInstances[name] as? Weak<T> {88            if let instance = weakInstance.instance {89                return instance90            }91        }92        var instance: T! // Keep instance alive for duration of method93        let weakInstance: Weak<T> = inject(94            lifecycle: .weakShared,95            name: name,96            factory: {97                instance = factory()98                return Weak(instance)99            },100            configure: { configure?($0.instance!) }101        )102        return weakInstance.instance!103    }104    public final func unshared<T>(name: String = #function, factory: () -> T, configure: ((T) -> Void)? = nil) -> T {105        unshared(name: name, factory(), configure: configure)106    }107    public final func unshared<T>(name: String = #function, _ factory: @autoclosure () -> T,108                                  configure: ((T) -> Void)? = nil) -> T {109        inject(lifecycle: .unshared,110            name: name,111            factory: factory,112            configure: configure113        )114    }115    public final func objectGraph<T>(name: String = #function, factory: () -> T, configure: ((T) -> Void)? = nil) -> T {116        objectGraph(name: name, factory(), configure: configure)117    }118    public final func objectGraph<T>(name: String = #function, _ factory: @autoclosure () -> T,119                                     configure: ((T) -> Void)? = nil) -> T {120        if let instance = scopedInstances[name] as? T {121            return instance122        }123        return inject(124            lifecycle: .objectGraph,125            name: name,126            factory: factory,127            configure: configure128        )129    }130    public final func makeInjectable(_ factory: @escaping () -> Any, byType: Any.Type) -> Void {131        let key = String(describing: byType).removingOptionalWrapper()132        bindings[key] = factory133        print("Got key: \(key)")134    }135    public final func makeInjectable(_ factory: @escaping () -> Any, byKey: String) -> Void {136        bindings[byKey] = factory137    }138    public final func makeInstanceInjectable(_ instance: AnyObject, byType: Any.Type? = nil) -> Void {139        let typeKeyForInstance = byType != nil ?140            String(describing: byType).removingOptionalWrapper() :141            String(describing: instance).components(separatedBy: ".").last!142        makeInjectable({ () -> Any in self }, byKey: typeKeyForInstance)143    }144    public final func importBindings(_ assemblies: PilgrimAssembly...) -> Void {145        assemblies.forEach { assembly in146            for (key, factory) in assembly.bindings {147                self.makeInjectable(factory, byKey: key)148            }149        }150    }151    private final func inject<T>(lifecycle: Lifecycle, name: String, factory: () -> T, configure: ((T) -> Void)?) -> T {152        let key = InstanceKey(lifecycle: lifecycle, name: name)153        if lifecycle != .unshared && instanceStack.contains(key) {154            fatalError("Circular dependency from one of \(instanceStack) to \(key) in initializer")155        }156        instanceStack.append(key)157        let instance = factory()158        instanceStack.removeLast()159        registerInstance(lifecycle: lifecycle, name: name, instance: instance)160        performLifecycleEvents(instance: instance, configure: configure)161        if instanceStack.count == 0 {162            // A configure call may trigger another instance stack to be generated, so must make a163            // copy of the current configure stack and clear it out for the upcoming requested164            // instances.165            let delayedConfigures = configureStack166            configureStack.removeAll(keepingCapacity: true)167            requestDepth += 1168            for delayedConfigure in delayedConfigures {169                delayedConfigure()170            }171            requestDepth -= 1172            if requestDepth == 0 {173                // This marks the end of an entire instance request tree. Must do final cleanup here.174                // Make sure scoped instances survive until the entire request is complete.175                scopedInstances.removeAll(keepingCapacity: true)176            }177        }178        return instance179    }180    private func performLifecycleEvents<T>(instance: T, configure: ((T) -> ())?) {181        if let configure = configure {182            configureStack.append({ configure(instance) })183        }184        if let configurable = instance as? PilgrimConfigurable {185            configureStack.append({ configurable.configure(assembly: self) })186        }187    }188    private func registerInstance<T>(lifecycle: Lifecycle, name: String, instance: T) {189        switch lifecycle {190        case .shared:191            sharedInstances[name] = instance192        case .weakShared:193            weakSharedInstances[name] = instance194        case .unshared:195            break196        case .objectGraph:197            scopedInstances[name] = instance198        }199    }...RxCollectionViewSectionedDataSource+Test.swift
Source:RxCollectionViewSectionedDataSource+Test.swift  
...11import XCTest12import UIKit13class RxCollectionViewSectionedDataSourceTest: XCTestCase {14}15// configureSupplementaryView not passed through init16extension RxCollectionViewSectionedDataSourceTest {17    func testCollectionViewSectionedReloadDataSource_optionalConfigureSupplementaryView() {18        let dataSource = RxCollectionViewSectionedReloadDataSource<AnimatableSectionModel<String, String>>(configureCell: { _, _, _, _  in UICollectionViewCell() })19        let layout = UICollectionViewFlowLayout()20        let collectionView = UICollectionView(frame: .zero, collectionViewLayout: layout)21        XCTAssertFalse(dataSource.responds(to: #selector(UICollectionViewDataSource.collectionView(_:viewForSupplementaryElementOfKind:at:))))22        let sentinel = UICollectionReusableView()23        dataSource.configureSupplementaryView = { _, _, _, _ in return sentinel }24        let returnValue = dataSource.collectionView(25            collectionView,26            viewForSupplementaryElementOfKind: UICollectionElementKindSectionHeader,27            at: IndexPath(item: 0, section: 0)28        )29        XCTAssertEqual(returnValue, sentinel)30        XCTAssertTrue(dataSource.responds(to: #selector(UICollectionViewDataSource.collectionView(_:viewForSupplementaryElementOfKind:at:))))31    }32    func testCollectionViewSectionedDataSource_optionalConfigureSupplementaryView() {33        let dataSource = CollectionViewSectionedDataSource<AnimatableSectionModel<String, String>>(configureCell: { _, _, _, _  in UICollectionViewCell() })34        let layout = UICollectionViewFlowLayout()35        let collectionView = UICollectionView(frame: .zero, collectionViewLayout: layout)36        XCTAssertFalse(dataSource.responds(to: #selector(UICollectionViewDataSource.collectionView(_:viewForSupplementaryElementOfKind:at:))))37        let sentinel = UICollectionReusableView()38        dataSource.configureSupplementaryView = { _, _, _, _ in return sentinel }39        let returnValue = dataSource.collectionView(40            collectionView,41            viewForSupplementaryElementOfKind: UICollectionElementKindSectionHeader,42            at: IndexPath(item: 0, section: 0)43        )44        XCTAssertEqual(returnValue, sentinel)45        XCTAssertTrue(dataSource.responds(to: #selector(UICollectionViewDataSource.collectionView(_:viewForSupplementaryElementOfKind:at:))))46    }47}48// configureSupplementaryView passed through init49extension RxCollectionViewSectionedDataSourceTest {50    func testCollectionViewSectionedAnimatedDataSource_optionalConfigureSupplementaryView_initializer() {51        let sentinel = UICollectionReusableView()52        let dataSource = RxCollectionViewSectionedAnimatedDataSource<AnimatableSectionModel<String, String>>(53            configureCell: { _, _, _, _  in UICollectionViewCell() },54            configureSupplementaryView: { _, _, _, _ in return sentinel }55        )56        let layout = UICollectionViewFlowLayout()57        let collectionView = UICollectionView(frame: .zero, collectionViewLayout: layout)58        let returnValue = dataSource.collectionView(59            collectionView,60            viewForSupplementaryElementOfKind: UICollectionElementKindSectionHeader,61            at: IndexPath(item: 0, section: 0)62        )63        XCTAssertEqual(returnValue, sentinel)64        XCTAssertTrue(dataSource.responds(to: #selector(UICollectionViewDataSource.collectionView(_:viewForSupplementaryElementOfKind:at:))))65    }66    func testCollectionViewSectionedReloadDataSource_optionalConfigureSupplementaryView_initializer() {67        let sentinel = UICollectionReusableView()68        let dataSource = RxCollectionViewSectionedReloadDataSource<AnimatableSectionModel<String, String>>(69            configureCell: { _, _, _, _  in UICollectionViewCell() },70            configureSupplementaryView: { _, _, _, _ in return sentinel }71        )72        let layout = UICollectionViewFlowLayout()73        let collectionView = UICollectionView(frame: .zero, collectionViewLayout: layout)74        let returnValue = dataSource.collectionView(75            collectionView,76            viewForSupplementaryElementOfKind: UICollectionElementKindSectionHeader,77            at: IndexPath(item: 0, section: 0)78        )79        XCTAssertEqual(returnValue, sentinel)80        XCTAssertTrue(dataSource.responds(to: #selector(UICollectionViewDataSource.collectionView(_:viewForSupplementaryElementOfKind:at:))))81    }82    func testCollectionViewSectionedDataSource_optionalConfigureSupplementaryView_initializer() {83        let sentinel = UICollectionReusableView()84        let dataSource = CollectionViewSectionedDataSource<AnimatableSectionModel<String, String>>(85            configureCell: { _, _, _, _  in UICollectionViewCell() },86            configureSupplementaryView: { _, _, _, _ in return sentinel }87        )88        let layout = UICollectionViewFlowLayout()89        let collectionView = UICollectionView(frame: .zero, collectionViewLayout: layout)90        let returnValue = dataSource.collectionView(91            collectionView,92            viewForSupplementaryElementOfKind: UICollectionElementKindSectionHeader,93            at: IndexPath(item: 0, section: 0)94        )95        XCTAssertEqual(returnValue, sentinel)96        XCTAssertTrue(dataSource.responds(to: #selector(UICollectionViewDataSource.collectionView(_:viewForSupplementaryElementOfKind:at:))))97    }98}99#endif...BaseDataSource.swift
Source:BaseDataSource.swift  
...11    var groups: [[T]] = []12    var sectionHeader: [HeaderT] = []13    var sectionFooter: [FooterT] = []14    15    var configureTableViewCellClosure: ConfigureTableViewCellClosure?16    var configureCollectionViewCellClosure: ConfigureCollectionViewCellClosure?17    18    init?(view: UIView, cellItems: [BaseCellProtocolItem], configureTableViewCellClosure: ConfigureTableViewCellClosure?, configureCollectionViewCellClosure: ConfigureCollectionViewCellClosure? = nil) {19        self.configureTableViewCellClosure = configureTableViewCellClosure20        self.configureCollectionViewCellClosure = configureCollectionViewCellClosure21        super.init()22        23        registerCells(view: view, items: cellItems)24    }25    26    /// Set data source for the tableView or collectionView27    ///28    /// - Parameters:29    ///   - view: A tableVeiw or a collectionView30    ///   - groups: the data source31    open func set(view: UIView, groups: [[T]]) {32        self.groups = groups33        if let tableView = view as? UITableView {34            tableView.reloadData()35        } else if let collectionView = view as? UICollectionView {36            collectionView.reloadData()37        } else {38            fatalError("The view is NETHER a UITableView NOR a UICollectionView: \(view)")39        }40    }41    42    // MARK: - UITableViewDataSource43    @available(iOS 2.0, *)44    public func numberOfSections(in tableView: UITableView) -> Int {45        return groups.count46    }47    48    @available(iOS 2.0, *)49    public func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {50        return group(at: section).count51    }52    53    @available(iOS 2.0, *)54    public func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {55        guard let configureCellClosure = configureTableViewCellClosure else {56            fatalError("configureTableViewCellClosure is nil, Check the Code")57        }58        return configureCellClosure(tableView, indexPath)59    }60    // MARK: - UICollectionViewDataSource61    @available(iOS 6.0, *)62    public func numberOfSections(in collectionView: UICollectionView) -> Int {63        return groups.count64    }65    @available(iOS 6.0, *)66    public func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {67        return group(at: section).count68    }69    70    @available(iOS 6.0, *)71    public func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell{72        guard let configureCellClosure = configureCollectionViewCellClosure else {73            fatalError("configureCollectionViewCellClosure is nil, Check the code")74        }75        return configureCellClosure(collectionView, indexPath)76    }77}78// MARK: - Data Fetcher Founctions79extension BaseDataSource {80    81    /// Fetch the data of rows in current section from the datasource82    ///83    /// - Parameter section: Current section84    /// - Returns: The data of rows in current section85    internal func group(at section: Int) -> [T] {86        return groups[section]87    }88    89    ...configure
Using AI Code Generation
1A.configure()2B.configure()3A.configure()4B.configure()5A.configure()6B.configure()7A.configure()8B.configure()9A.configure()10B.configure()11A.configure()12B.configure()13A.configure()14B.configure()15A.configure()16B.configure()17A.configure()18B.configure()19A.configure()20B.configure()21A.configure()22B.configure()23A.configure()24B.configure()25A.configure()26B.configure()27A.configure()28B.configure()29A.configure()configure
Using AI Code Generation
1import UIKit2class ViewController: UIViewController {3    override func viewDidLoad() {4        super.viewDidLoad()5        let myView = MyView(frame: CGRect(x: 0, y: 0, width: 200, height: 200))6        myView.configure()7        view.addSubview(myView)8    }9}10class MyView: UIView {11    func configure() {12        print("configure")13    }14}15import UIKit16class ViewController: UIViewController {17    override func viewDidLoad() {18        super.viewDidLoad()19        let myView = MyView(frame: CGRect(x: 0, y: 0, width: 200, height: 200))20        myView.configure()21        view.addSubview(myView)22    }23}24struct MyView: UIView {25    func configure() {26        print("configure")27    }28}29import UIKit30class ViewController: UIViewController {31    override func viewDidLoad() {32        super.viewDidLoad()33        let myView = MyView(frame: CGRect(x: 0, y: 0, width: 200, height: 200))34        myView.configure()35        view.addSubview(myView)36    }37}38class MyView: UIView {39    func configure() {40        print("configure")41    }42}43import UIKit44class ViewController: UIViewController {45    override func viewDidLoad() {46        super.viewDidLoad()47        let myView = MyView(frame: CGRect(x: 0, y: 0, width: 200, height: 200))48        myView.configure()49        view.addSubview(myView)50    }51}52struct MyView: UIView {53    func configure() {54        print("configure")55    }56}57import UIKit58class ViewController: UIViewController {59    override func viewDidLoad() {60        super.viewDidLoad()configure
Using AI Code Generation
1class ViewController: UIViewController {2    override func viewDidLoad() {3        super.viewDidLoad()4        let myClass = MyClass()5        myClass.configure()6    }7}8class MyClass {9    func configure() {10        print("configure")11    }12}configure
Using AI Code Generation
1I have a swift class with a function that takes a closure as a parameter. I would like to call this function from Objective-C. I have tried the following code, but I get the error "Cannot convert value of type '(Any) -> ()' to expected argument type 'Any'". What am I doing wrong?2class SwiftClass {3    func doSomethingWithClosure(closure: (Any) -> ()) {4    }5}6@objc class ObjCClass: NSObject {7    @objc func doSomethingWithClosure() {8        let swiftClass = SwiftClass()9        swiftClass.doSomethingWithClosure { (any) in10        }11    }12}13I have a class that has a method that takes a closure as a parameter. I would like to call this method from Objective-C. I have tried the following code, but I get the error "Cannot convert value of type '(Any) -> ()' to expected argument type 'Any'". What am I doing wrong?14class SwiftClass {15    func doSomethingWithClosure(closure: (Any) -> ()) {16    }17}18@objc class ObjCClass: NSObject {19    @objc func doSomethingWithClosure() {20        let swiftClass = SwiftClass()21        swiftClass.doSomethingWithClosure { (any) in22        }23    }24}25I have a class that has a method that takes a closure as a parameter. I would like to call this method from Objective-C. I have tried the following code, but I get the error "Cannot convert value of type '(Any) -> ()' to expected argument type 'Any'". What am I doing wrong?26class SwiftClass {27    func doSomethingWithClosure(closure: (Any) -> ()) {28    }29}configure
Using AI Code Generation
1let config = Configuration()2let config = Configuration()3let config = Configuration()4let config = Configuration()5let config = Configuration()6let config = Configuration()7let config = Configuration()8let config = Configuration()9let config = Configuration()10let config = Configuration()11let config = Configuration()12let config = Configuration()13let config = Configuration()14let config = Configuration()15let config = Configuration()16let config = Configuration()17let config = Configuration()18let config = Configuration()19let config = Configuration()20let config = Configuration()21let config = Configuration()22let config = Configuration()23let config = Configuration()24let config = Configuration()25let config = Configuration()26let config = Configuration()27let config = Configuration()28let config = Configuration()29let config = Configuration()30let config = Configuration()31let config = Configuration()32let config = Configuration()33let config = Configuration()34let config = Configuration()35let config = Configuration()36let config = Configuration()37let config = Configuration()38let config = Configuration()39let config = Configuration()40let config = Configuration()41let config = Configuration()42let config = Configuration()43let config = Configuration()44let config = Configuration()45let config = Configuration()46let config = Configuration()47let config = Configuration()48let config = Configuration()configure
Using AI Code Generation
1    let obj = MyClass()2    obj.configure()3    obj.configure("Hello")4    obj.configure("Hello", "World")5    let obj = MyClass()6    obj.configure()7    obj.configure("Hello")8    obj.configure("Hello", "World")9    let obj = MyClass()10    obj.configure()11    obj.configure("Hello")12    obj.configure("Hello", "World")13    let obj = MyClass()14    obj.configure()15    obj.configure("Hello")16    obj.configure("Hello", "World")17    let obj = MyClass()18    obj.configure()19    obj.configure("Hello")20    obj.configure("Hello", "World")21    let obj = MyClass()22    obj.configure()23    obj.configure("Hello")24    obj.configure("Hello", "World")25    let obj = MyClass()26    obj.configure()27    obj.configure("Hello")28    obj.configure("Hello", "World")29    let obj = MyClass()30    obj.configure()31    obj.configure("Hello")32    obj.configure("Hello", "World")33    let obj = MyClass()34    obj.configure()35    obj.configure("Hello")36    obj.configure("Hello", "World")37    let obj = MyClass()38    obj.configure()39    obj.configure("Hello")40    obj.configure("Hello", "World")41    let obj = MyClass()42    obj.configure()43    obj.configure("Hello")44    obj.configure("Hello", "World")45    let obj = MyClass()46    obj.configure()47    obj.configure("Hello")48    obj.configure("Hello", "World")configure
Using AI Code Generation
1import UIKit2class ViewController: UIViewController,UITableViewDataSource,UITableViewDelegate {3    var shoppingList = [String]()4    var shoppingListPrices = [Double]()5    var shoppingListImages = [String]()6    override func viewDidLoad() {7        super.viewDidLoad()8    }9    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {10    }11    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {12        let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as! TableViewCell13        cell.price.text = "$\(prices[indexPath.row])"14        cell.imageName.image = UIImage(named: imageNames[indexPath.row])15    }16    func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {17        shoppingList.append(names[indexPath.row])18        shoppingListPrices.append(prices[indexPath.row])19        shoppingListImages.append(imageNames[indexPath.row])20        print(shoppingList)21        print(shoppingListPrices)22        print(shoppingListImages)23    }24    override func prepare(for segue: UIStoryboardSegue, sender: Any?) {25        if segue.identifier == "segue"{26        }27    }28    override func didReceiveMemoryWarning() {29        super.didReceiveMemoryWarning()30    }31}32import UIKit33class SecondViewController: UIViewController,UITableViewDataSource,UITableViewDelegate {34    var shoppingList = [String]()35    var shoppingListPrices = [Double]()36    var shoppingListImages = [String]()37    override func viewDidLoad() {Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!
