Rename 'nightly' feature to 'unstable'.
authorChris Morgan <me@chrismorgan.info>
committerChris Morgan <me@chrismorgan.info>
.travis.yml
Cargo.toml
README.md
src/any.rs
src/lib.rs
src/raw.rs

index 0b7902ca81d159f416ef1821e0a4127d454404de..ba08163bc73a57b60c41e1eb667d3c46fe2d21a6 100644 (file)
@@ -1,9 +1,12 @@
 language: rust
+rust:
+  - nightly
+  - beta
 env:
   global:
     - secure: nR+DJRUQ9v03nNZMpMu1tGKLKBAqdQsTIAr8ffdl+DUEh3b2jvQ+vLLNFLPjsloqhoOXo7cWO7qVpiE4ZOq2lNDURQjdiZGFjh/Y5+xKy2BqFdV7qQ1JoBzsMyx28tQTYz0mtBsACiCYKKb+ddNX5hpwrsjp8cS7htZktA5kbiU=
 script:
-  - if [[ "$(rustc --version)" =~ -(dev|nightly) ]]; then cargo test --features nightly; else ! cargo test --features nightly; fi
+  - if [[ "$(rustc --version)" =~ -(dev|nightly) ]]; then cargo test --features unstable; else ! cargo test --features unstable; fi
   - cargo test
   - cargo doc
 after_script:
index 2cd16010d2d861d2cd2c6b4d85aa941603458767..747cba548aa8eb84ec466d2c65e00e815276901e 100644 (file)
@@ -11,4 +11,4 @@ keywords = ["container", "data-structure", "map"]
 license = "MIT/Apache-2.0"
 
 [features]
-nightly = []
+unstable = []
index 77b147b876a869833156022fdb296013adcc30f8..e1c65acb5744a2e5ec33ff3abcbad4dda6be9886 100644 (file)
--- a/README.md
+++ b/README.md
@@ -18,7 +18,7 @@ Instructions
 
 Cargo all the way: it is `anymap` on crates.io.
 
-For users of the nightly instead of the beta of rustc there are a couple of things behind the `nightly` feature like a `drain` method on the `RawAnyMap` and a more efficient hashing technique which makes lookup in the map a tad faster.
+For users of the nightly instead of the beta of rustc there are a couple of things behind the `unstable` feature like a `drain` method on the `RawAnyMap` and a more efficient hashing technique which makes lookup in the map a tad faster.
 
 Author
 ------
index 5b5e6e65f936d11f5df8f6cbe2d99229a2cb3fce..93130e0a82f559ba6fce755fc44fbaceeb82a137 100644 (file)
@@ -88,10 +88,10 @@ macro_rules! impl_clone {
     }
 }
 
-#[cfg(feature = "nightly")]
+#[cfg(feature = "unstable")]
 use std::raw::TraitObject;
 
-#[cfg(not(feature = "nightly"))]
+#[cfg(not(feature = "unstable"))]
 #[repr(C)]
 #[allow(raw_pointer_derive)]
 #[derive(Copy, Clone)]
index 4bc330f9d0c02097ed36fffc0b094604b0d59d1b..b5ae44a59108ae5f447c8c16e9d120db4b4371bf 100644 (file)
@@ -1,6 +1,6 @@
 //! This crate provides the `AnyMap` type, a safe and convenient store for one value of each type.
 
-#![cfg_attr(feature = "nightly", feature(core, std_misc))]
+#![cfg_attr(feature = "unstable", feature(core, std_misc))]
 #![cfg_attr(test, feature(test))]
 #![warn(missing_docs, unused_results)]
 
index 6439771093976a12ac1ccf40904471d981d7bede..efa485212160734ccde23cdb0c9d9351f9cdd355 100644 (file)
@@ -5,31 +5,31 @@
 use std::any::TypeId;
 use std::borrow::Borrow;
 use std::collections::hash_map::{self, HashMap};
-#[cfg(feature = "nightly")]
+#[cfg(feature = "unstable")]
 use std::collections::hash_state::HashState;
 use std::default::Default;
 use std::hash::Hash;
