与 Rust 中的 `R`(泛型)有什么相同之处?

What is the same as `R` (generics) in Rust?

Java 的 R(代表 Return)在 rust 中的等价物是什么?

例如,我如何用 Rust 编写这样的东西?

<R> R accept(Visitor<R> visitor) {
    return visitor.visitAssignExpr(this);
}

关于 this post

Rust 中的等价物是:

fn accept<R>(&self, visitor: Visitor<R>) -> R {
    visitor.visit_assign_expr(self)
}

R只是一个标识符;它并没有什么特别的意思,可以很容易地成为 TReturn。在 Rust 中,函数的泛型列表位于函数名和参数之间。注意:我对语法和约定进行了其他更改。

除了语法之外,Rust 泛型的行为或约束可能与 Java 中的不同。考虑通读 Rust Book, it has a chapter on Generic Data Types.

另请参阅: