>>   1. It points into memory that it does not own. The developer must do 
>> something to to manage the memory’s lifetime.
  

  
Isn't that just a pointer? Is it really necessary to say "unsafe" and "pointer"?
  

  
And if we did want to make it explicit, perhaps we say "unowned" instead, to 
make it clear how it is unsafe. "RawBufferPointer"/"UnownedRawBufferPointer" 
sound pretty good to me. You can derive some pretty solid expectations from 
those names.
  
  
  
    
 Karl
  
  
  

  
  
>   
> On Sep 6, 2016 at 10:59 pm,  <Andrew Trick (mailto:atr...@apple.com)>  wrote:
>   
>   
>   
>   
>   
> >   
> > On Sep 2, 2016, at 7:36 PM, Karl via swift-evolution  
> > <swift-evolution@swift.org (mailto:swift-evolution@swift.org)>  wrote:
> >   
> >   
> >   
> >   
> > > * Does this proposal fit well with the feel and direction of Swift?
> >   
> >   Yes, but I’m not sure about the “Unsafe” part of “UnsafeBytes” — what is 
> > unsafe about getting the byte-representation of a value?
> >   
> >   As I understand it, “Raw” is what we use for “untyped”, so might I 
> > suggest “RawBytes"?         
>   
> It’s annoying, but a strict requirement in Swift that any “unsafe” operation 
> be marked with the word “Unsafe” either at that point or in some enclosing 
> scope. Unsafe broadly refers to various forms of memory unsafety. Unsafe 
> bytes is actually safe with respect to pointer aliasing but it is unsafe 
> because
>   
>
>   
> 1. It points into memory that it does not own. The developer must do 
> something to to manage the memory’s lifetime.
>   
>
>   
> 2. It does not perform bounds-checking in release mode.
>   
>
>   
> In both those respects, it’s just like UnsafeBufferPointer.
>   
>
>   
> -Andy
>   
>   
  
  
 
_______________________________________________
swift-evolution mailing list
swift-evolution@swift.org
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to