小编Pur*_*reW的帖子

在Rust中等效__func__或__FUNCTION__?

在C和C++中,您可以通过__func__C99和C++ 11以及___FUNCTION___MSVC 的宏获取当前正在执行的函数的名称.

在Rust中有相同的吗?

__func__C中的示例:

#include "stdio.h"

void funny_hello() {
    printf ("Hello from %s\n", __func__);
}

int main() {
    funny_hello();
}
Run Code Online (Sandbox Code Playgroud)

输出Hello from funny_hello.

macros rust

15
推荐指数
4
解决办法
1946
查看次数

允许使用Rust稳定和夜间通道并行编译代码有多难?

Cargo创建的默认文件树允许并行编译发布和调试版本,因为它们位于自己的目录中; target/release而且target/debug,分别.

同样允许并行编译stable/ nightly-compiler 是多么困难.例如,使用目录

  • target/debug/stable
  • target/debug/nightly

我知道它可以用jails /容器来完成,但我希望有更多的货物解决方案.

rust rust-cargo

9
推荐指数
1
解决办法
617
查看次数

我应该在Rust中放置测试实用程序功能?

我有以下代码定义生成文件的路径:

fn gen_test_dir() -> tempdir::TempDir {                                        
    tempdir::TempDir::new_in(Path::new("/tmp"), "filesyncer-tests").unwrap()   
} 
Run Code Online (Sandbox Code Playgroud)

这个函数定义在tests/lib.rs,在该文件的测试中使用,我也想在位于的单元测试中使用它src/lib.rs.

如果不将实用程序功能编译成非测试二进制文件而不重复代码,是否可以实现?

testing unit-testing rust

8
推荐指数
2
解决办法
1034
查看次数

在Rust中进行单元测试后清理的好方法是什么?

由于测试功能在故障时中止,因此不能简单地在被测功能结束时进行清理.

从其他语言的测试框架来看,通常有一种方法可以设置一个回调来处理每个测试函数末尾的清理.

unit-testing rust

8
推荐指数
1
解决办法
471
查看次数

如何延迟未命名对象的销毁?

我正在使用该TempDir结构在磁盘上创建和删除文件夹。在TempDir本身不从它的建筑除了代码中引用。

由于编译器对未使用的对象发出警告,我尝试(取消)将 TempDir-struct 命名为,_但这会导致该结构立即被销毁。

有没有很好的解决方案?

示例代码,比较onetwo

pub struct Res;
impl Drop for Res {
    fn drop(&mut self) {
        println!("Dropping self!");
    }
}

fn one() {
    println!("one");
    let r = Res; // <--- Dropping at end of function 
                 //      but compiler warns about unused object
    println!("Before exit");
}

fn two() {
    println!("two");
    let _ = Res;  // <--- Dropping immediately
    println!("Before exit");
}

fn main() {
    one();
    two(); …
Run Code Online (Sandbox Code Playgroud)

rust

4
推荐指数
1
解决办法
93
查看次数

标签 统计

rust ×5

unit-testing ×2

macros ×1

rust-cargo ×1

testing ×1