List of all permitted operations on scope function parameters.

Loara loara at noreply.com
Sun Apr 17 08:57:40 UTC 2022


On Friday, 15 April 2022 at 23:17:26 UTC, Salih Dincer wrote:
> On Friday, 15 April 2022 at 21:57:28 UTC, Loara wrote:
>> Documentation page 
>> https://dlang.org/spec/function.html#scope-parameters about 
>> `scope` function parameters says simply that a scoped 
>> parameter "can't escape that function's scope". This concept 
>> can be very tricky with some non-trivial algebra of struct's 
>> members and pointers, so I think it's better to provide a 
>> general algorithm to state if an expression/statement 
>> involving one or more `scope` function parameters is valid or 
>> not.
>
> **scope** and **return** are both my nightmare.  ```scope(exit) 
> // blah blah```, no problem and even ```return result``` It's 
> okay...
>
> But when I come across these elsewhere, it's scary.  Especially 
> in function parameters!
>
> @SDB79

https://github.com/Loara/Rethink_scope_in_D/blob/main/README.md


More information about the Digitalmars-d mailing list