Skip to content

Latest commit

 

History

History
42 lines (25 loc) · 1.08 KB

README.md

File metadata and controls

42 lines (25 loc) · 1.08 KB

Nicht

A more natural way to use not.

Might be easier to read in a voice that doesn't sound like Borat

Motivation

Boolean conditions sometimes require mental gymnastics from the reader especially on more complicated expressions which may lead to subtle bugs.

Some languages have a not keyword available to reduce this kind of bugs especially with the sometimes hard to see single ! negatiting whole expressions.

Unfortunately this is not the case in rust.

Instead the std::ops::Not can only be applied to the end of an expression making it hard to read again.

Usage

This is the std way of using not:

use std::ops::Not;

if foo.some_condition().not() {
    // etc.
}

With this crate you can achieve the more natural way of reading code like if not some condition is true.

use nicht::not;

if not(foo.some_condition()) {
    // etc.
}

Credit

By u/killercup