Implement all clippy suggestions

This commit is contained in:
Henrik Tjäder 2020-10-13 14:16:33 +00:00
parent 355cb82d06
commit 21253297e4
11 changed files with 61 additions and 29 deletions

View file

@ -28,7 +28,7 @@ pub fn app(analysis: P<analyze::Analysis>, app: &App) -> P<Analysis> {
let priorities = app
.software_tasks
.values()
.filter_map(|task| Some(task.args.priority))
.map(|task| task.args.priority)
.collect::<BTreeSet<_>>();
if !priorities.is_empty() {

View file

@ -44,9 +44,9 @@ pub fn app<'a>(app: &'a App, _analysis: &Analysis) -> parse::Result<Extra<'a>> {
let priorities = app
.software_tasks
.iter()
.filter_map(|(name, task)| {
.map(|(name, task)| {
first = Some(name);
Some(task.args.priority)
task.args.priority
})
.collect::<HashSet<_>>();
@ -97,7 +97,7 @@ pub fn app<'a>(app: &'a App, _analysis: &Analysis) -> parse::Result<Extra<'a>> {
},
"peripherals" => match v {
CustomArg::Bool(x) => peripherals = if *x { true } else { false },
CustomArg::Bool(x) => peripherals = *x,
_ => {
return Err(parse::Error::new(
k.span(),

View file

@ -28,7 +28,7 @@ pub fn codegen(
// call_idle
TokenStream2,
) {
if app.idles.len() > 0 {
if !app.idles.is_empty() {
let idle = &app.idles.first().unwrap();
let mut needs_lt = false;
let mut mod_app = None;

View file

@ -8,12 +8,7 @@ use crate::{
codegen::{locals, module, resources_struct, util},
};
/// Generates support code for `#[init]` functions
pub fn codegen(
app: &App,
analysis: &Analysis,
extra: &Extra,
) -> (
type CodegenResult = (
// mod_app_idle -- the `${init}Resources` constructor
Option<TokenStream2>,
// root_init -- items that must be placed in the root of the crate:
@ -28,8 +23,11 @@ pub fn codegen(
Vec<TokenStream2>,
// call_init -- the call to the user `#[init]` if there's one
Option<TokenStream2>,
) {
if app.inits.len() > 0 {
);
/// Generates support code for `#[init]` functions
pub fn codegen(app: &App, analysis: &Analysis, extra: &Extra) -> CodegenResult {
if !app.inits.is_empty() {
let init = &app.inits.first().unwrap();
let mut needs_lt = false;
let name = &init.name;

View file

@ -9,7 +9,7 @@ pub fn codegen(app: &App, analysis: &Analysis) -> Vec<TokenStream2> {
let mut stmts = vec![];
// Initialize late resources
if analysis.late_resources.len() > 0 {
if !analysis.late_resources.is_empty() {
// BTreeSet wrapped in a vector
for name in analysis.late_resources.first().unwrap() {
// If it's live

View file

@ -56,7 +56,7 @@ pub fn codegen(
pub static mut #fq: #fq_ty = #fq_expr;
));
let ref elems = (0..cap)
let elems = &(0..cap)
.map(|_| quote!(core::mem::MaybeUninit::uninit()))
.collect::<Vec<_>>();

View file

@ -26,7 +26,7 @@ pub fn codegen(app: &App, analysis: &Analysis, extra: &Extra) -> Vec<TokenStream
})
.collect::<Vec<_>>();
let doc = format!("Tasks that can be scheduled");
let doc = "Tasks that can be scheduled".to_string();
items.push(quote!(
#[doc = #doc]
#[allow(non_camel_case_types)]
@ -41,7 +41,7 @@ pub fn codegen(app: &App, analysis: &Analysis, extra: &Extra) -> Vec<TokenStream
// Static variable and resource proxy
{
let doc = format!("Timer queue");
let doc = "Timer queue".to_string();
let cap = app
.software_tasks
.iter()

View file

@ -90,12 +90,17 @@ pub fn interrupt_ident() -> Ident {
pub fn is_exception(name: &Ident) -> bool {
let s = name.to_string();
match &*s {
"MemoryManagement" | "BusFault" | "UsageFault" | "SecureFault" | "SVCall"
| "DebugMonitor" | "PendSV" | "SysTick" => true,
_ => false,
}
matches!(
&*s,
"MemoryManagement"
| "BusFault"
| "UsageFault"
| "SecureFault"
| "SVCall"
| "DebugMonitor"
| "PendSV"
| "SysTick"
)
}
/// Generates a pre-reexport identifier for the "late resources" struct
@ -209,7 +214,7 @@ pub fn rq_ident(priority: u8) -> Ident {
/// Generates an identifier for the `enum` of `schedule`-able tasks
pub fn schedule_t_ident() -> Ident {
Ident::new(&format!("SCHED_T"), Span::call_site())
Ident::new(&"SCHED_T".to_string(), Span::call_site())
}
/// Generates an identifier for the `enum` of `spawn`-able tasks
@ -229,5 +234,5 @@ pub fn suffixed(name: &str) -> Ident {
///
/// At most there is one timer queue
pub fn tq_ident() -> Ident {
Ident::new(&format!("TQ"), Span::call_site())
Ident::new(&"TQ".to_string(), Span::call_site())
}