Sent from my iPad
On Jun 2, 2016, at 6:26 AM, Brent Royal-Gordon via swift-evolution <swift-evolution@swift.org> wrote: >> /// Returns the contiguous memory footprint of `T`. >> /// >> /// Does not include any dynamically-allocated or "remote" storage. >> /// In particular, `size(of: X.self)`, when `X` is a class type, is the >> /// same regardless of how many stored properties `X` has. >> public func size<T>(of: T.Type) -> Int >> >> /// Returns the contiguous memory footprint of `T`. >> /// >> /// Does not include any dynamically-allocated or "remote" storage. >> /// In particular, `size(of: a)`, when `a` is a class instance, is the >> /// same regardless of how many stored properties `a` has. >> public func size<T>(ofValue: T) -> Int >> >> /// Returns the least possible interval between distinct instances of >> /// `T` in memory. The result is always positive. >> public func spacing<T>(of: T.Type) -> Int >> >> /// Returns the least possible interval between distinct instances of >> /// `T` in memory. The result is always positive. >> public func spacing<T>(ofValue: T) -> Int >> >> /// Returns the minimum memory alignment of `T`. >> public func align<T>(of: T.Type) -> Int >> >> /// Returns the minimum memory alignment of `T`. >> public func align<T>(ofValue: T) -> Int > > If `type(of:)` takes an instance, then I think `size(of:)`, `spacing(of:)` > and `align(of:)` need to do the same, with `size(ofType:)`, > `spacing(ofType:)`, and `align(ofType:)` handling the type side of things. +1 if we stick with the function direction. But I'm not convinced this is the best direction. > > -- > Brent Royal-Gordon > Architechies > > _______________________________________________ > swift-evolution mailing list > swift-evolution@swift.org > https://lists.swift.org/mailman/listinfo/swift-evolution _______________________________________________ swift-evolution mailing list swift-evolution@swift.org https://lists.swift.org/mailman/listinfo/swift-evolution