Skip to content

Commit 230f7d7

Browse files
committed
address some lint warnings
1 parent cfa4d2a commit 230f7d7

File tree

2 files changed

+20
-24
lines changed

2 files changed

+20
-24
lines changed

mavlink-bindgen/src/lib.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ fn _generate(
3939
) -> Result<GeneratedBindings, BindGenError> {
4040
let mut bindings = vec![];
4141

42-
for entry_maybe in read_dir(&definitions_dir).map_err(|source| {
42+
for entry_maybe in read_dir(definitions_dir).map_err(|source| {
4343
BindGenError::CouldNotReadDefinitionsDirectory {
4444
source,
4545
path: definitions_dir.to_path_buf(),
@@ -67,7 +67,7 @@ fn _generate(
6767
})?);
6868

6969
// generate code
70-
parser::generate(&definitions_dir, &definition_file, &mut outf)?;
70+
parser::generate(definitions_dir, &definition_file, &mut outf)?;
7171

7272
bindings.push(GeneratedBinding {
7373
module_name,

mavlink-bindgen/src/parser.rs

+18-22
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ use std::fs::File;
77
use std::io::{BufReader, Write};
88
use std::path::{Path, PathBuf};
99
use std::str::FromStr;
10-
use std::u32;
1110

1211
use quick_xml::{events::Event, Reader};
1312

@@ -330,7 +329,7 @@ impl MavEnum {
330329
value = quote!(#cnt);
331330
} else {
332331
let tmp_value = enum_entry.value.unwrap();
333-
cnt = cnt.max(tmp_value as u32);
332+
cnt = cnt.max(tmp_value);
334333
let tmp = TokenStream::from_str(&tmp_value.to_string()).unwrap();
335334
value = quote!(#tmp);
336335
};
@@ -366,7 +365,7 @@ impl MavEnum {
366365

367366
#[cfg(feature = "emit-description")]
368367
let description = if let Some(description) = self.description.as_ref() {
369-
let desc = format!("{description}");
368+
let desc = description.to_string();
370369
quote!(#[doc = #desc])
371370
} else {
372371
quote!()
@@ -1007,7 +1006,7 @@ pub enum MavXmlElement {
10071006
Extensions,
10081007
}
10091008

1010-
fn identify_element(s: &[u8]) -> Option<MavXmlElement> {
1009+
const fn identify_element(s: &[u8]) -> Option<MavXmlElement> {
10111010
use self::MavXmlElement::*;
10121011
match s {
10131012
b"version" => Some(Version),
@@ -1072,7 +1071,7 @@ pub fn parse_profile(
10721071
let mut events: Vec<Result<Event, quick_xml::Error>> = Vec::new();
10731072
let file = File::open(&in_path).map_err(|e| BindGenError::CouldNotReadDefinitionFile {
10741073
source: e,
1075-
path: in_path.to_path_buf(),
1074+
path: in_path.clone(),
10761075
})?;
10771076
let mut reader = Reader::from_reader(BufReader::new(file));
10781077
reader.trim_text(true);
@@ -1095,14 +1094,11 @@ pub fn parse_profile(
10951094
for e in events {
10961095
match e {
10971096
Ok(Event::Start(bytes)) => {
1098-
let id = match identify_element(bytes.name().into_inner()) {
1099-
None => {
1100-
panic!(
1101-
"unexpected element {:?}",
1102-
String::from_utf8_lossy(bytes.name().into_inner())
1103-
);
1104-
}
1105-
Some(kind) => kind,
1097+
let Some(id) = identify_element(bytes.name().into_inner()) else {
1098+
panic!(
1099+
"unexpected element {:?}",
1100+
String::from_utf8_lossy(bytes.name().into_inner())
1101+
);
11061102
};
11071103

11081104
assert!(
@@ -1117,20 +1113,20 @@ pub fn parse_profile(
11171113
is_in_extension = true;
11181114
}
11191115
MavXmlElement::Message => {
1120-
message = Default::default();
1116+
message = MavMessage::default();
11211117
}
11221118
MavXmlElement::Field => {
1123-
field = Default::default();
1119+
field = MavField::default();
11241120
field.is_extension = is_in_extension;
11251121
}
11261122
MavXmlElement::Enum => {
1127-
mavenum = Default::default();
1123+
mavenum = MavEnum::default();
11281124
}
11291125
MavXmlElement::Entry => {
1130-
entry = Default::default();
1126+
entry = MavEnumEntry::default();
11311127
}
11321128
MavXmlElement::Include => {
1133-
include = Default::default();
1129+
include = PathBuf::default();
11341130
}
11351131
MavXmlElement::Param => {
11361132
paramid = None;
@@ -1245,7 +1241,7 @@ pub fn parse_profile(
12451241
if entry.params.is_none() {
12461242
entry.params = Some(vec![]);
12471243
}
1248-
if let b"index" = attr.key.into_inner() {
1244+
if attr.key.into_inner() == b"index" {
12491245
let s = std::str::from_utf8(&attr.value).unwrap();
12501246
paramid = Some(s.parse::<usize>().unwrap());
12511247
}
@@ -1259,7 +1255,7 @@ pub fn parse_profile(
12591255
is_in_extension = true;
12601256
}
12611257
b"entry" => {
1262-
entry = Default::default();
1258+
entry = MavEnumEntry::default();
12631259
for attr in bytes.attributes() {
12641260
let attr = attr.unwrap();
12651261
match attr.key.into_inner() {
@@ -1319,7 +1315,7 @@ pub fn parse_profile(
13191315
eprintln!("TODO: deprecated {s:?}");
13201316
}
13211317
data => {
1322-
panic!("unexpected text data {:?} reading {:?}", data, s);
1318+
panic!("unexpected text data {data:?} reading {s:?}");
13231319
}
13241320
}
13251321
}
@@ -1497,7 +1493,7 @@ impl MavXmlFilter {
14971493
}
14981494
!self.extension_filter.is_in
14991495
}
1500-
Err(error) => panic!("Failed to filter XML: {}", error),
1496+
Err(error) => panic!("Failed to filter XML: {error}"),
15011497
}
15021498
}
15031499
}

0 commit comments

Comments
 (0)