Ich frage mich, ob es möglich ist, ein JSON-Objekt in Rust zu dekodieren, das einen Attributnamen hat, der auch ein Rust-Schlüsselwort ist. Ich arbeite mit dem rustc-serialize Kiste und meine struct Definition sieht wie folgt aus:Wie dekodiert man ein JSON-Objekt mit dem Rust-Attributnamen?
#[derive(RustcDecodable)]
struct MyObj {
type: String
}
Der Compiler wirft einen Fehler, da Typ ein Schlüsselwort ist. Die genaue Compiler-Fehlermeldung lautet:
Sorry für die Anfängerfrage, ich habe gerade angefangen, Rust auszuprobieren.
Ist es sicher davon ausgehen, dass die ursprünglichen Daten nicht um den Konflikt zu vermeiden geändert werden? – Shepmaster
Ja, es wäre am besten, wenn ich die Quelldaten nicht ändern müsste. Ich denke, vielleicht ein neues struct-Feld mit einem anderen Namen zu erstellen und eine benutzerdefinierte 'impl Decodable' zu schreiben ist der einzige Weg? – rking788
Ich kann sehen, entweder manuell zu implementieren oder mit 'Json :: from_str' und dann stochern in seinen Ergebniswert. – Shepmaster