Resultados de la búsqueda a petición "rust"

2 la respuesta

¿Es posible verificar si un objeto implementa un rasgo en tiempo de ejecución?

trait Actor{ fn actor(&self); } trait Health{ fn health(&self); } struct Plant; impl Actor for Plant{ fn actor(&self){ println!("Plant Actor"); } } struct Monster{ health: f32 } impl Actor for Monster{ fn actor(&self){ println!("Monster Actor"); ...

1 la respuesta

¿Cómo tomo prestado un RefCell <HashMap>, encuentro una clave y devuelvo una referencia al resultado? [duplicar]

Esta pregunta ya tiene una respuesta aquí: ¿Cómo devuelvo una referencia a algo dentro de un RefCell sin romper la encapsulación? [/questions/29401626/how-do-i-return-a-reference-to-something-inside-a-refcell-without-breaking-encap] 3 ...

1 la respuesta

Vinculando las vidas de uno mismo y una referencia en el método

yo tengoesta pieza de código [https://play.rust-lang.org/?gist=51474ebe468347034d0cbb930b619c9d&version=nightly] : #[derive(Debug)] struct Foo<'a> { x: &'a i32, } impl<'a> Foo<'a> { fn set(&mut self, r: &'a i32) { self.x = r; } } fn main() { let ...

3 la respuesta

Cuando puedo usar Cell o RefCell, ¿cuál debo elegir?

Desde elstd::cell documentación [http://doc.rust-lang.org/std/cell/index.html], Veo queCell es "solo compatible con los tipos que implementanCopy". Esto significa que debo usarRefCell para noCopy tipos. Cuando yohacer tener unCopy tipo, ¿hay ...

3 la respuesta

¿Qué son las semánticas de movimiento en Rust?

En Rust, hay dos posibilidades para tomar una referencia. Pedir prestado, es decir, tome una referencia pero no permita la mutación del destino de referencia. los& El operador toma prestada la propiedad de un valor. Pedir prestado mutablemente, ...

1 la respuesta

Extiende la vida útil de una variable para hilo

Estoy leyendo una cadena de un archivo, dividiéndola por líneas en un vector y luego quiero hacer algo con las líneas extraídas en hilos separados. Me gusta esto: use std::fs::File; use std::io::prelude::*; use std::thread; fn main() { ...

1 la respuesta

Genéricos de ocultamiento de punteros a través de `mem :: transmute ()`

Estoy intentando escribir enlaces Rust para una biblioteca de colección C (Judy Arrays [1]) que solo proporciona espacio para almacenar un valor de ancho de puntero. Mi empresa tiene una buena cantidad de código existente que utiliza este espacio ...

1 la respuesta

¿Qué significa el signo de interrogación en un parámetro de tipo enlazado?

Encontré la definición destd::borrow::BorrowMut [http://doc.rust-lang.org/std/borrow/trait.BorrowMut.html]: pub trait BorrowMut<Borrowed>: Borrow<Borrowed> where Borrowed: ?Sized, { fn borrow_mut(&mut self) -> &mut Borrowed; }¿Qué significa el ...

3 la respuesta

¿Cómo escribo un iterador que devuelve referencias a sí mismo?

Tengo problemas para expresar la vida útil del valor de retorno de unIterator implementación. ¿Cómo puedo compilar este código sin cambiar el valor de retorno del iterador? Me gustaría que devuelva un vector de referencias. Es obvio que no estoy ...

1 la respuesta

¿Por qué no necesito prestar explícitamente una variable mutable prestada?

Acabo de escribir un pequeño programa de Rust que calcula los números de Fibonacci y memoriza el cálculo. Funciona, pero estoy un poco confundido acerca de por qué, especialmente la llamada recursiva. (Probablemente tampoco sea idiomático). Aquí ...