X-Git-Url: https://i11git.iti.kit.edu/anon-gitweb/?p=Mitarbeiter%2FTim-Zeitz%2Fstud-rust-base.git;a=blobdiff_plain;f=README.md;h=59210f995419a2f09f8040d6c7482f6ab35ca5ed;hp=4e8cb7613652d14b36498da5a8b224f174c69a5f;hb=00434ae3ce1778ea5709d9267dcd37e52c2f4fa0;hpb=9db2868f6f0fb9829f0f88a39601d4931736ed54 diff --git a/README.md b/README.md index 4e8cb76..59210f9 100644 --- a/README.md +++ b/README.md @@ -35,7 +35,7 @@ Mit `cargo check` kann man das Programm checken ohne zu bauen, das kann einem ei Rust hat einen exzellenten Linter, der einem sehr hilft idiomatischen und performanten Code zu schreiben. Das ist insbesondere wenn man noch nicht viel Erfahrung mit der Sprache hat extrem sinnvoll! -Installieren kann man Clippy mit `rustup component add clippy-preview`. +Installieren kann man Clippy mit `rustup component add clippy`. Anstatt `cargo check` ruft man dann `cargo clippy` auf und kann sich auf viel hilfreiches Feedback freuen. # Rust Routenplanungs-Basis-Framework @@ -53,12 +53,11 @@ Die entsprechenden Funktionen sind über Traits definiert und können so direkt Das kann z.B. so aussehen: ```Rust -extern crate stud_rust_base; use stud_rust_base::io::*; -let head = Vec::::load_from("head_file_name").expect("could not read head"); -let lat = Vec::::load_from("node_latitude_file_name").expect("could not read lat"); -head.write_to("output_file").expect("could not write head"); +let head = Vec::::load_from("head_file_name")?; +let lat = Vec::::load_from("node_latitude_file_name")?; +head.write_to(&"output_file")?; ``` Die Dateien in `src/bin/` sind einmal ein Beispielprogramm sowieso Hilfsprogramme. @@ -79,12 +78,11 @@ Diese heißen `first_out`, `head` und `weight`. Um über die ausgehenden Kanten eines Knoten zu iterieren können Sie den folgenden Code verwenden: ```Rust -extern crate stud_rust_base; use stud_rust_base::{types::*, io::*}; -let first_out = Vec::::load_from("first_out_file_name").expect("could not read first_out"); -let head = Vec::::load_from("head_file_name").expect("could not read head"); -let travel_time = Vec::::load_from("weight_file_name").expect("could not read travel_time"); +let first_out = Vec::::load_from("first_out_file_name")?; +let head = Vec::::load_from("head_file_name")?; +let travel_time = Vec::::load_from("weight_file_name")?; let node_id = 42; for edge_id in first_out[node_id] .. first_out[node_id + 1] { @@ -108,9 +106,9 @@ Die Aufgabengraphen haben die Größe des Deutschlandgraphen. ## Hinweise zur Nutzung im Routenplanungspraktikum -Der Quellcode soll durch das Ausführen von `cargo build --all` mit dem aktuellen stabilen Compiler (1.29.2) übersetzt werden können. +Der Quellcode soll durch das Ausführen von `cargo build --all` mit dem aktuellen stabilen Compiler (1.38.0) übersetzt werden können. Auf den Poolraumrechner ist kein Rust Compiler vorinstalliert. Sie können aber für ihren Nutzer lokal `rustup` und damit dann einen aktuellen Compiler installieren. Die Nutzung von nicht stabilen nightly Features ist nicht erlaubt. Das verwenden externer crates ist nicht erlaubt. -Die Rust-Standardbibliothek ist nicht extern. +Die Rust-Standardbibliothek gilt nicht als extern.