Rust 一个别名能在锈迹中绑定更高等级的特征吗?

Rust 一个别名能在锈迹中绑定更高等级的特征吗?,rust,Rust,我的程序有一系列对通用整数进行操作的函数。它们通常采用以下形式: use num::{FromPrimitive,Integer,ToPrimitive}; 使用std::cmp::Ord; 使用std::ops::{Add,Mul}; 功能一 哪里 I:Integer+Clone+FromPrimitive+ToPrimitive, 对于否,不可能使用新的特征 虽然有可能将第二个需求包含在特征定义中 trait GInteger: Integer + Clone + FromPrimitive

我的程序有一系列对通用整数进行操作的函数。它们通常采用以下形式:

use num::{FromPrimitive,Integer,ToPrimitive};
使用std::cmp::Ord;
使用std::ops::{Add,Mul};
功能一
哪里
I:Integer+Clone+FromPrimitive+ToPrimitive,

对于否,不可能使用新的特征

虽然有可能将第二个需求包含在特征定义中

trait GInteger: Integer + Clone + FromPrimitive + ToPrimitive
where
    for<'b> &'b Self: Mul<Output = Self> + Add<Output = Self> + Ord,
{
}

如果你用的是夜锈,你可以用它来代替,这正好解决了这个问题

#![特征(特征别名)]
使用num::{FromPrimitive,Integer,TopPrimitive};
使用std::cmp::Ord;
使用std::ops::{Add,Mul};
//定义特征别名
trait GInteger=Integer+Clone+FromPrimitive+ToPrimitive
哪里
因为我{
n*n
}