2023秋冬季开源操作系统训练营日志(一)

  • 2023年 10月14日
  • 读完约需 1 分钟
  • • 
  • 标签: 
  • oscamp
  • rust
  • riscv
  • 最后更新于 2023年 10月14日

关于clippy3的问题

题目代码:

[allow(unused_variables, unused_assignments)]
fn main() {
    let my_option: Option<()> = None;
    if my_option.is_none() {
        my_option.unwrap();
    }

    let my_arr = &[
        -1, -2, -3
        -4, -5, -6
    ];
    println!("My array! Here it is: {:?}", my_arr);

    let mut my_empty_vec = vec![1, 2, 3, 4, 5];
    my_empty_vec.clear();
    println!("This Vec is empty, see? {:?}", my_empty_vec);

    let mut value_a = 45;
    let mut value_b = 66;
    // Let's swap these two!
    // value_a = value_b;
    // value_b = value_a;
    std::mem::swap(&mut value_a, &mut value_b);
    println!("value a: {}; value b: {}", value_a, value_b);
}

开始以为是只要编译通过就可以,查看了资料,找到如下clippy对于的属性宏配置

代码段属性宏说明
my_option.unwrap();clippy::panicking_unwrap对必然导致panicking的unwrap不报错
-1, -2, -3clippy::possible_missing_comma数组定义时折行,但行尾未加逗号