Motive behind !empty() with front() instead of Optional front()
Rumbu
rumbu at rumbu.ro
Thu Mar 25 10:35:13 UTC 2021
On Thursday, 25 March 2021 at 09:35:40 UTC, deadalnix wrote:
> On Wednesday, 24 March 2021 at 19:23:21 UTC, Per Nordlöw wrote:
>> What's the motive behinds D's range design choice of needing
>>
>> if (!empty)
>> {
>> // use front or back
>> }
>>
>> instead of having front returning an optional/maybe type with
>> enforced pattern matching?
>>
>> Lack of builtin Optional type?
>>
>> Choosing the Optional path would have avoided the need for
>> putting error diagnostics such as
>>
>> https://github.com/dlang/phobos/commit/9bd2f2ba8ff1124a044560c4e6912a13cb5ac694
>>
>> in the standard library of such an alternative solution.
>
> The big question is, what if I want a range of Optional!T ?
You have to check on Optional!(Optional!T).
More information about the Digitalmars-d
mailing list