View mode: basic / threaded / horizontal-split · Log in · Help
April 30, 2011
What is put() useful for with regards to dynamic arrays?
import std.range;

void main()
{
   int[] a = [1, 2, 3];
   
   a.put(6);
   assert(a == [2, 3]);
   
   a.put([1, 2]);
   assert(a.length == 0);
}

Seems kind of odd.. put is implemented as an append method for some custom types, e.g. std.array.appender. But for arrays put just removes Item or RangeLength number of elements from the array. What's the use case for this?
May 02, 2011
Re: What is put() useful for with regards to dynamic arrays?
On Sat, 30 Apr 2011 00:09:09 -0400, Andrej Mitrovic wrote:

> import std.range;
> 
> void main()
> {
>     int[] a = [1, 2, 3];
>     
>     a.put(6);
>     assert(a == [2, 3]);
>     
>     a.put([1, 2]);
>     assert(a.length == 0);
> }
> 
> Seems kind of odd.. put is implemented as an append method for some
> custom types, e.g. std.array.appender. But for arrays put just removes
> Item or RangeLength number of elements from the array. What's the use
> case for this?

This should probably be in a FAQ somewhere. :)

http://www.digitalmars.com/d/archives/digitalmars/D/
std.array.put_doesn_t_put_106871.html

-Lars
May 02, 2011
Re: What is put() useful for with regards to dynamic arrays?
Thanks, that post explained it. Obviously I wasn't the first and
likely won't be the last person to run into this. Maybe put's
documentation could make a note of this.
Top | Discussion index | About this forum | D home