Wie vergleicht man den Inhalt eines eigenen Vektors mit einem statischen Vektor in Rust?

8

Als Teil eines Tests möchte ich behaupten, dass eine Funktion einen Vektor mit dem richtigen Inhalt zurückgibt. Ich habe daher die erwarteten Daten als statische Variable zur Verfügung gestellt. Ich kann jedoch keine geeignete Methode finden, um den Inhalt eines verwalteten Vektors mit der statischen Vektorvariablen zu vergleichen.

%Vor%

Update: Wenn Sie einen Verweis auf den statischen Vektor zuweisen, bevor Sie ihn vergleichen, wird das Problem gelöst. Daher habe ich ein kleines Makro erhalten, um die Gleichheit der Vektoren zu bestätigen:

%Vor%

Verwendung: assert_typed_eq([u8], my_data, expected_data);

    
Zargony 07.05.2013, 19:38
quelle

1 Antwort

6

Es gibt zwei Arten von statischen Vektoren: feste Länge ( [u8, .. 3] ) und statische Schnitte ( &'static [u8] ). Erstere interagieren nicht sehr gut mit anderen Arten von Vektoren. Letzteres ist hier am nützlichsten:

%Vor%     
huon 08.05.2013, 14:08
quelle

Tags und Links