【问题标题】:How to create alias to another keyword in rust如何在 rust 中为另一个关键字创建别名
【发布时间】:2022-01-19 23:59:06
【问题描述】:

是否可以在 Rust 中创建新的关键字作为另一个关键字的别名?

例如,创建指向fn 的关键字fun 并将其用作fn


// somehow alias `fun` to `fn`

fun main() {
  println!("Hello, world!")
}

如果可能,如何实现?

【问题讨论】:

    标签: rust metaprogramming keyword


    【解决方案1】:

    如果您正在寻找 C 的 #define 的替代品,那么没有任何东西可以让任意词用作关键字(这可能是件好事)。

    如果你想给一个类型起别名,Rust 有 type,它可以用来将 i64 重命名为 int,例如:type int = i64;

    【讨论】:

      【解决方案2】:

      其实你可以通过过程宏来做到这一点,因为它只是“字符串转换”。

      你不能使用 crate dtolnay/syn 来简化工作。

      【讨论】:

      • 你不能做 OP 正在寻找的东西。您只能将整个 fn 包装在一个可以对其进行转换的宏中,甚至不需要一个过程宏。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-07-28
      • 2015-06-24
      • 2021-08-23
      • 2022-11-15
      • 1970-01-01
      • 2012-03-05
      • 1970-01-01
      相关资源
      最近更新 更多