Make function nothrow
Ali Çehreli via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Thu Jan 28 08:22:23 PST 2016
On 01/28/2016 08:05 AM, ref2401 wrote:
> There are functions in Phobos that do not throw but they are not marked
> as `nothrow`.
> When I need to call them from my `nothrow` code I do this:
>
> void foo() { /* I won't throw, honestly. */ }
>
> void bar() nothrow {
> scope(failure) assert(false);
> foo();
> }
>
> The question is: Is it ok to do such thing or should I just stick with
> try {} catch() {}?
> Thank you.
>
There is assumeWontThrow which terminates if an exception is indeed thrown:
http://dlang.org/library/std/exception/assume_wont_throw.html
Ali
More information about the Digitalmars-d-learn
mailing list