-#[cfg(feature = "nightly")]
+#[cfg(feature = "unstable")]
 use std::hash::Hasher;
 use std::iter::IntoIterator;
-#[cfg(feature = "nightly")]
+#[cfg(feature = "unstable")]
 use std::mem;
 use std::ops::{Index, IndexMut};
-#[cfg(feature = "nightly")]
+#[cfg(feature = "unstable")]
 use std::ptr;
 
 use any::{Any, UncheckedAnyExt};
 
-#[cfg(feature = "nightly")]
+#[cfg(feature = "unstable")]
 struct TypeIdHasher {
     value: u64,
 }
 
 #[derive(Clone)]
-#[cfg(feature = "nightly")]
+#[cfg(feature = "unstable")]
 struct TypeIdState;
 
-#[cfg(feature = "nightly")]
+#[cfg(feature = "unstable")]
 impl HashState for TypeIdState {
     type Hasher = TypeIdHasher;
 
@@ -38,7 +38,7 @@ impl HashState for TypeIdState {
     }
 }
 
-#[cfg(feature = "nightly")]
+#[cfg(feature = "unstable")]
 impl Hasher for TypeIdHasher {
     #[inline(always)]
     fn write(&mut self, bytes: &[u8]) {
@@ -63,10 +63,10 @@ impl Hasher for TypeIdHasher {
 /// doesn’t tend to be so very useful. Still, if you need it, it’s here.
 #[derive(Debug)]
 pub struct RawMap<A: ?Sized + UncheckedAnyExt = Any> {
-    #[cfg(feature = "nightly")]
+    #[cfg(feature = "unstable")]
     inner: HashMap<TypeId, Box<A>, TypeIdState>,
 
-    #[cfg(not(feature = "nightly"))]
+    #[cfg(not(feature = "unstable"))]
     inner: HashMap<TypeId, Box<A>>,
 }
 
@@ -85,14 +85,14 @@ impl<A: ?Sized + UncheckedAnyExt> Default for RawMap<A> {
     }
 }
 
-#[cfg(feature = "nightly")]
+#[cfg(feature = "unstable")]
 impl_common_methods! {
     field: RawMap.inner;
     new() => HashMap::with_hash_state(TypeIdState);
     with_capacity(capacity) => HashMap::with_capacity_and_hash_state(capacity, TypeIdState);
 }
 
-#[cfg(not(feature = "nightly"))]
+#[cfg(not(feature = "unstable"))]
 impl_common_methods! {
     field: RawMap.inner;
     new() => HashMap::new();
@@ -140,17 +140,17 @@ impl<A: ?Sized + UncheckedAnyExt> ExactSizeIterator for IntoIter<A> {
 }
 
 /// RawMap drain iterator.
-#[cfg(feature = "nightly")]
+#[cfg(feature = "unstable")]
 pub struct Drain<'a, A: ?Sized + UncheckedAnyExt> {
     inner: hash_map::Drain<'a, TypeId, Box<A>>,
 }
-#[cfg(feature = "nightly")]
+#[cfg(feature = "unstable")]
 impl<'a, A: ?Sized + UncheckedAnyExt> Iterator for Drain<'a, A> {
     type Item = Box<A>;
     #[inline] fn next(&mut self) -> Option<Box<A>> { self.inner.next().map(|x| x.1) }
     #[inline] fn size_hint(&self) -> (usize, Option<usize>) { self.inner.size_hint() }
 }
-#[cfg(feature = "nightly")]
+#[cfg(feature = "unstable")]
 impl<'a, A: ?Sized + UncheckedAnyExt> ExactSizeIterator for Drain<'a, A> {
     #[inline] fn len(&self) -> usize { self.inner.len() }
 }
@@ -182,7 +182,7 @@ impl<A: ?Sized + UncheckedAnyExt> RawMap<A> {
     ///
     /// Keeps the allocated memory for reuse.
     #[inline]
-    #[cfg(feature = "nightly")]
+    #[cfg(feature = "unstable")]
     pub fn drain(&mut self) -> Drain<A> {
         Drain {
             inner: self.inner.drain(),