> On Apr 5, 2016, at 12:40 PM, tuuranton--- via swift-users > <[email protected]> wrote: > > This code works great in Swift 2.2: > > ------------ > func foo() -> (a: String, b: Int) { > return ("asdf", 4) > } > > var z: (b: Int, a: String) > z = foo() > > print("\(z.0)") //4 > print("\(z.1)") //asdf > ------------ > > Notice how I have reordered a and b. > > As a result the meaning of .0 and .1 have changed. > > Can I, or am I likely to be able to, rely on this behavior going forward into > Swift 2.3, Swift 3, Swift 4 and beyond?
I think we're OK with tuple reordering, though it would certainly be more understandable (and more resilient to theoretical future changes) to refer to .b and .a instead of .0 and .1. -Joe _______________________________________________ swift-users mailing list [email protected] https://lists.swift.org/mailman/listinfo/swift-users
