The uninhabited void type for use in statically impossible cases.
The uninhabited type, enum Void { }
is useful in dealing with cases you know to be impossible. For instance, if you are implementing a trait which allows for error checking, but your case always succeeds, you can mark the error case or type as Void
, signaling to the compiler it can never happen.
This crate also comes packed with a few traits offering extension methods to Result<T, Void>
and Result<Void, T>
.
Use the crates.io repository; add this to your Cargo.toml
along with the rest of your dependencies:
[dependencies] void = "1"
Then, use Void
in your crate:
extern crate void; use void::Void;
Jonathan Reem is the primary author and maintainer of void.
MIT