Jak korzystać z XML na Rust
- Wklej reprezentatywny przykład XML, najlepiej z wypełnionymi wszystkimi opcjonalnymi polami.
- Podaj nazwę typu głównego i zdecyduj, czy chcesz też kod pomocniczy, czy tylko typy.
- Skopiuj wygenerowany kod Rust do swojego projektu.
O narzędziu XML na Rust
Ręczne pisanie klas modeli dla dużych danych XML jest żmudne i łatwo wtedy o literówki. Wklej tutaj przykład, a generator rozpozna strukturę: jakie pola występują, które są obiektami lub tablicami i jaki typ ma każda wartość. Wynikiem są struktury implementujące Serialize i Deserialize z pakietu serde.
XML jest przekształcony w JSON w taki sam sposób, jak w naszym narzędziu XML do JSON: atrybuty otrzymują @_ Prefiks i zawartość tekstu obok atrybutów nazywa się #text. Typy Rust są generowane na podstawie tego wyniku. Nazwy pól są konwertowane na snake_case i otrzymują atrybut rename z serde, jeśli różnią się od oryginału.
Korzystanie z wygenerowanego kodu
Dodaj serde i serde_json do Cargo.toml i zadzwoń serde_json::from_str::<Root>(&json).
Opcjonalne pola są: Option<T>. Zarówno null, jak i brakujące klucze stają się None.