Tag: rust

Rost ist eine Sprache entwickelt, die für das schreiben sehr zuverlässige und schnelle software, die in einer einfachen Weise. Es kann verwendet werden, von der high-level-code unten, um die hardware-spezifischen code, und von den großen Eisen, um kleine Geräte.

Was ist typestate?

Anzahl der Antworten 3 Antworten
Was bedeutet TypeState zu finden in Bezug auf design-Sprache? Ich sah es erwähnt in einigen Gesprächen bezüglich einer neuen Sprache, die von mozilla namens Rost. InformationsquelleAutor Brad The App Guy | 2010-07-09

Rost FFI. Umwandlung in void-Zeiger

Anzahl der Antworten 1 Antworten
Habe ich eine Funktion, die hat der Prototyp, wie weiter unten //opaque struct struct mosquitto; struct mosquitto *mosquitto_new(const char *id, bool clean_session, void *obj); In meinem c-code, nenne ich es wie folgt. struct mosquitto *m = mosquitto_new(buf,

Brauchen ganzheitliche Erklärung über Rost Zelle und Referenz-Arten gezählt

Anzahl der Antworten 2 Antworten
Gibt es verschiedene wrapper-Typen im Rost standard-Bibliothek: Die Zellen in der std::cell - Modul: Zelle und RefCell Die Referenz-gezählt-Wrapper, wie Rc und Arc. Die Typen in der std::sync - Modul: Mutex oder AtomicBool zum Beispiel Wie ich

Was ist der Vorteil der Verwendung einer Folge?

Anzahl der Antworten 1 Antworten
Ich verstehe nicht, warum Result existiert in Rust. Ich kann sehen, wie Option können nützlich sein, aber mit Result scheint nur zu erschweren-code unnötig. Betrachten Sie das folgende Beispiel: #[derive(PartialEq, Eq, Debug)] enum MyErr { None, FailOne,

Hat Rost Unterstützung der Ruby-like-string-interpolation?

Anzahl der Antworten 1 Antworten
In Ruby, ich könnte dies tun. aaa = "AAA" bbb = "BBB #{aaa}" puts(bbb) > "BBB AAA" Den Punkt dieser syntax ist die Beseitigung von Wiederholungen, und machen es zu fühlen, wie ein shell-Skript, - ideal für

Gewusst wie: Debuggen von Abstürzen in externen Bibliotheken

Anzahl der Antworten 2 Antworten
Meine Rost-code abstürzt, irgendwo in Rost-http und ich habe keine Ahnung, wie das zu Debuggen. Bekomme ich diese Fehlermeldung wenn ich es ausführen: $ ./target/ecmiwc -i www.google.com -u testuser -v test task '<main>' failed at 'called `Option::unwrap()`

Was ist die syntax für den Abgleich mit einem Verweis auf ein enum?

Anzahl der Antworten 3 Antworten
Es scheint, wie jedes einführende Dokument für Rost ist enum-Typen erklärt, wie match auf ein enum-Objekt, das Sie eigenen, aber was ist, wenn Sie nicht selbst das enum-Objekt, und Sie müssen nur einen Verweis darauf, dass Sie

Wie kann ich die initialisieren das array von arrays in einem struct?

Anzahl der Antworten 1 Antworten
Ich versuche zu lernen rust aus dem tutorial. Ich dachte Conway ' s Spiel des Lebens wäre ein guter Ort, um zu starten. Ich habe Schwierigkeiten zu verstehen, wie diese zu schreiben Grid::new() fn. Hier ist, was

Wie kann ich mir einen Verweis auf das, was innen ist eine Option<T>?

Anzahl der Antworten 2 Antworten
Wie ziehe ich einen Verweis aus einem Option und übergeben Sie es zurück mit der spezifischen Lebensdauer der Anrufer? Speziell, ich möchte mir einen Verweis auf eine Box<Foo> aus einer Bar hat eine Option<Box<Foo>> in es. Ich

Hat/Wird Rost Unterstützung der funktionalen Programmierung Ausdrücke?

