extend readme
[Mitarbeiter/Tim-Zeitz/stud-rust-base.git] / README.md
index 3a06ffa..4e8cb76 100644 (file)
--- a/README.md
+++ b/README.md
@@ -23,7 +23,7 @@ Insbesondere mit ["Dem Buch"](https://doc.rust-lang.org/book/second-edition/inde
 Rust hat ein Build- und Dependency Managementsystem. Yay.
 Heißt `cargo`.
 Mit `cargo build` kann man Programme bauen.
-Im Falle dieses Repos baut das nur die Basislib und noch keine Executable, dazu dann z.B. `cargo build --bin example`.
+Im Falle dieses Repos baut das nur die Basislib und noch keine Executable, dazu dann z.B. `cargo build --bin example` oder statt example ein anderes Programm wie `decode_vector`.
 Mit `cargo run` kann man bauen und direkt ausführen.
 Argumente an das Programm kommen nach einem `--`.
 Sobald die Performance interessant ist unbedingt `cargo run --release` nutzen - das ist ungefähr was `-O3` bei C++ ist.
@@ -66,6 +66,10 @@ Die Dateien in `src/bin/` sind einmal ein Beispielprogramm sowieso Hilfsprogramm
 Das Programm `compare_vector` vergleicht ob zwei Vektoren identisch sind und wenn sie es nicht sind gibt es eine Übersicht über die Unterschiede.
 Fügen sie Ihre Programme in `src/bin/` hinzu, diese werden dann von `cargo` automatisch gefunden.
 
+## Docs
+
+`cargo doc --open` öffnet die Dokumentation zu dem bereitgestelltem Code.
+
 ## Graphen
 
 Knoten und Kanten werden durch numerische IDs identifiziert, die von `0` bis `n-1` bzw. `m-1` gehen, wobei `n` die Anzahl an Knoten und `m` die Anzahl an gerichteten Kanten ist.
@@ -83,7 +87,7 @@ let head = Vec::<NodeId>::load_from("head_file_name").expect("could not read hea
 let travel_time = Vec::<Weight>::load_from("weight_file_name").expect("could not read travel_time");
 
 let node_id = 42;
-for edge_id in head[first_out[node_id] as usize .. first_out[node_id + 1] as usize] {
+for edge_id in first_out[node_id] .. first_out[node_id + 1] {
     println!("There is an arc from {} to {} with weight {}", node_id, head[edge_id as usize], travel_time[edge_id as usize]);
 }
 ```