调试rust的宏

释放双眼,带上耳机,听听看~!

nightly版本可以用 trace_macros!,具体看这个:
http://stackoverflow.com/questions/30200374/how-do-i-debug-macros

下面是我写的列子:

Play地址:http://is.gd/ENOHWJ

输出结果:

这个结果并不好,不能看到宏展开的过程

stable版本可以用这个命令:

输出:

用这个命令可以看到完整的展开过程,比如
foo!(x,bar);展开成了:match x { 3 => { bar(100); } _ => { } }; 这个看着就很直观了
let v = vec![1,2,3];展开成:let v = <[_]>::into_vec(::std::boxed::Box::new([1, 2, 3]));

目前不知道怎么用cargo build 展开,所以单独新建了一个rs文件看宏展开

给TA打赏
共{{data.count}}人
人已打赏
安全技术

c++ list, vector, map, set 区别与用法比较

2022-1-11 12:36:11

安全技术

5天玩转C#并行和多线程编程 —— 第二天 并行集合和PLinq

2022-1-11 12:36:11

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索