remobjects / SwiftBaseLibrary

Other
92 stars 13 forks source link

Array and Dictionary.values is missing `forEach`-method #11

Open weyert opened 5 years ago

weyert commented 5 years ago

I would like to implement the forEach-method (see: https://developer.apple.com/documentation/swift/dictionary/values/2894113-foreach) and I was wondering what the best approach is to do.

I am not sure what the best approach would to implement this? Can I import SwiftBaseLibrary in my own projects (e.g. SharedProject) and then leverage it and make my own changes and then make pull requests for them?

The library is suggesting that it's available through Sequence:

https://github.com/remobjects/SwiftBaseLibrary/blob/7230408a87d5ef27c5b0f247d62f9f1bc0c46387/Source/Sequence_Extensions.swift#L94 but I am not getting it working when I do something like:

typealias LocationNode = TreeNode<Location>
var availableRootNodes = [TreeNode<Location>]()

// Code that populates the above array
for node in dictionary.Values {
   availableRootNodes.append(node)
}

// Attempt to iterate through the list
availableRootNodes.forEach { (value) in
   NSLog("Item has been discovered")
}

If I try to compile code like above I am getting the error:

E: No member "forEach " on type "Array<TreeNode<Location>!>" [/Users/weyertdeboer/Development/Projects/x/x/version-3/config-app/SharedProject/LocationService.swift (161)]