Предположим, у меня есть такая функция:
fn my<T: fmt::Debug, U>(x: T) {
println!("{:?}", mem::size_of::<U>());
println!("{:?}", x);
}
Это зависит от двух типов T
и U
. Я должен указать тип U
при вызове функции my
. С другой стороны, тип T
можно определить по переданному x, поэтому, это логично, я могу пропустить его при вызове.
Когда я пытаюсь:
my::<u8>(10);
I получить ошибку:
error[E0107]: wrong number of type arguments: expected 2, found 1
Как правильно сказать компилятору Rust получить тип T
из переданного x
и передать U
только в <...>
?