How would that work for a subclass, if all properties of a class need to be initialized before the parent's initializer is called?
-Andrew > On Mar 11, 2017, at 8:46 AM, Derrick Ho via swift-evolution > <[email protected]> wrote: > > Seems like it should work. Maybe it is a bug that should be reported to SR. > > Does this error occur for non-failable initializers? >> On Sat, Mar 11, 2017 at 12:33 AM David Sweeris via swift-evolution >> <[email protected]> wrote: >> Is this a feature or a bug? >> class Foo { >> let bar: Int >> init?(someConditionBasedOnInputData: Bool) { >> var localBar: Int = 0 >> defer { >> bar = localBar //Cannot assign to property: 'bar' is a 'let' >> constant >> } >> if someConditionBasedOnInputData { >> return nil >> } >> } >> } >> It’d be handy to be able to do the assignment upfront in a defer block in >> cases where there’s both a bunch of validation to do on the input data, and >> no harm from assigning the interim values to the final values when you’re >> about to return nil anyway. >> >> - Dave Sweeris >> _______________________________________________ >> swift-evolution mailing list >> [email protected] >> https://lists.swift.org/mailman/listinfo/swift-evolution > _______________________________________________ > swift-evolution mailing list > [email protected] > https://lists.swift.org/mailman/listinfo/swift-evolution
_______________________________________________ swift-evolution mailing list [email protected] https://lists.swift.org/mailman/listinfo/swift-evolution
