问题标签 [rust-crates]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
rust - 从 lint 中找出 crate 的当前版本?
我正在开发一个扩展的弃用 lint,它可以决定某些东西是否已经被弃用或将被弃用。但是还有一个问题:Crates 似乎没有版本信息。我知道我可以使用 cargo 将设置的一些环境变量来获取当前 Crate 的版本,但这不足以区分依赖项的弃用部分。
我至少可以通过ctx.sess.local_crate_source_file
(如 fhahn 的当前 PR .
因此,除非获取文件路径并手动查找和解析Cargo.lock
(我认为这很脆弱而且很笨拙),有没有办法获取依赖项的版本号,如果有,怎么做?
module - 我是如何弄乱这些模块的?
我正在尝试创建一个包含库和一个或多个二进制文件的板条箱。我看过带有库和二进制文件的 Rust 包?以及关于 crates 和模块的 Rust 书籍部分,但是当我尝试编译时仍然遇到错误。
我已经包含了每个文件的相关部分(我认为)。
../cargo.toml:
lib.rs:
lib_plotMote/mod.rs:
lib_plotMote/LogstreamProcessor.rs:
main.rs:
错误:
module - 使用嵌套模块中的项目时出现“未解析的导入”
我有一个小程序,我一直在尝试开始工作,但我不断收到未解决的导入消息。
main.rs:
sub_module.rs:
sub_sub_module.rs:
但是,在执行时,cargo build
我得到一个“未解决的导入sub_sub_module::a_structure
”。我发现的有关可见性的所有内容都表明这应该可以工作,但不能。我在这里想念什么?
rust - 无法跟踪 Rust 中的类型预期错误
存储库
https://github.com/hunterlester/rusty_arcade
版本
Rust:1.7.0
sdl2:0.16.1
sdl2_image:0.16.0
错误
沿着指定文件的第 93 行和第 94 行跟踪它。
我假设这与.to_sdl()
方法返回的内容有关。
to_sdl 方法
to_sdl 返回一个在文件顶部使用的 SdlRect:
sdl2 源
https://github.com/AngryLawyer/rust-sdl2/blob/master/src/sdl2/rect.rs
我看不出sdl2::rect::Rect
应该在哪里包装在core::option::Option
枚举类型中。
如果您碰巧熟悉我正在学习的教程,您会注意到我使用的版本sdl2_image
与教程中指定的版本不同,因为指定的版本已从 Crates 中提取。
sdl2_image
取决于sdl2
我必须匹配的不同版本才能处理其他错误。
rust - 找不到“人造丝”的箱子
我正在尝试使用并行化查找 BST 的直径:
当我编译(rustc code.rs
)时,它显示
我的 Rust 版本是rustc 1.8.0 (db2939409 2016-04-11)
rust - 如何在 Rust 项目之间共享公共代码而不发布到 crates.io?
这个问题可能没有一个好的答案,但我有一些代码我想在两个不同的 Rust 项目之间共享,而不会将 crate 发布到 crates.io。
该代码是专有的,我不想将其公开。
installation - 通过 cargo 安装板条箱时出错:指定的包没有二进制文件
我正在尝试使用 Cargo 在我的系统(Arch Linux)上安装 Rust crate。我可以搜索 crates 并找到我需要的东西,例如:
当我尝试安装它时,我收到以下错误:
这是什么意思?我必须先从源代码构建它吗?如果 Cargo 不首先安装它,它的意义何在?
rust - 无法在我的 Rust 项目中使用 conrod 库:找不到板条箱活塞窗口
我是 Rust 的新手,我正在尝试使用Conrod 库打开一个窗口,就像他们在canvas.rs
示例中所做的那样:
当我在 Conrod 项目(我从 GitHub 下载的那个)的一个文件中使用此代码时,它可以工作,但是当我在自己的代码中使用它时它不起作用:
使用以下 Cargo.toml:
然后编译器告诉我:
我想我Cargo.toml
错了,但我不知道我应该做什么。
module - 创建一个包含多个模块的 Rust 库,这些模块都是一个统一的 API
我有一个练习库来学习 Rust。这个库提供了两种方法:
- 核心方法应该在一个名为renderay_core.rs的文件中。
- 使用核心方法的形状方法具有更高的抽象/更具体的核心方法实现;“常用”案例的便捷方法。这些应该在一个名为renderay_shapes.rs的文件中。
我还希望将单元测试作为子模块包含在其中。
我想到了类似的东西:
- renderay.rs是库源
[lib] path="src/renderay.rs"
- renderay_core.rs是一个模块,它作为 public(?) 加载到renderay.rs中以产生其 API
- renderay_shapes.rs也是 renderay.rs 中的一个模块,但也将 renderay_core.rs 导入其核心API
如果我将此 crate 作为依赖项加载,我希望renderay_core.rs和renderay_shapes.rs的 API可用。
我确信这是一项微不足道的任务,但我很难理解来自 Java 和 C 的模块机制。我已经阅读了crates 和模块文档。如何设置这样的结构并成功编译?