How to cast away shared?
Ruby The Roobster
rubytheroobster at yandex.com
Wed Aug 3 13:51:57 UTC 2022
On Wednesday, 3 August 2022 at 13:00:05 UTC, Paul Backus wrote:
> On Wednesday, 3 August 2022 at 12:50:17 UTC, Ruby The Roobster
> wrote:
>> Any way to 'cast away' shared for an unknown type T?
>
> There's actually an `Unshared` template for this in
> `std.traits`, but for some reason it's `private`, so you can't
> use it directly. Fortunately, it's only two lines:
>
> ```d
> alias Unshared(T) = T;
> alias Unshared(T: shared U, U) = U;
> ```
>
> Once you have this, you can write `cast(Unshared!T)`.
Thank you. This really helped.
More information about the Digitalmars-d-learn
mailing list