On 7/5/22 8:14 PM, Gary Chike wrote:
On Monday, 20 June 2022 at 16:08:33 UTC, Ali Çehreli wrote:
On 6/20/22 07:00, Gary Chike wrote:
> Would it be appropriate to forego `readf`
> and read input as a string using `readln` ,benefiting from
the `strip`
> function, then convert to their appropriate datatype
Makes sense. The following are related as well:
https://dlang.org/library/std/conv/parse.html
https://dlang.org/library/std/format/read/formatted_read.html
It's interesting from my own experimentation and observation, comparing
`parse!int()` vs `to!int()` For instance, I can formulate a statement
such as this using `to!int()`:
`auto age = to!int(readln.strip());`
but the same syntax using `parse!int()` would generate an error:
`auto age = parse!int(readln.strip());`
So, in order to use `parse!int()`, I would need to separate it into two
statements with a variable acting as an intermediary:
```
auto input = readln();
auto age = parse!int(input);
Yes, you have 2 orthogonal desires:
1. I want to update the original range or not
2. I want to treat the entire range as representing my conversion type
or just the first part.
Phobos only handles 2 of the 4 possible scenarios. Well, really one
scenario (reading the entire range, and wanting to update the original)
is not important.
-Steve