[swift-users] Extracting arbitrary types (e.g. UInt16) out of Data

Daniel Vollmer lists at maven.de
Mon Jun 26 03:55:17 CDT 2017


Hi Rick,

> On 26. Jun 2017, at 02:37, Rick Mann via swift-users <swift-users at swift.org> wrote:

[snip]

> I'd also like to avoid unnecessary copying of the data. All of it is immutable for the purposes of this problem.
> 
> How can I get the UInt16 that starts at byte X in a Data? Same goes for Double or Int32 or whatever.

I’m not sure what Swift’s stance on this is, but not all platforms allow misaligned memory accesses (such as your attempt to access a UInt16 that lies at an odd memory address).

So at least IMO, copying and assembling the bytes into an instance of the actual destination type seems to be exactly the right thing to do.

	Daniel.



More information about the swift-users mailing list