From 072730f6f6a0f85cbcd1e2515682eb7122e8022a Mon Sep 17 00:00:00 2001 From: Graham Esau Date: Sun, 20 Aug 2023 17:19:53 +0100 Subject: [PATCH] Resolve clippy warnings --- .vscode/settings.json | 3 +++ schemars/src/flatten.rs | 10 ++++++---- schemars/src/gen.rs | 5 +---- schemars_derive/src/ast/mod.rs | 5 +---- schemars_derive/src/attr/mod.rs | 7 ++----- schemars_derive/src/regex_syntax.rs | 3 ++- 6 files changed, 15 insertions(+), 18 deletions(-) create mode 100644 .vscode/settings.json diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..a833602 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "rust-analyzer.check.command": "clippy" +} \ No newline at end of file diff --git a/schemars/src/flatten.rs b/schemars/src/flatten.rs index 35a734f..e55cb7f 100644 --- a/schemars/src/flatten.rs +++ b/schemars/src/flatten.rs @@ -171,8 +171,10 @@ fn is_null_type(schema: &Schema) -> bool { Schema::Object(s) => s, _ => return false, }; - match &s.instance_type { - Some(SingleOrVec::Single(t)) if **t == InstanceType::Null => true, - _ => false, - } + let instance_type = match &s.instance_type { + Some(SingleOrVec::Single(t)) => t, + _ => return false, + }; + + **instance_type == InstanceType::Null } diff --git a/schemars/src/gen.rs b/schemars/src/gen.rs index 58eaa61..20c8dc0 100644 --- a/schemars/src/gen.rs +++ b/schemars/src/gen.rs @@ -18,6 +18,7 @@ use std::{any::Any, collections::HashSet, fmt::Debug}; /// The default settings currently conform to [JSON Schema Draft 7](https://json-schema.org/specification-links.html#draft-7), but this is liable to change in a future version of Schemars if support for other JSON Schema versions is added. /// If you require your generated schemas to conform to draft 7, consider using the [`draft07`](#method.draft07) method. #[derive(Debug, Clone)] +#[non_exhaustive] pub struct SchemaSettings { /// If `true`, schemas for [`Option`](Option) will include a `nullable` property. /// @@ -45,7 +46,6 @@ pub struct SchemaSettings { /// /// Defaults to `false`. pub inline_subschemas: bool, - _hidden: (), } impl Default for SchemaSettings { @@ -64,7 +64,6 @@ impl SchemaSettings { meta_schema: Some("http://json-schema.org/draft-07/schema#".to_owned()), visitors: vec![Box::new(RemoveRefSiblings)], inline_subschemas: false, - _hidden: (), } } @@ -77,7 +76,6 @@ impl SchemaSettings { meta_schema: Some("https://json-schema.org/draft/2019-09/schema".to_owned()), visitors: Vec::default(), inline_subschemas: false, - _hidden: (), } } @@ -101,7 +99,6 @@ impl SchemaSettings { }), ], inline_subschemas: false, - _hidden: (), } } diff --git a/schemars_derive/src/ast/mod.rs b/schemars_derive/src/ast/mod.rs index 7b9052e..250a3b2 100644 --- a/schemars_derive/src/ast/mod.rs +++ b/schemars_derive/src/ast/mod.rs @@ -69,10 +69,7 @@ impl<'a> Variant<'a> { } pub fn is_unit(&self) -> bool { - match self.style { - serde_ast::Style::Unit => true, - _ => false, - } + matches!(self.style, serde_ast::Style::Unit) } } diff --git a/schemars_derive/src/attr/mod.rs b/schemars_derive/src/attr/mod.rs index f790694..79b468a 100644 --- a/schemars_derive/src/attr/mod.rs +++ b/schemars_derive/src/attr/mod.rs @@ -190,8 +190,7 @@ impl Attrs { } pub fn is_default(&self) -> bool { - match self { - Self { + matches!(self, Self { with: None, title: None, description: None, @@ -200,9 +199,7 @@ impl Attrs { repr: None, crate_name: None, is_renamed: _, - } if examples.is_empty() => true, - _ => false, - } + } if examples.is_empty()) } } diff --git a/schemars_derive/src/regex_syntax.rs b/schemars_derive/src/regex_syntax.rs index 750d1e2..11cd638 100644 --- a/schemars_derive/src/regex_syntax.rs +++ b/schemars_derive/src/regex_syntax.rs @@ -1,5 +1,6 @@ +#![allow(clippy::all)] // Copied from regex_syntax crate to avoid pulling in the whole crate just for a utility function -// https://github.com/rust-lang/regex/blob/ff283badce21dcebd581909d38b81f2c8c9bfb54/regex-syntax/src/lib.rs +// https://github.com/rust-lang/regex/blob/431c4e4867e1eb33eb39b23ed47c9934b2672f8f/regex-syntax/src/lib.rs // // Copyright (c) 2014 The Rust Project Developers //