[swift-evolution] IDEA: Optional parameters bridge to Obj-C as distinct selectors
Jared Sorge
jared at jsorge.net
Tue Jul 12 15:48:08 CDT 2016
Hi everyone,
Over the last day or so I've been writing new methods in Swift with
default values in their parameters (which are optionals). Objective-C
doesn't honor the default method name argument so I have to specify the
argument to the method.
Contrived Example:
```
func addNumbers(first: Int, second: Int = 2) -> Int {
return first + second
}
let number = addNumbers(5)
// 7
let numTwo = addNumbers(4, second: 1)
// 5
```
However, bridging the function to Objective-C yields only 1 selector:
`-(NSInteger) addNumbers:second:`
It would be great if, since there is a default argument, Objective-C
could see an additional selector: `-(NSInteger)addNumbers:`
This would call Swift and allow the default argument to be used. Has
there been any discussion of something like this? Thanks all!
jared
More information about the swift-evolution
mailing list