From 9cfb519ef68cfdabd6c7ad11c86f80b5bcf970a6 Mon Sep 17 00:00:00 2001 From: Jesse Luehrs Date: Sun, 5 Apr 2015 14:51:43 -0400 Subject: implement Debug for MersenneTwister can't just derive it, because [_; 624] doesn't have a Debug implementation --- src/random.rs | 11 +++++++++++ 1 file changed, 11 insertions(+) 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, " }}") + } +} -- cgit v1.2.3-54-g00ecf