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

5 la respuesta

Convierta Vec <String> a Vec <& str>

Puedo convertirVec<String> aVec<&str> de esta manera: let mut items = Vec::<&str>::new(); for item in &another_items { items.push(item); }Me imagino que hay mejores alternativas?

3 la respuesta

¿Cómo sabe el compilador de Rust que 'Cell' tiene mutabilidad interna?

Considere el siguiente código (Versión de juegos [http://is.gd/8zn4R5]): use std::cell::Cell; struct Foo(u32); #[derive(Clone, Copy)] struct FooRef<'a>(&'a Foo); // the body of these functions don't matter fn testa<'a>(x: &FooRef<'a>, y: &'a ...

1 la respuesta

¿Cuál es la diferencia entre `&` y `ref`?

Entiendo como& funciona, pero ¿cuál es la diferencia entre eso yref? ¿Son intercambiables? La única información que encontré (porque buscar símbolos en Google no funciona muy bien) esesta página en Rust By ...

1 la respuesta

¿Cómo obtengo el valor entero de una enumeración?

Es posible escribir construcciones como esta: enum Number { One = 1, Two = 2, Three = 3, Four = 4, }pero para que propósito No puedo encontrar ningún método para obtener el valor de una variante enum.

2 la respuesta

¿Hay alguna otra forma, además de los rasgos, de agregar métodos a un tipo que no tengo?

Estoy tratando de extender elGrid [http://docs.piston.rs/graphics/graphics/grid/struct.Grid.html]struct de la biblioteca de pistón-2dgraphics. No hay ningún método para obtener la ubicación en la ventana de una celda en particular, por lo que ...

1 la respuesta

¿Cómo canalizar de forma idiomática / eficiente los datos de lectura + búsqueda para escribir?

Quiero tomar datos de ubicaciones aleatorias en el archivo de entrada y enviarlos secuencialmente al archivo de salida. Preferiblemente, sin asignaciones innecesarias. Este es un tipo de solución que he descubierto [http://is.gd/gafttx]: use ...

1 la respuesta

Error de verificación de préstamo con variable que no vive lo suficiente en lambda anidada

Recibo un error dentro de una lambda anidada. let rows = vec![ vec![3, 6, 2, 8, 9, 0], vec![0, 0, 1, 4, 5, 1], ]; let pair_sums = rows.iter() .flat_map(|row| { (0 ..= row.len()).map(|i| row[i] + row[i + 1]) }) .collect::<Vec<_>>(); ...

1 la respuesta

¿Cómo puedo modelar un mapa bidireccional sin molestar al verificador de préstamos?

De¿Por qué no puedo almacenar un valor y una referencia a ese valor en la misma estructura? [https://stackoverflow.com/questions/32300132/why-cant-i-store-a-value-and-a-reference-to-that-value-in-the-same-struct] Aprendí que no puedo almacenar un ...

1 la respuesta

Retornante iterador de un Vec en un RefCell

Dado lo siguientestruct yimpl: use std::slice::Iter; use std::cell::RefCell; struct Foo { bar: RefCell<Vec<u32>>, } impl Foo { pub fn iter(&self) -> Iter<u32> { self.bar.borrow().iter() } } fn main() {}Recibo un mensaje de error sobre ...

1 la respuesta

No se puede mover fuera de la variable externa capturada en un cierre `Fn`

Estoy tratando de descubrir cómo enviar una función a través de un canal y cómo evitar la clonación adicional para ejecutar la función en el otro extremo. Si elimino la operación de clonación adicional dentro del cierre, aparece el siguiente ...