diff options
| author | bors <bors@rust-lang.org> | 2013-07-25 05:22:44 -0700 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2013-07-25 05:22:44 -0700 |
| commit | 4cf30729f054c8435de08588b67444e46a526baa (patch) | |
| tree | 375f6c24ab4075421a9ca5e6b1b266476631c24b /src/libstd | |
| parent | 906264b50fa6b69eed567388063233bd279242b1 (diff) | |
| parent | f73bb2bfe637b7e0edd8086fe8ba45032d8e3320 (diff) | |
| download | rust-4cf30729f054c8435de08588b67444e46a526baa.tar.gz rust-4cf30729f054c8435de08588b67444e46a526baa.zip | |
auto merge of #8026 : poiru/rust/issue-8024, r=alexcrichton
Closes #8024.
Diffstat (limited to 'src/libstd')
| -rw-r--r-- | src/libstd/bool.rs | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/src/libstd/bool.rs b/src/libstd/bool.rs index 126650981cd..eeaea6a2cff 100644 --- a/src/libstd/bool.rs +++ b/src/libstd/bool.rs @@ -24,6 +24,7 @@ Implementations of the following traits: * `Ord` * `TotalOrd` * `Eq` +* `Zero` ## Various functions to compare `bool`s @@ -36,14 +37,14 @@ Finally, some inquries into the nature of truth: `is_true` and `is_false`. */ -#[cfg(not(test))] -use cmp::{Eq, Ord, TotalOrd, Ordering}; -#[cfg(not(test))] -use ops::Not; use option::{None, Option, Some}; use from_str::FromStr; use to_str::ToStr; +#[cfg(not(test))] use cmp::{Eq, Ord, TotalOrd, Ordering}; +#[cfg(not(test))] use ops::Not; +#[cfg(not(test))] use num::Zero; + /** * Negation of a boolean value. * @@ -330,6 +331,12 @@ impl Eq for bool { fn ne(&self, other: &bool) -> bool { (*self) != (*other) } } +#[cfg(not(test))] +impl Zero for bool { + fn zero() -> bool { false } + fn is_zero(&self) -> bool { *self == false } +} + #[cfg(test)] mod tests { use super::*; |
