diff --git a/src/array_string.rs b/src/array_string.rs index d8dc6ac..c642e2b 100644 --- a/src/array_string.rs +++ b/src/array_string.rs @@ -533,10 +533,10 @@ impl<'de, const CAP: usize> Deserialize<'de> for ArrayString use serde::de::{self, Visitor}; use std::marker::PhantomData; - struct ArrayStringVisitor(PhantomData([u8; CAP])); + struct ArrayStringVisitor(PhantomData<[u8; CAP]>); - impl<'de, const CAP: usize> Visitor<'de> for ArrayStringVisitor { - type Value = ArrayString; + impl<'de, const CAP: usize> Visitor<'de> for ArrayStringVisitor { + type Value = ArrayString; fn expecting(&self, formatter: &mut fmt::Formatter) -> fmt::Result { write!(formatter, "a string no more than {} bytes long", CAP) diff --git a/src/arrayvec.rs b/src/arrayvec.rs index d58ebc2..97a46ae 100644 --- a/src/arrayvec.rs +++ b/src/arrayvec.rs @@ -1141,17 +1141,17 @@ impl<'de, T: Deserialize<'de>, const CAP: usize> Deserialize<'de> for ArrayVec; fn expecting(&self, formatter: &mut fmt::Formatter) -> fmt::Result { - write!(formatter, "an array with no more than {} items", A::CAPACITY) + write!(formatter, "an array with no more than {} items", CAP) } fn visit_seq(self, mut seq: SA) -> Result where SA: SeqAccess<'de>, { - let mut values = ArrayVec::::new(); + let mut values = ArrayVec::::new(); while let Some(value) = seq.next_element()? { if let Err(_) = values.try_push(value) { - return Err(SA::Error::invalid_length(A::CAPACITY + 1, &self)); + return Err(SA::Error::invalid_length(CAP + 1, &self)); } } diff --git a/src/lib.rs b/src/lib.rs index cfd1515..85a04a2 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -34,9 +34,6 @@ extern crate serde; #[cfg(not(feature="std"))] extern crate core as std; -#[cfg(feature="serde")] -use serde::{Serialize, Deserialize, Serializer, Deserializer}; - mod array; mod arrayvec_impl; mod arrayvec; diff --git a/tests/serde.rs b/tests/serde.rs index 3876d2a..f02c693 100644 --- a/tests/serde.rs +++ b/tests/serde.rs @@ -9,7 +9,7 @@ mod array_vec { #[test] fn test_ser_de_empty() { - let vec = ArrayVec::<[u32; 0]>::new(); + let vec = ArrayVec::::new(); assert_tokens(&vec, &[ Token::Seq { len: Some(0) }, @@ -20,7 +20,7 @@ mod array_vec { #[test] fn test_ser_de() { - let mut vec = ArrayVec::<[u32; 3]>::new(); + let mut vec = ArrayVec::::new(); vec.push(20); vec.push(55); vec.push(123); @@ -36,7 +36,7 @@ mod array_vec { #[test] fn test_de_too_large() { - assert_de_tokens_error::>(&[ + assert_de_tokens_error::>(&[ Token::Seq { len: Some(3) }, Token::U32(13), Token::U32(42), @@ -52,7 +52,7 @@ mod array_string { #[test] fn test_ser_de_empty() { - let string = ArrayString::<[u8; 0]>::new(); + let string = ArrayString::<0>::new(); assert_tokens(&string, &[ Token::Str(""), @@ -62,7 +62,7 @@ mod array_string { #[test] fn test_ser_de() { - let string = ArrayString::<[u8; 9]>::from("1234 abcd") + let string = ArrayString::<9>::from("1234 abcd") .expect("expected exact specified capacity to be enough"); assert_tokens(&string, &[ @@ -72,7 +72,7 @@ mod array_string { #[test] fn test_de_too_large() { - assert_de_tokens_error::>(&[ + assert_de_tokens_error::>(&[ Token::Str("afd") ], "invalid length 3, expected a string no more than 2 bytes long"); } diff --git a/tests/tests.rs b/tests/tests.rs index 46fb575..676cd7c 100644 --- a/tests/tests.rs +++ b/tests/tests.rs @@ -483,7 +483,7 @@ fn test_string() { use std::error::Error; let text = "hello world"; - let mut s = ArrayString::<[_; 16]>::new(); + let mut s = ArrayString::<16>::new(); s.try_push_str(text).unwrap(); assert_eq!(&s, text); assert_eq!(text, &s); @@ -493,7 +493,7 @@ fn test_string() { map.insert(s, 1); assert_eq!(map[text], 1); - let mut t = ArrayString::<[_; 2]>::new(); + let mut t = ArrayString::<2>::new(); assert!(t.try_push_str(text).is_err()); assert_eq!(&t, ""); @@ -504,7 +504,7 @@ fn test_string() { // Test Error trait / try let t = || -> Result<(), Box> { - let mut t = ArrayString::<[_; 2]>::new(); + let mut t = ArrayString::<2>::new(); t.try_push_str(text)?; Ok(()) }(); @@ -515,7 +515,7 @@ fn test_string() { fn test_string_from() { let text = "hello world"; // Test `from` constructor - let u = ArrayString::<[_; 11]>::from(text).unwrap(); + let u = ArrayString::<11>::from(text).unwrap(); assert_eq!(&u, text); assert_eq!(u.len(), text.len()); } @@ -523,7 +523,7 @@ fn test_string_from() { #[test] fn test_string_parse_from_str() { let text = "hello world"; - let u: ArrayString<[_; 11]> = text.parse().unwrap(); + let u: ArrayString<11> = text.parse().unwrap(); assert_eq!(&u, text); assert_eq!(u.len(), text.len()); } @@ -539,9 +539,9 @@ fn test_string_from_bytes() { #[test] fn test_string_clone() { let text = "hi"; - let mut s = ArrayString::<[_; 4]>::new(); + let mut s = ArrayString::<4>::new(); s.push_str("abcd"); - let t = ArrayString::<[_; 4]>::from(text).unwrap(); + let t = ArrayString::<4>::from(text).unwrap(); s.clone_from(&t); assert_eq!(&t, &s); } @@ -549,7 +549,7 @@ fn test_string_clone() { #[test] fn test_string_push() { let text = "abcαβγ"; - let mut s = ArrayString::<[_; 8]>::new(); + let mut s = ArrayString::<8>::new(); for c in text.chars() { if let Err(_) = s.try_push(c) { break; @@ -645,7 +645,7 @@ fn test_sizes() { #[test] fn test_default() { use std::net; - let s: ArrayString<[u8; 4]> = Default::default(); + let s: ArrayString<4> = Default::default(); // Something without `Default` implementation. let v: ArrayVec = Default::default(); assert_eq!(s.len(), 0); @@ -689,6 +689,6 @@ fn test_extend_zst() { #[test] fn test_try_from_argument() { use core::convert::TryFrom; - let v = ArrayString::<[u8; 16]>::try_from(format_args!("Hello {}", 123)).unwrap(); + let v = ArrayString::<16>::try_from(format_args!("Hello {}", 123)).unwrap(); assert_eq!(&v, "Hello 123"); }