Wie man das YAML -Paket in der Rostsprache in Ubuntu 20 bekommt.04
Rust bietet uns ein Paket namens yaml_rust, das wir in unserem Programm implementieren müssen, während wir eine YAML -Datei analysieren. Ein Speichersicherheitsmerkmal und andere Vorteile der Rostsprache sind im YAML_Rust vorhanden, eine reine Rost -Implementierung von YAML 1.2. Verwenden wir den Cargo -Befehl, um ein neues Projekt im Inneren zu erstellen. Wir haben einen Befehl "$ cargo New Beispiel1_Cargo" gegeben. Dieser Befehl erstellt ein neues Verzeichnis namens Beispiel1_Cargo. Um das Projekt zu nennen, haben wir den Befehl "$ cd example1_cargo" verwendet.
Die Dateien, die Fracht erstellt hat. Listen Sie die Dateien auf, indem Sie das Verzeichnis Beispiel1_Cargo eingeben. Sie werden feststellen, dass Fracht eine Fracht produziert hat.TOML -Datei und SRC -Verzeichnis mit dem Haupt.RS -Datei. Um den Yaml-Rust in den Rost hinzuzufügen, öffnen Sie die Ladung.TOML-Datei und fügen Sie die „yaml-rust = 0 ein.4 ”im Abschnitt Abhängigkeiten. Wie die Yam-Rust-Abhängigkeit in unserer Fracht hinzugefügt wird.TOML -Datei, speichern Sie sie und lassen Sie uns einen Code in die SRC -Hauptstufe schreiben.RS -Datei, um Yaml zu analysieren.
Beispiel 1
Mit dieser Lösung möchten wir YAML -Parser anbieten, die zu 100% mit YAML 1 konform sind.2. Es gibt nur wenige bekannte Probleme, die verhindern, dass der Parser nahezu alle Beispiele in der Spezifikation korrekt analysiert. Unter bestimmten Umständen ist ein leerer einfacher Skalar eine Ausnahme. Für die meisten Benutzer ist dies jedoch kein wichtiges Problem.
Hier müssen wir die Yaml-Rust-Abhängigkeit mit der externen Kiste importieren. Eine Abhängigkeit Yaml-Rust, die mit der externen Kiste geschrieben wurde. Die gegebene Kennung der externen Kiste wird dann verwendet, um die externe Kiste an den deklarierenden Bereich zu binden. Danach werden die YAML. Dann haben wir innerhalb des FN main () des Rust -Programms eine LET -Anweisung zum Erstellen der YAML -Strukturdaten verwendet. Es gibt eine andere LET -Anweisung, die mit den variablen Dokumenten aufgerufen wird. In dieser DOCS -Variablen haben wir die YAML -Daten ausgepackt, die in der Variablen „S“ geladen sind.
Die Ausweichungsfunktion wird verwendet, um die Ergebnisse der Berechnung zu ergeben und Panik zurückzugeben, wenn etwas Unerwartetes auftritt. Die DOC -Variable wählt das erste Dokument aus, das durch den LET -Ausdruck definiert wird. Mit dem Befehl println wird das Debuggen des Dokuments behandelt. Mit der “assert_eq!Ausdruck, wir haben Zugriff auf den Index für die Karte und das Array. Das ungültige Array oder die Taste wird auch durch die Assert -Methode verifiziert, die die BadValue -Nachricht abschließt, wenn sie nicht existieren. Dann wird das YAML -Objekt in die Zeichenfolge abgeladen.
Der vorherige Code kompiliert mit dem Befehl ceargo run, der die Karten und das Array des YAML -Dokuments im Rostformat erzeugt. Außerdem wird das YAML -Dokument in der folgenden Abbildung gedruckt:
Beispiel # 2
Das vorherige Beispiel zeigt die Analyse eines YAML -Dokuments im Rost -Programm. Hier haben wir eine separate YAML -Datei erstellt, die Rost verarbeitet. Beachten.Die Toml -Datei befindet sich oder der Compiler konnte die Datei nicht analysieren. Wir haben eine Studenten_Result.YAML -Datei für das Parsen in Rost. Das Dokument in dieser YAML -Datei lautet wie folgt:
Hier haben wir das Rostprogramm für die Parsen der YAML -Datei. Vorher müssen wir die Abhängigkeit von Yaml_rust in die Fracht hinzufügen.TOML -Datei.
Hier haben wir das YAML_RUST -Paket in die Deklaration extern aufgenommen und auch den YAML_Rust deklariert, der die YAML -Loader- und YAML -Emitterobjekte enthält. Der Yamlloader lädt das YAML -Dokument und der YAML -Emitter fung. Anschließend haben wir unsere wichtigste Funktionsinimposition eingegeben, wobei der IO -Fehler für den Fehler des Dateisystemvorgangs zugewiesen wird. In der FN Main () haben wir Aussagen die Variablen deklarieren lassen. Die DOCS -Variable enthält den Befehl STD :: FS zum Kopieren der Datei „Student_Results.yaml ”.
Es gibt weitere variable Daten, die die YAML -Datei laden. Mit der Ausweichmethode haben wir die Ergebnisse der Berechnung angezeigt. Über das Variable DOC haben wir auf das YAML -Dokument zugegriffen. Dann haben wir die Kartenschlüsselwerte iteriert und die Summe der Werte erhalten. Die Markierungen im YAML -Dokument sind die Summe der Karten -Iterationsoperation. Dann das Rost -Match -Muster für den Fall: Yaml :: Hash -Operation. Auch für das Yaml :: Array, Yaml :: String und die Yaml :: Integer.
Abschluss
Im Artikel dreht sich alles um den Analyse der YAML -Datei in Rost. Die Rostsprache unterstützt YAML -Dateien und Dokumente. Mit der Yaml-Rust-Abhängigkeit können wir die YAML-Dateien oder Dokumente in Rost leicht manipulieren. Wir müssen die Yaml-Rust-Abhängigkeit in der Fracht konfigurieren.TOML -Datei, mit der wir auf das YAML -Rostmodul zugreifen können. Wir haben zwei Beispiele mit der YAML -Syntax gegeben und sie mit der Rostsprache analysiert.