#macro #unreachable #xkcd

xkcd_unreachable

A Rust macro xkcd_unreachable!() inspired by https://xkcd.com/2200/

2 releases

0.1.1 Mar 16, 2020
0.1.0 Mar 16, 2020

#1371 in Rust patterns

39 downloads per month
Used in nenv

MIT license

7KB
58 lines

xkcd_unreachable

A Rust macro xkcd_unreachable!() inspired by xkcd 2200

Example

use xkcd_unreachable::xkcd_unreachable;

fn foo(x: Option<i32>) {
    match x {
        Some(n) if n >= 0 => println!("Some(Non-negative)"),
        Some(n) if n <  0 => println!("Some(Negative)"),
        Some(_)           => xkcd_unreachable!(),
        None              => println!("None")
    }
}

Output if reached

⚠ ERROR

If you're seeing this, the code is in what
I thought was an unreachable state.

I could give you advice for what to do.
But honestly, why should you trust me?
I clearly screwed this up. I'm writing a
message that should never appear, yet
I know it will probably appear someday.

On a deep level, I know I'm not
up to this task. I'm so sorry.

<https://xkcd.com/2200/>

For more information, see the documentation.

xkcd 2200

No runtime deps