1 个不稳定版本
0.1.0 | 2023 年 10 月 3 日 |
---|
#4 在 #cfg-attr
5KB
arg_attr
根据配置条件检查指定接受的参数。
示例
简单却愚蠢的示例
#![allow(dead_code)]
use arg_attr::args;
#[args(_url: String)]
fn silly_drop() {
drop(_url);
}
在上面的示例中,args
属性无条件指定了 silly_drop
函数的参数。单独使用时它相当无用,但可以与 #[cfg_attr(...)]
结合使用进行条件编译。
use pyo3::prelude::Python;
use qualifier_attr::qualifiers;
use arg_attr::args;
// At the moment of writing, `pyo3` does not support async functions.
// https://github.com/PyO3/pyo3/issues/1632
#[cfg_attr(feature="python", args(py: Python<'_>, url: &'str))]
#[cfg_attr(not(feature="python"), args(url: &'str), qualifiers(async))]
fn fetch() {
todo!()
}
相关包
依赖项
~245–690KB
~16K SLoC