#cfg #macro #visibility #pub #target #linux #vis

cfg-vis

一个宏,用于支持在可见性上使用 #[cfg()]

3个版本 (破坏性更新)

0.3.0 2023年2月11日
0.2.2 2023年2月11日
0.2.1 2023年1月24日
0.2.0 2023年1月23日
0.1.0 2023年1月11日

#634 in 过程宏

Download history 2395/week @ 2024-03-14 2638/week @ 2024-03-21 1702/week @ 2024-03-28 2384/week @ 2024-04-04 3209/week @ 2024-04-11 2645/week @ 2024-04-18 1483/week @ 2024-04-25 2131/week @ 2024-05-02 2015/week @ 2024-05-09 1388/week @ 2024-05-16 954/week @ 2024-05-23 1060/week @ 2024-05-30 1180/week @ 2024-06-06 1129/week @ 2024-06-13 1375/week @ 2024-06-20 882/week @ 2024-06-27

每月下载量 4,856
8 个crate中使用了(直接使用2个)

MIT 协议

16KB
344

cfg-vis

一个宏,用于支持在可见性上使用 #[cfg()]

use cfg_vis::{cfg_vis, cfg_vis_fields};

// default visibility is `pub`, while the target is linux, the visibility is `pub(crate)`.
#[cfg_vis(target_os = "linux", pub(crate))]
pub fn foo() {}

#[cfg_vis_fields]
pub struct Foo {
    #[cfg_vis(test, pub)]
    pub_in_test: i32,
    #[cfg_vis(test)]
    pub prv_in_test: i32,
}

依赖项

~3.5MB
~75K SLoC