From 87e776fcebd40cb9628124c19e7e9190b1bd24a5 Mon Sep 17 00:00:00 2001 From: Laurenz Date: Tue, 14 Sep 2021 12:27:21 +0200 Subject: Add `BoolExt` trait with `flip` method --- src/util/mod.rs | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/util/mod.rs') diff --git a/src/util/mod.rs b/src/util/mod.rs index 3608ca76..1abdcbc9 100644 --- a/src/util/mod.rs +++ b/src/util/mod.rs @@ -11,6 +11,18 @@ use std::cmp::Ordering; use std::ops::Range; use std::path::{Component, Path, PathBuf}; +/// Additional methods for booleans. +pub trait BoolExt { + /// Toggle the value of the bool in place. + fn flip(&mut self); +} + +impl BoolExt for bool { + fn flip(&mut self) { + *self = !*self; + } +} + /// Additional methods for options. pub trait OptionExt { /// Replace `self` with `other` if `self` is `Some`. -- cgit v1.2.3