rust - 切换依赖箱功能的功能
问题描述
我对 Rust 有点陌生,遇到了一个问题,我想在我的 crate 中创建一个特性,指定应该包含依赖 crate 的哪些特性。
更具体地说,我使用的是 image-rs crate,它定义了库应该支持的图像格式的特性。
我希望我的 crate 有一个功能,它指定编译 image-rs crate 的其他图像格式功能。例如:
# Cargo.toml
[dependencies]
image = { version = "^0.23.6", features = ["png", "jpeg"] }
[features]
# I dont know the syntax to include image in my feature with specific image crate featres.
extra-image-formats = [ "image {features = [jpeg, png, gif, webp]}" ]
这支持吗?会很好;我希望默认包含来自 image-rs crate 的常用图像格式,但选择加入更多图像格式(代价是更大的二进制文件和更长的编译时间,因为所有额外的解码器和编码器)。
提前致谢!
解决方案
如货物手册中所述,您可以使用crate/feature
来引用依赖项的功能。因此,您的示例将如下所示:
# Cargo.toml
[dependencies]
image = { version = "^0.23.6", features = ["png", "jpeg"] }
[features]
extra-image-formats = [ "image/jpeg", "image/png", "image/gif", "image/webp" ]
推荐阅读
- android - 如何在没有 root 的情况下从 Android shell 中永久删除文件
- vue.js - 如何在应用启动前在 Nuxt.js 中创建预加载/启动画面?
- ruby-on-rails - 批量添加物品栏杆 6
- shell - 在 debian 中创建一个脚本,该脚本将从名称文件中创建一个具有不同名称顺序的新文件
- fluentui-react - 设置 Fluent React TagPicker 的值?
- node.js - node-powershell 无法让调用命令工作
- javascript - Material UI:如何在 React Material Ui Stepper 中更改标签的字体大小?
- javascript - 当章节标题滚动到顶部时,侧边栏链接不会改变,它们会更早改变
- regex - 避免在正则表达式模式中的字符之间
- python - 从零开始的逻辑回归