首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我如何为一个代码区域而不是一个单独的项目关闭rustfmt?

我如何为一个代码区域而不是一个单独的项目关闭rustfmt?
EN

Stack Overflow用户
提问于 2021-04-28 02:15:20
回答 1查看 714关注 0票数 4

#[rustfmt::skip] allows you to skip a "block" of code while formatting,但这需要将skip放在每个{}上,而不是Clang风格的on/off

考虑下面的代码:

代码语言:javascript
复制
fn add(a : i32, b : i32) -> i32 { a + b }
fn sub(a : i32, b : i32) -> i32 { a - b }

rustfmt会将其格式化为:

代码语言:javascript
复制
fn add(a: i32, b: i32) -> i32 {
    a + b
}
fn sub(a: i32, b: i32) -> i32 {
    a - b
}

我们需要两个#[rustfmt::skip]属性,而不是一个on/off

对于单行函数,有一个rustfmt选项,但此示例仅用于演示目的。我想控制区域中任何可能的rustfmt设置。

EN

回答 1

Stack Overflow用户

发布于 2021-04-28 03:26:54

您可以将不想格式化的函数放在一个模块中,用#[rustfmt::skip]标记整个模块,然后用use将这些项放入父模块。

代码语言:javascript
复制
#[rustfmt::skip]
mod unformatted {
    pub fn add(a : i32, b : i32) -> i32 { a + b }
    pub fn sub(a : i32, b : i32) -> i32 { a - b }
}

use unformatted::*;

fn main() {
    dbg!(add(2, 3));
}
票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67288537

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档