Anzahl der Antworten 2 Antworten
Rost bekommt konkretisiert sich mehr und mehr mein Interesse an beginnt es zu wecken. Ich Liebe die Tatsache, dass es unterstützt algebraische Datentypen und insbesondere das matching von denen, aber gibt es irgendwelche Gedanken gemacht, auf andere

Division zweier Ganzzahlen drucken nicht als dezimal-Zahl in Rust

Anzahl der Antworten 2 Antworten
Ich Lerne Rost, aber wenn ich drucken Sie eine decimal-Zahl, wird nur der ganzzahlige Teil ist gedruckt, nicht dem dezimalen Teil: fn main(){ println!("{:.3}", 22/7); } //This only show 3 aber wenn ich drucken Sie die Dezimalzahl

Wie man einen Typ-annotation in einen iterator ' s sammeln-Anweisung?

Anzahl der Antworten 2 Antworten
Habe ich diesen code: use std::fs::File; use std::io::{BufRead, BufReader}; fn load_file() -> Vec<String> { let file = BufReader::new(File::open("foo.txt").unwrap()); file.lines().map(|x| x.unwrap()).collect(); } fn main() { let data = load_file(); println!("DATA: {}", data[0]); } Wenn ich versuche zu kompilieren,

Wie setzen Sie bestimmte Arten, die auf generische Merkmale in rust?

