rust numeric generic-programming traits

Rasgo para la funcionalidad numérica en Rust



numeric generic-programming (1)

Puede usar las cajas num o num-traits y vincular su tipo de función genérica con num::Float , num::Integer o cualquier rasgo relevante:

extern crate num; use num::Float; fn main() { let f1: f32 = 2.0; let f2: f64 = 3.0; let i1: i32 = 3; println!("{:?}", sqrt(f1)); println!("{:?}", sqrt(f2)); println!("{:?}", sqrt(i1)); // error } fn sqrt<T: Float>(input: T) -> T { input.sqrt() }

¿Hay algún rasgo que especifique alguna funcionalidad numérica? Me gustaría usarlo para delimitar un tipo genérico, como este hipotético HasSQRT :

fn some_generic_function<T>(input: &T) where T: HasSQRT { // ... input.sqrt() // ... }