summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2015-04-05 14:51:43 -0400
committerJesse Luehrs <doy@tozt.net>2015-04-05 14:51:43 -0400
commit9cfb519ef68cfdabd6c7ad11c86f80b5bcf970a6 (patch)
tree7febac205c8bf68a7eb591d4070d9d8d408636c3
parent42103921cf938b44072e60e8f7a7d092cafa7ae3 (diff)
downloadmatasano-9cfb519ef68cfdabd6c7ad11c86f80b5bcf970a6.tar.gz
matasano-9cfb519ef68cfdabd6c7ad11c86f80b5bcf970a6.zip
implement Debug for MersenneTwister
can't just derive it, because [_; 624] doesn't have a Debug implementation
-rw-r--r--src/random.rs11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/random.rs b/src/random.rs
index fcc1967..64944b7 100644
--- a/src/random.rs
+++ b/src/random.rs
@@ -1,4 +1,5 @@
use rand::{Rand, Rng, SeedableRng};
+use std;
pub struct MersenneTwister {
state: [u32; 624],
@@ -65,3 +66,13 @@ impl Clone for MersenneTwister {
MersenneTwister { state: self.state, index: self.index }
}
}
+
+impl std::fmt::Debug for MersenneTwister {
+ fn fmt (&self, f: &mut std::fmt::Formatter) -> Result<(), std::fmt::Error> {
+ try!(write!(f, "MersenneTwister {{ "));
+ try!(std::fmt::Debug::fmt(&&self.state[..], f));
+ try!(write!(f, ", "));
+ try!(std::fmt::Debug::fmt(&self.index, f));
+ write!(f, " }}")
+ }
+}