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

1 la respuesta

¿Cómo paso una matriz a una función en Rust y cambio su contenido?

Quiero pasar una matriz a una función y cambiar el contenido dentro de ella. ¿Cómo puedo hacer eso? Este es mi código a continuación, pero por supuesto no funciona. fn change_value(mut arr: &[int]) { arr[1] = 10; } fn main() { let mut arr: ...

1 la respuesta

Error de vida útil de óxido esperado vida útil concreta pero encontrado vida útil limitada

Tengo un problema al trabajar con parámetros de por vida para estructuras. No estoy 100% seguro de cómo describir el problema, pero creé un caso trivial que muestra mi error de tiempo de compilación. struct Ref; struct Container<'a> { r : &'a ...

3 la respuesta

¿Cómo creo dos nuevos segmentos mutables a partir de un segmento?

Me gustaría tomar un segmento mutable y copiar el contenido en dos nuevos segmentos mutables. Cada rebanada es la mitad del original. Mi intento # 1: let my_list: &mut [u8] = &mut [0, 1, 2, 3, 4, 5]; let list_a: &mut [u8] ...

1 la respuesta

¿Es posible escribir una macro Rust que se expandirá en una firma de función / método?

Me encantaría poder hacer algo como lo siguiente: macro_rules! impl_a_method( ($obj:ident, $body:block) => ( fn a_method(foo: Foo, bar: Bar, baz: Baz) -> $obj $body ) ) // Implementation would look like: impl_a_method!(MyType, { MyType { foo: ...

1 la respuesta

Diferencias en la inferencia de tipos para cierres y funciones en óxido

¿Por qué es posible inferir los tipos de argumentos y el tipo de retorno para una expresión de cierre sin una función en óxido?

4 la respuesta

¿Por qué no println! trabaja en pruebas de unidad de óxido?

He implementado el siguiente método y prueba unitaria: use std::fs::File; use std::path::Path; use std::io::prelude::*; fn read_file(path: &Path) { let mut file = File::open(path).unwrap(); let mut contents = String::new(); ...

2 la respuesta

¿Cómo inserto un valor en un Vec 2D en Rust?

Aquí hay un intento realmente simple en 2DVec. Estoy tratando de agregar un elemento a la última entrada en el nivel superiorVec: fn main() { let mut vec_2d = vec![vec![]]; if let Some(v) = vec_2d.last() { v.push(1); } println!("{:?}", vec_2d); ...

1 la respuesta

¿Cómo pasar funciones anónimas como parámetros en Rust?

He estado jugando conRust la semana pasada. Parece que no puedo entender cómo pasar una función que se define como un parámetro al llamar al método, y no he encontrado ninguna documentación que muestre que se usan de esa manera. ¿Es posible ...

2 la respuesta

Downcasting y Box <Any>

pub struct WidgetWrap { // ... widget: RefCell<Box<Any>>, }En algún momento quiero lanzarBox<Any> aBox<WidgetTrait> let mut cell = widget.borrow_mut(); let w = cell.downcast_mut::<Box<WidgetTrait>>();Esto me da un error de este tipo: error: ...

1 la respuesta

Cómo inicializar los campos de estructura que se refieren entre sí

Actualmente quiero definir una estructura para unPistón [https://github.com/PistonDevelopers/piston]juego usando GamerIterator: pub struct MyGame<'a> { game_window: GameWindowGLFW, game_iter: GameIterator<'a, GameWindowGLFW>, //... ...