Commits

Doug Gregor committed 90b8b3e4990
Constructor selectors always start with 'init'. Implement the new rules for mapping between selector names and constructors. The selector for a given constructor is formed by looking at the names of the constructor parameters: * For the first parameter, prepend "init" to the parameter name and uppercase the first letter of the parameter name. Append ':' if there are > 1 parameters or the parameter has non-empty-tuple type. * For the remaining parameters, the name of each parameter followed by ':'. When a parameter doesn't exist, assume that the parameter name is the empty string. And, because I failed to commit it separately, support selector-style declarations of constructor parameters so that we can actually write constructors nicely, e.g.: // selector is initWithFoo:bar: constructor withFoo(foo : Foo) bar(bar : Bar) { ... } Swift SVN r8361