clippy fixes

This commit is contained in:
Robin Appelman 2024-03-11 15:44:45 +01:00
commit 836d593997
5 changed files with 29 additions and 26 deletions

View file

@ -142,6 +142,7 @@ pub struct PrimitiveError {
} }
#[derive(Error, Debug, Clone)] #[derive(Error, Debug, Clone)]
#[allow(clippy::enum_variant_names)]
pub enum PrimitiveErrorKind { pub enum PrimitiveErrorKind {
#[error("Invalid boolean literal: {0}")] #[error("Invalid boolean literal: {0}")]
InvalidBoolLiteral(#[from] ParseBoolError), InvalidBoolLiteral(#[from] ParseBoolError),

View file

@ -24,7 +24,6 @@
//! //!
//! ```rust //! ```rust
//! use php_literal_parser::from_str; //! use php_literal_parser::from_str;
//! # use serde_derive::Deserialize;
//! use serde::Deserialize; //! use serde::Deserialize;
//! # use std::fmt::Debug; //! # use std::fmt::Debug;
//! # use std::error::Error; //! # use std::error::Error;
@ -306,7 +305,7 @@ impl Display for Value {
Value::Float(val) => write!(f, "{}", val), Value::Float(val) => write!(f, "{}", val),
Value::String(val) => write!(f, "{}", val), Value::String(val) => write!(f, "{}", val),
Value::Array(val) => { Value::Array(val) => {
write!(f, "[\n")?; writeln!(f, "[")?;
for (key, value) in val.iter() { for (key, value) in val.iter() {
write!(f, "\t{} => {},", key, value)?; write!(f, "\t{} => {},", key, value)?;
} }

View file

@ -43,7 +43,7 @@ pub fn parse_int(src: &str) -> Result<i64, ParseIntError> {
let (radix, digits) = match digits { let (radix, digits) = match digits {
[b'0', b'x', tail @ ..] => (16, tail), [b'0', b'x', tail @ ..] => (16, tail),
[b'0', b'b', tail @ ..] => (2, tail), [b'0', b'b', tail @ ..] => (2, tail),
[b'0', tail @ ..] if tail.len() > 0 => (8, tail), [b'0', tail @ ..] if !tail.is_empty() => (8, tail),
tail => (10, tail), tail => (10, tail),
}; };

View file

@ -87,7 +87,7 @@ impl<'de> Deserializer<'de> {
let token = self let token = self
.next_token() .next_token()
.expect_token(&[Token::Bool], self.source())?; .expect_token(&[Token::Bool], self.source())?;
Ok(self.parser.parse_bool_token(token)?) self.parser.parse_bool_token(token)
} }
fn push_peeked(&mut self, peeked: SpannedToken<'de>) { fn push_peeked(&mut self, peeked: SpannedToken<'de>) {
@ -119,22 +119,22 @@ impl<'de> Deserializer<'de> {
.next_token() .next_token()
.expect_token(&[Token::Integer], self.source())?; .expect_token(&[Token::Integer], self.source())?;
let span = token.span.clone(); let span = token.span.clone();
Ok(T::try_from(self.parser.parse_int_token(token)?) T::try_from(self.parser.parse_int_token(token)?)
.or_else(|_| Err(ParseIntError::Overflow).with_span(span, self.source()))?) .or_else(|_| Err(ParseIntError::Overflow).with_span(span, self.source()))
} }
fn parse_float(&mut self) -> Result<f64> { fn parse_float(&mut self) -> Result<f64> {
let token = self let token = self
.next_token() .next_token()
.expect_token(&[Token::Float], self.source())?; .expect_token(&[Token::Float], self.source())?;
Ok(self.parser.parse_float_token(token)?) self.parser.parse_float_token(token)
} }
fn parse_string(&mut self) -> Result<String> { fn parse_string(&mut self) -> Result<String> {
let token = self let token = self
.next_token() .next_token()
.expect_token(&[Token::LiteralString], self.source())?; .expect_token(&[Token::LiteralString], self.source())?;
Ok(self.parser.parse_string_token(token)?) self.parser.parse_string_token(token)
} }
} }
@ -348,7 +348,7 @@ impl<'de, 'a> de::Deserializer<'de> for &'a mut Deserializer<'de> {
visitor.visit_newtype_struct(self) visitor.visit_newtype_struct(self)
} }
fn deserialize_seq<V>(mut self, visitor: V) -> Result<V::Value> fn deserialize_seq<V>(self, visitor: V) -> Result<V::Value>
where where
V: Visitor<'de>, V: Visitor<'de>,
{ {
@ -365,7 +365,7 @@ impl<'de, 'a> de::Deserializer<'de> for &'a mut Deserializer<'de> {
_ => unreachable!(), _ => unreachable!(),
}; };
let value = visitor.visit_seq(ArrayWalker::new(&mut self, syntax))?; let value = visitor.visit_seq(ArrayWalker::new(self, syntax))?;
Ok(value) Ok(value)
} }
@ -388,7 +388,7 @@ impl<'de, 'a> de::Deserializer<'de> for &'a mut Deserializer<'de> {
self.deserialize_seq(visitor) self.deserialize_seq(visitor)
} }
fn deserialize_map<V>(mut self, visitor: V) -> Result<V::Value> fn deserialize_map<V>(self, visitor: V) -> Result<V::Value>
where where
V: Visitor<'de>, V: Visitor<'de>,
{ {
@ -405,7 +405,7 @@ impl<'de, 'a> de::Deserializer<'de> for &'a mut Deserializer<'de> {
_ => unreachable!(), _ => unreachable!(),
}; };
let value = visitor.visit_map(ArrayWalker::new(&mut self, syntax))?; let value = visitor.visit_map(ArrayWalker::new(self, syntax))?;
Ok(value) Ok(value)
} }
@ -528,7 +528,7 @@ impl<'de, 'a> SeqAccess<'de> for ArrayWalker<'de, 'a> {
self.source(), self.source(),
)?; )?;
let value_token = match next.token.clone() { let value_token = match next.token {
Token::Comma => token, Token::Comma => token,
Token::Arrow => { Token::Arrow => {
let span = token.span.clone(); let span = token.span.clone();

View file

@ -31,7 +31,10 @@ impl UnescapeState {
fn push_raw(&mut self, c: u32) -> UnescapeResult<()> { fn push_raw(&mut self, c: u32) -> UnescapeResult<()> {
match std::char::from_u32(c) { match std::char::from_u32(c) {
Some(c) => Ok(self.push_char(c)), Some(c) => {
self.push_char(c);
Ok(())
},
None => Err(UnescapeError), None => Err(UnescapeError),
} }
} }
@ -193,7 +196,7 @@ impl<'a> PeekableBytes<'a> {
self.slice.get(self.pos).copied() self.slice.get(self.pos).copied()
} }
pub fn as_slice(self) -> &'a [u8] { pub fn as_slice(&self) -> &'a [u8] {
&self.slice[self.pos..] &self.slice[self.pos..]
} }
} }
@ -205,7 +208,7 @@ pub fn is_array_key_numeric(string: &str) -> bool {
return false; return false;
} }
bytes.all(|byte| matches!(byte, b'0'..=b'9')) bytes.all(|byte| byte.is_ascii_digit())
} }
#[cfg(test)] #[cfg(test)]
@ -214,19 +217,19 @@ mod tests {
#[test] #[test]
fn test_is_numeric() { fn test_is_numeric() {
assert_eq!(true, is_array_key_numeric("123")); assert!(is_array_key_numeric("123"));
assert_eq!(true, is_array_key_numeric("-123")); assert!(is_array_key_numeric("-123"));
assert_eq!(true, is_array_key_numeric("0")); assert!(is_array_key_numeric("0"));
assert_eq!(false, is_array_key_numeric("0123")); assert!(!is_array_key_numeric("0123"));
assert_eq!(false, is_array_key_numeric("123asd")); assert!(!is_array_key_numeric("123asd"));
assert_eq!(false, is_array_key_numeric("+123")); assert!(!is_array_key_numeric("+123"));
} }
#[test] #[test]
fn test_unescape_single() { fn test_unescape_single() {
assert_eq!(unescape::<SingleQuoteString>(&r#"abc"#), Ok("abc".into())); assert_eq!(unescape::<SingleQuoteString>(r#"abc"#), Ok("abc".into()));
assert_eq!( assert_eq!(
unescape::<SingleQuoteString>(&r#"ab\nc"#), unescape::<SingleQuoteString>(r#"ab\nc"#),
Ok("ab\\nc".into()) Ok("ab\\nc".into())
); );
assert_eq!( assert_eq!(
@ -256,9 +259,9 @@ mod tests {
#[test] #[test]
fn test_unescape_double() { fn test_unescape_double() {
assert_eq!(unescape::<DoubleQuoteString>(&r#"abc"#), Ok("abc".into())); assert_eq!(unescape::<DoubleQuoteString>(r#"abc"#), Ok("abc".into()));
assert_eq!( assert_eq!(
unescape::<DoubleQuoteString>(&r#"ab\nc"#), unescape::<DoubleQuoteString>(r#"ab\nc"#),
Ok("ab\nc".into()) Ok("ab\nc".into())
); );
assert_eq!( assert_eq!(