Sent from my iPad
On Jun 3, 2016, at 7:08 AM, Brent Royal-Gordon <[email protected]> wrote: >> This might be silly, but what if there were a struct with all of the >> relevant fields (not sure what the best name would be): >> >> struct MemoryLayout { >> let size: Int >> let alignment: Int >> let stride: Int >> // etc >> } >> >> Then you’d only maybe need two functions: >> >> memoryLayout(of:) and memoryLayout(ofType:) > > Could the `memoryLayout` functions just return `(size: Int, alignment: Int, > spacing: Int)` tuples? It's hard to tell because it goes into Builtin land, > but I get the impression that these values are calculated at compile time > anyway, and if you only used one of them the optimizer could throw the others > away. What would be the advantage of this over returning a value of a MemoryLayout type? Obviously tuples can be destructured, but I can't think of any others. I would like to see struct destructuring someday. I'm not sure destructuring is a strong enough argument to go with a tuple here. If there is a good reason to have a MemoryLayout type we shouldn't drop it just for destructuring, which may eventually be possible anyway (I hope anyway). > > -- > Brent Royal-Gordon > Architechies > _______________________________________________ swift-evolution mailing list [email protected] https://lists.swift.org/mailman/listinfo/swift-evolution
