کامپایلر Lints و Clippy

کامپایلر Rust پیام‌های خطای جالب و همچنین built-in lint مناسبی تولید می‌کند. Clippy که lintهای بیشتری را ارائه می‌دهد، که در گروه‌هایی سازماندهی شده‌اند که می‌توانند در هر پروژه فعال شوند.

#[deny(clippy::cast_possible_truncation)]
fn main() {
    let x = 3;
    while (x < 70000) {
        x *= 2;
    }
    println!(""X احتمالاً در یک u16 مناسب است، درست است؟ {}"X احتمالاً در یک u16 مناسب است، درست است؟ {}", x as u16);
}
This slide should take about 3 minutes.

نمونه کد را اجرا کنید و پیام خطا را بررسی کنید. lintهایی نیز در اینجا قابل مشاهده هستند، اما پس از کامپایل شدن کد، آن‌ها نشان‌داده نمی‌شوند. برای نمایش آن lintها به سایت Playground بروید.

پس از رفع lintها، clippy را در سایت playground اجرا کنید تا هشدارهای clippy نشان داده شود. Clippy مستندات گسترده‌ای از lintهای خود دارد و همیشه lintهای جدید (از جمله default-deny lint) را اضافه می‌کند.

توجه داشته باشید که خطاها یا هشدارهای مربوط به help: ... را می‌توان با cargo fix یا از طریق ویرایشگر خود برطرف کرد.