fand ich this discussion über Tupel splatting, aber es ist von 2014Tuple Splat/apply in Rust
Das Beispiel ist:
fn sum(x: i32, y: i32) -> i32 {
x + y
}
fn prepare_args() -> (i32, i32) {
(1, 2)
}
fn main() {
sum(prepare_args()); // Doesn't work
}
Und die vorgeschlagene Lösung ist Ihre eigene apply
Funktion zu rollen:
fn apply<A,B,C>(f: |A,B|->C, t: (A,B)) -> C {
let (a,b) = t;
f(a,b)
}
fn main() {
apply(sum, prepare_args());
}
Ist dies derzeit der beste Weg zu gehen? Wenn ja, wie lautet die korrekte Syntax? Ich bekomme einige Fehler einschließlich expected type, found
| at line 1 col 20
mit dem oben genannten.
Gibt es noch keinen Tupel Splat Operator?