diff --git a/phf/src/lib.rs b/phf/src/lib.rs index d9c9a527..5fad1457 100644 --- a/phf/src/lib.rs +++ b/phf/src/lib.rs @@ -4,7 +4,7 @@ //! `phf_macros` crate or via code generation in the `phf_codegen` crate. See //! the documentation of those crates for more details. #![doc(html_root_url="https://sfackler.github.io/rust-phf/doc")] -#![feature(core, no_std)] +#![feature(core, debug_builders)] #![warn(missing_docs)] extern crate phf_shared; diff --git a/phf/src/map.rs b/phf/src/map.rs index 2bdd8dbd..f8a50ee0 100644 --- a/phf/src/map.rs +++ b/phf/src/map.rs @@ -26,16 +26,11 @@ pub struct Map { impl fmt::Debug for Map where K: fmt::Debug, V: fmt::Debug { fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result { - try!(write!(fmt, "Map {{")); - let mut first = true; - for (k, v) in self.entries() { - if !first { - try!(write!(fmt, ", ")); - } - try!(write!(fmt, "{:?}: {:?}", k, v)); - first = false; + let mut builder = fmt.debug_map("Map"); + for (k, v) in self { + builder = builder.entry(k, v); } - write!(fmt, "}}") + builder.finish() } } diff --git a/phf/src/ordered_map.rs b/phf/src/ordered_map.rs index 450923ef..4971fb77 100644 --- a/phf/src/ordered_map.rs +++ b/phf/src/ordered_map.rs @@ -32,16 +32,11 @@ pub struct OrderedMap { impl fmt::Debug for OrderedMap where K: fmt::Debug, V: fmt::Debug { fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result { - try!(write!(fmt, "OrderedMap {{")); - let mut first = true; - for (k, v) in self.entries() { - if !first { - try!(write!(fmt, ", ")); - } - try!(write!(fmt, "{:?}: {:?}", k, v)); - first = false; + let mut builder = fmt.debug_map("OrderedMap"); + for (k, v) in self { + builder = builder.entry(k, v); } - write!(fmt, "}}") + builder.finish() } } diff --git a/phf/src/ordered_set.rs b/phf/src/ordered_set.rs index 0d538a2b..5bf74b12 100644 --- a/phf/src/ordered_set.rs +++ b/phf/src/ordered_set.rs @@ -23,16 +23,11 @@ pub struct OrderedSet { impl fmt::Debug for OrderedSet where T: fmt::Debug { fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result { - try!(write!(fmt, "OrderedSet {{")); - let mut first = true; - for entry in self.iter() { - if !first { - try!(write!(fmt, ", ")); - } - try!(write!(fmt, "{:?}", entry)); - first = false; + let mut builder = fmt.debug_set("OrderedSet"); + for entry in self { + builder = builder.entry(entry); } - write!(fmt, "}}") + builder.finish() } } diff --git a/phf/src/set.rs b/phf/src/set.rs index ecd8cda5..5c424582 100644 --- a/phf/src/set.rs +++ b/phf/src/set.rs @@ -22,16 +22,11 @@ pub struct Set { impl fmt::Debug for Set where T: fmt::Debug { fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result { - try!(write!(fmt, "Set {{")); - let mut first = true; - for entry in self.iter() { - if !first { - try!(write!(fmt, ", ")); - } - try!(write!(fmt, "{:?}", entry)); - first = false; + let mut builder = fmt.debug_set("Set"); + for entry in self { + builder = builder.entry(entry); } - write!(fmt, "}}") + builder.finish() } } diff --git a/phf_codegen/src/lib.rs b/phf_codegen/src/lib.rs index df9c09ab..843da7bf 100644 --- a/phf_codegen/src/lib.rs +++ b/phf_codegen/src/lib.rs @@ -55,8 +55,6 @@ //! } //! ``` #![doc(html_root_url="http://sfackler.github.io/rust-phf/doc")] -#![feature(io)] - extern crate phf_shared; extern crate phf_generator; diff --git a/phf_codegen/test/build.rs b/phf_codegen/test/build.rs index 77bbae1d..747c4ceb 100644 --- a/phf_codegen/test/build.rs +++ b/phf_codegen/test/build.rs @@ -1,5 +1,3 @@ -#![feature(io, path)] - extern crate phf_codegen; use std::fs::File; diff --git a/phf_macros/tests/test.rs b/phf_macros/tests/test.rs index adba6bfb..2c3b641e 100644 --- a/phf_macros/tests/test.rs +++ b/phf_macros/tests/test.rs @@ -123,7 +123,7 @@ mod map { } #[test] - #[should_fail] + #[should_panic] fn test_index_fail() { static MAP: phf::Map<&'static str, isize> = phf_map!( "a" => 0, @@ -378,7 +378,7 @@ mod ordered_map { } #[test] - #[should_fail] + #[should_panic] fn test_index_fail() { static MAP: phf::OrderedMap<&'static str, isize> = phf_ordered_map!( "a" => 0,