Anzahl der Antworten 1 Antworten
Ich nahm zunächst an, Sie könnten dies tun, weil die Dokumentation (http://doc.rust-lang.org/rust.html#implementations) schlägt vor, Sie können: trait Bar<T> { fn ex(&self) -> T; } struct Foo { y:f64 } impl Bar<int> for Foo { fn ex(&self) ->

Wie würden Sie erstellen Sie einen Konstruktor für ein struct mit einer Schließung?

Anzahl der Antworten 1 Antworten
Wie würde ich mich über die Implementierung einer Methode, die als Konstruktor für ein struct enthält einen Verschluss? Ich bin neu an zu Rosten, und was mit Verschlüssen aktiv gearbeitet ich bin eine harte Zeit der Suche

nicht leihen, `selbst.x` als unveränderlich, weil "*selbst " ist auch geliehen, wie veränderlich

Anzahl der Antworten 1 Antworten
Lassen Sie uns zunächst den code sprechen: #[derive(Debug)] struct Bar; #[derive(Debug)] struct Qux { baz: bool } #[derive(Debug)] struct Foo { bars: Vec<Bar>, qux: Qux, } impl Foo { fn get_qux(&mut self) -> &mut Qux { &mut

Gibt es eine Liste aller cfg-Funktionen?

Anzahl der Antworten 3 Antworten
Rost hat die Fähigkeit, überprüfen Sie die Konfiguration zu bauen Zeit mit, z.B., #[cfg(target_os = "linux")] oder if cfg!(target_os = "linux") {...}, wo target_os ist ein Funktion. Gibt es eine Liste aller (oder zumindest Häufig verwendete) Funktionen,

Wie man eine Scheibe von einem Iterator?

Anzahl der Antworten 1 Antworten
Begann ich dann mit clippy als linter. Manchmal zeigt es diese Warnung: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. Consider changing the type to `&[...]`, #[warn(ptr_arg)] on by

Wie kann ich eine aufgenommene variable in einer closure-innerhalb von einer Schließung?

Anzahl der Antworten 2 Antworten
Dieser code ist eine ineffiziente Art der Erstellung von einen eindeutigen Satz von items von einem iterator. Um dies zu erreichen, bin ich versucht, ein Vec zu verfolgen Werte, die ich gesehen habe. Ich glaube, dass diese

Verketten von string-literal mit einem anderen string

Anzahl der Antworten 3 Antworten
Gibt es einige Grund, warum ich kann nicht verketten Sie ein string-literal ein string-variable? Die folgenden code: fn main() { let x = ~"abcd"; io::println("Message: " + x); } gibt diese Fehlermeldung: test2.rs:3:16: 3:31 error: binary operation

Kann nicht leihen-Datei aus &mut selbst (error msg: kann nicht verschieben ausgeliehen Inhalt)

Anzahl der Antworten 1 Antworten
use std::fs::File; use std::io::Read; pub struct Foo { maybe_file: Option<File>, } impl Foo { pub fn init(&mut self) { self.maybe_file = Some(File::open("/proc/uptime").unwrap()); } pub fn print(&mut self) { let mut file = self.maybe_file.unwrap(); let mut s =

Wie lese ich einen einzelnen String von der Standardeingabe?

Anzahl der Antworten 1 Antworten
Es ist nicht einfach Instruktion auf dem Empfang einer Zeichenkette als variable in der std::io Dokumentation, aber ich dachte, dieser sollte funktionieren: use std::io; let line = io::stdin().lock().lines().unwrap(); Aber ich bin immer diese Fehlermeldung: src\main.rs:28:14: 28:23 error:

Was packen Sie in Rust, und für was wird es verwendet?

Anzahl der Antworten 1 Antworten
Habe ich diesen code verwendet .unwrap(): fn main() { let paths = std::fs::read_dir("/home/user").unwrap(); for path in paths { println!("Name: {}", path.unwrap().path().display()); } } Nach einem Blick auf die definition von Auspacken, pub fn unwrap(self) -> T {

Warum sind rekursive struct-Typen illegal in Rust?

Anzahl der Antworten 2 Antworten
Ich versuche zufällige Dinge zu vertiefen mein Verständnis von Rost. Ich gerade lief in den folgenden Fehler bei diesem code: struct Person { mother: Option<Person>, father: Option<Person>, partner: Option<Person>, } pub fn main() { let susan =

So erstellen Sie eine statische array von strings?

Anzahl der Antworten 3 Antworten
Hinweis Diese Frage enthält eine syntax, die älter als Rust 1.0. Der code ungültig ist, aber die Konzepte sind immer noch relevant. Wie erstellen Sie eine Globale statische array von strings in Rust? Für Ganzzahlen dies stellt:

Bauen HashSet von einem Vektor in Rust

Anzahl der Antworten 3 Antworten
Ich bauen will ein HashSet<u8> aus einer Vec<u8>. Ich würde dies gerne tun in einer Zeile code, kopieren der Daten nur einmal, mit nur 2n Speicher, aber das einzige, was ich bekommen kann, um zu kompilieren ist

Ist es möglich, eine rekursive Schließung in Rust?

Anzahl der Antworten 2 Antworten
Dies ist ein sehr einfaches Beispiel, aber wie kann ich etwas tun, ähnlich: let fact = |x: u32| { match x { 0 => 1, _ => x * fact(x - 1), } }; Ich weiß, dass

Wie kann ich umwandeln Puffer mit einer Scheibe bytes (&[u8]) in einen integer?

Anzahl der Antworten 1 Antworten
Ich lese raw-Daten aus einer Datei und möchte ich es konvertieren in eine Ganzzahl: fn main() { let buf: &[u8] = &[0, 0, 0, 1]; let num = slice_to_i8(buf); println!("1 == {}", num); } pub fn slice_to_i8(buf:

Mit dem gleichen iterator mehrere Male in Rust

Anzahl der Antworten 2 Antworten
Anmerkung der Redaktion: Dieses code-Beispiel ist aus einer version von Rust vor der 1.0, wenn viele Iteratoren implementiert Copy. Aktualisierte Versionen dieses Codes erzeugen die eine unterschiedliche Fehler, aber die Antworten, die immer noch wertvolle Informationen. Ich

Eine lokale Funktion in Rust

Anzahl der Antworten 1 Antworten
In irgendeiner Weise in Rust, zu erstellen lokalen Funktion, die aufgerufen werden können mehr als einmal. Die Art, wie ich tun würde, dass in Python ist: def method1(): def inner_method1(): print("Hello") inner_method1() inner_method1() InformationsquelleAutor | 2014-11-01

Wie zu unterdrücken " - Funktion wird nicht verwendet," Warnung für eine Funktion, die durch tests?

Anzahl der Antworten 3 Antworten
Ich Schreibe ein Programm in Rust und ich haben einige tests für Sie. Ich schrieb eine Hilfsfunktion für diese tests, aber Wann immer ich bauen mit cargo build es warnt mich, dass die Funktion nie benutzt: Warnung:

Konvertiert einen ascii-string-literal zu &[u8] in Rust?

Anzahl der Antworten 1 Antworten
Wie konvertieren Sie eine ascii-Zeichenfolge literal (z.B. "123 458") in ein &[u8] slice in rust? Rost hat die 6? 7? string-Typen, und es gibt fast keine Einheitlichkeit in dem, was Sie nennen, um zu konvertieren zwischen Ihnen.

Wie kann ich das Parsen einer JSON-Datei?

Anzahl der Antworten 4 Antworten
Ich habe diese bisher in meinem Ziel zu Parsen von JSON-Daten in Rust: extern crate rustc_serialize; use rustc_serialize::json::Json; use std::fs::File; use std::io::copy; use std::io::stdout; fn main() { let mut file = File::open("text.json").unwrap(); let mut stdout = stdout();

Schritt für Schritt Anleitung zum installieren von Rost und Fracht für mingw mit Msys2?

Anzahl der Antworten 1 Antworten
Habe ich versucht zu installieren Rost auf Cygwin, aber nicht in der Lage sein, Verbindung mit mingw. Jetzt bin ich versucht zu installieren, es mit Msys2. Habe ich bereits installiert Msys2 und Mingw. Ich habe versucht zu

Welche Art von Lebensdauer-parameter muss ich hier bei der Deklaration eines struct-Feld Objekttyp

Anzahl der Antworten 1 Antworten
Dies ist, was mein code aussieht. Ich versuche, einen impled struct in meiner ShapeRenderer struct und dessen Methoden verwenden. Formen.rs: use super::core::*; pub struct ShapeRenderer<'a> { core_renderer: &'a mut CanvasRenderer, } Kern.rs pub struct Canvas { pub

Wie kann ich Makros?

Anzahl der Antworten 3 Antworten
Also ich habe folgenden makro-code, den ich versuche zu Debuggen. Ich habe es genommen aus der Rost-Buch unter dem Abschnitt "The deep end". Umbenannt habe ich die Variablen in der makro, um genauer zu Folgen diese post.

Was ist der Zweck des Geräts geben Sie in Rust?

Anzahl der Antworten 2 Antworten
Rost hat die Typ, (), ein Typ mit einer einzigen null-Wert "Größe". Der Wert dieser Einheit wird zusätzlich der Typ angegeben mit (). Was ist der Zweck der Einheit-Typ und dessen Wert? Ist es ein Mechanismus, um

Wie konvertiert man die PathBuf String

Anzahl der Antworten 2 Antworten
Ich habe zum konvertieren der PathBuf variable zu einem String zu füttern, meine Funktion. Mein code ist wie folgt: let cwd = env::current_dir().unwrap(); let my_str: String = cwd.as_os_str().to_str().unwrap().to_string(); println!("{:?}", my_str); es funktioniert, ist aber schrecklich mit der

Wie zu erstellen und zu schreiben, um memory-mapped-Dateien?

Anzahl der Antworten 2 Antworten
Anmerkung der Redaktion: Dieses code-Beispiel ist aus einer version von Rust vor 1.0 und den code verwendet, der nicht existiert in Rust 1.0. Einige Antworten wurden aktualisiert, um die Antwort auf die Kernfrage für neuere Versionen von

In Rust gibt es eine Möglichkeit, um zu Durchlaufen und die Werte einer enum?

Anzahl der Antworten 4 Antworten
Ich komme aus einem Java-hintergrund und ich habe vielleicht so etwas wie enum Direction { NORTH, SOUTH, EAST, WEST} und ich konnte etwas tun, mit jedem der Werte, die wiederum mit der erweiterten for-Schleife wie: for(Direction dir

Wie implementieren Iterator und IntoIterator für ein einfaches struct?

Anzahl der Antworten 2 Antworten
Wie würde jemand implementieren, die Iterator und IntoIterator Merkmale für die folgende struct? struct Pixel { r: i8, g: i8, b: i8, } Habe ich versucht, verschiedene Formen der folgenden, ohne Erfolg. impl IntoIterator for Pixel {

Wie bekomme ich einen absoluten Wert in Rust?

Anzahl der Antworten 4 Antworten
Die docs sind nicht hilfreich: http://web.mit.edu/rust-lang_v0.9/doc/std/num/fn.abs.html Offensichtlich, ich kann sehen, dass die Funktion rechts gibt, aber ich habe nicht die leiseste Ahnung, wie Sie es nennen. Edit: Das problem ist, dass es nicht Arbeit. 🙂 use std::num;

Wie kann ich eine Funktion mit einer Variablen Anzahl von Argumenten?

Anzahl der Antworten 3 Antworten
Wie kann ich eine Funktion erstellen, die eine variable Anzahl von Argumenten in Rust? Wie dieser Java-code: void foo(String... args) { for (String arg : args) { System.out.println(arg); } } InformationsquelleAutor Tiago | 2015-03-09

So drucken Sie von structs und arrays?

Anzahl der Antworten 4 Antworten
Gehen scheint, um drucken zu können, structs und arrays direkt. struct MyStruct { a: i32, b: i32 } und let arr: [i32; 10] = [1; 10]; Rost hat eine andere Philosophie als Gehen: wo Gehen ist "Batterien",

Immer Größe eines Arrays übergeben als argument

Anzahl der Antworten 1 Antworten
Ich kann nicht scheinen, um diese Arbeit zu machen. Ich erhalte eine Fehlermeldung, die sagen, 'len' existiert nicht auf Typ '&[String]'. fn testLength(arr: &[String]) { if arr.len >= 10 { //Do stuff } } Ich bin noch

Step by step interactive debugger für Rost?

Anzahl der Antworten 4 Antworten
Wie kann ich den debug-Rost-Applikation Schritt für Schritt interaktiv wie ich in der Lage bin zu tun, mit "hebeln" in Ruby? Ich möchte in der Lage sein zu sehen, und vorzugsweise Veränderung der Variablen in Echtzeit, wenn

Umwandlung von Zahl-primitive (i32, f64, etc) - byte-Darstellungen

Anzahl der Antworten 5 Antworten
Ich Schreibe eine Bibliothek, kodiert/dekodiert die Daten zu/von einem binären format. Teil des formats ist zahlen, ich bin mit Rost native primitive Typen für die (wie i8, i64, f32 etc.). Gibt es eine einfache, integrierte Möglichkeit zur

Was ist der r#""# - operator in Rust?

Anzahl der Antworten 3 Antworten
Sah ich die Betreiber r#"" in Rust, aber ich kann nicht finden, was es tut. Es kam in handliches für die Erstellung von JSON: let var1 = "test1"; let json = r#"{"type": "type1", "type2": var1}"#; println!("{}", json)

Gibt es ein Modul (nicht-Rest) Funktion / Betrieb?

Anzahl der Antworten 3 Antworten
In Rust (wie die meisten Programmiersprachen), die % - operator führt die Rest Betrieb, nicht die Modul Betrieb. Diese Operationen unterschiedliche Ergebnisse für negative zahlen: -21 modulus 4 => 3 -21 remainder 4 => -1 println!("{}", -21

Wie gebe ich eine eigene array von einer Funktion?

Anzahl der Antworten 3 Antworten
Ich bin ein Rost Neuling versuchen, herauszufinden, die Sprache durch das spielen mit ihm. Ich getroffen habe einige Probleme, die versuchen, auf Rückgabe eines Arrays aus einer Funktion: struct Widget { thingies: ~[int] } impl Widget {

Wie kann ich ein update ein Wert in einer veränderlichen HashMap?

Anzahl der Antworten 1 Antworten
Hier ist, was ich versuche zu tun: use std::collections::HashMap; fn main() { let mut my_map = HashMap::new(); my_map.insert("a", 1); my_map.insert("b", 3); my_map["a"] += 10; //I expect my_map becomes {"b": 3, "a": 11} } Aber das wirft einen