Hi there!
in Swift 3, we now have #selector and #keyPath yet there’s still no _cmd like
we have in Objective-C.
Example:
class DirectoryListingStub: DirectoryListing {
var cannedOutput: [Selector: Any?] = [
#selector(contentsOfDirectory(at:includingPropertiesForKeys:options:)):
nil
]
dynamic func contentsOfDirectory(at url: URL, includingPropertiesForKeys
keys: [URLResourceKey]?, options: FileManager.DirectoryEnumerationOptions)
throws -> [URL] {
let selector =
#selector(contentsOfDirectory(at:includingPropertiesForKeys:options:))
return cannedOutput[selector] as! [URL]
}
}
Problem: I had to specify #selector twice.
I though I’d be able to use #function but:
#selector = contentsOfDirectoryAt:includingPropertiesForKeys:options:error:
#function = contentsOfDirectory(at:includingPropertiesForKeys:options:)
It’d be great if #selector (without arguments) returned the current selector.
Or am I missing something?
R+
_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution