Good name for f.byLine.map!(x => x.idup)?
Jakob Ovrum
jakobovrum at gmail.com
Sun Mar 16 11:14:17 PDT 2014
On Sunday, 16 March 2014 at 18:06:00 UTC, Vladimir Panteleev
wrote:
> On Sunday, 16 March 2014 at 16:58:36 UTC, Andrei Alexandrescu
> wrote:
>> A classic idiom for reading lines and keeping them is
>> f.byLine.map!(x => x.idup) to get strings instead of the
>> buffer etc.
>>
>> The current behavior trips new users on occasion, and the
>> idiom solving it is very frequent. So what the heck - let's
>> put that in a function, expose and document it nicely, and
>> call it a day.
>>
>> A good name would help a lot. Let's paint that bikeshed!
>
> For the record, if you want to keep all lines in memory anyway,
> it's more efficient to just read the whole file at once then
> split it with splitLines(), because you avoid doing one memory
> allocation per line. The downside is if you want to keep only
> some of the lines on the heap in a long-running program - with
> this approach, the slices pin the entire file content.
Reading all at once is also a problem for really big files.
More information about the Digitalmars-d
mailing list