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

1 la respuesta

¿Cómo puedo clonar un cierre FnBox cuando no se puede colocar en un Arc?

Me gustaría enviar comandos (cierres) a diferentes subprocesos, con el cierre capturando un noSync variable (por lo tanto, no puedo "compartir" el cierre con unArc, como se explica en¿Puedes clonar un ...

2 la respuesta

Confundido sobre el uso de rasgos con vida útil como restricción de parámetros genéricos

Estoy tratando de hacer algún tipo de decodificador, que pueda deserializar las entradas sin copiar realmente la memoria, simplemente asignando valores a algunas regiones de memoria. Eso es lo que logré hacer actualmente (simplificado para ...

6 la respuesta

¿Cómo hago coincidir los valores de enumeración con un entero?

Puedo obtener un valor entero de una enumeración como esta: enum MyEnum { A = 1, B, C, } let x = MyEnum::C as i32;pero parece que no puedo hacer esto: match x { MyEnum::A => {} MyEnum::B => {} MyEnum::C => {} _ => {} }¿Cómo puedo comparar los ...

1 la respuesta

¿Cómo puedo indexar matrices C en Rust?

Tengo una función C que devuelve un puntero: type MYSQL_RES_REF = *mut c_void; type MYSQL_ROW = *const *const c_char; #[no_mangle] extern "C" { fn mysql_fetch_row(res: MYSQL_RES_REF) -> MYSQL_ROW; } let pointer = mysql_fetch_row(self.res); let ...

3 la respuesta

¿Cuál es la diferencia entre los rasgos en Rust y las clases de tipos en Haskell?

Rasgos [http://rustbyexample.com/trait.html]en Rust parecen al menos superficialmente similares aclases de tipo [http://en.wikipedia.org/wiki/Type_class]en Haskell, sin embargo, he visto a personas escribir que hay algunas diferencias entre ...

1 la respuesta

¿Cómo puedo almacenar punteros de función en una matriz? [duplicar]

Esta pregunta ya tiene una respuesta aquí: "Elemento fn esperado, se encontró un elemento fn diferente" cuando se trabaja con punteros de función [/questions/27895946/expected-fn-item-found-a-different-fn-item-when-working-with-function-pointer] ...

1 la respuesta

Asignación de un objeto para llamadas de biblioteca C / FFI

Tengo una biblioteca C, que tiene implementación de gpio. Hay gpio_type que es específico del objetivo, cada MCU tiene una definición diferente para gpio_type. Una de las funciones en la biblioteca: void gpio_init(gpio_type *object, int32_t ...

1 la respuesta

Obteniendo el error "error: el rasgo` core :: marker :: Sized` no está implementado "al intentar devolver el valor de un vector

Estoy tratando de devolver los valores de un vector con el siguiente código y. Recibo el mensaje de error. fn merge<'a>(left: &'a [i32], right: &'a [i32]) -> [i32] { let mut merged: Vec<i32> = Vec::new(); // push elements to merged *merged ...

1 la respuesta

No se puede mover fuera del contenido prestado

No entiendo el errorcannot move out of borrowed content. Lo he recibido muchas veces y siempre lo he resuelto, pero nunca he entendido por qué. Por ejemplo: for line in self.xslg_file.iter() { self.buffer.clear(); for current_char ...

1 la respuesta

¿Por qué y cuándo se debe usar una coma al final de un bloque?

Hay muchos casos en Rust cuando el bloque de código puede terminar con o sin comunicación, a. Por ejemplo: enum WithoutComma { x, y }o enum WithComma { x, y, }También hay otros ejemplos con "coincidencia", etc. Parece que ambas variantes ...