keep-starknet-strange / cairo-lint

A collection of lints to catch common mistakes and improve your Cairo code.
19 stars 37 forks source link

Add `manual_is_some` #104

Closed chachaleo closed 1 month ago

chachaleo commented 1 month ago

What it does

Finds patterns that reimplement Option::is_some.

Why is this bad?

Concise code helps focusing on behavior instead of boilerplate.

Example

let foo: Option::<i32> = Option::None;
let _foo = match foo {
    Option::Some(_) => true,
    Option::None => false,
};

Use instead :

let foo: Option::<i32> = Option::None;
let _foo = foo.is_some();