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

2 la respuesta

¿Por qué no se puede invocar una función en un objeto de rasgo cuando está limitada con `Self: Sized`?

Tengo el siguiente código trait Bar { fn baz(&self, arg: impl AsRef<str>) where Self: Sized; } struct Foo; impl Bar for Foo { fn baz(&self, arg: impl AsRef<str>) {} } fn main() { let boxed: Box<dyn Bar> = Box::new(Foo); boxed.baz(); }patio de ...

2 la respuesta

Es posible obtener la expansión de una sola macro en lugar de todo el archivo?

Acabo de encontrar ¿Cómo veo el código de macro expandido que está causando mi error de compilación? [https://stackoverflow.com/questions/28580386/how-do-i-see-the-expanded-macro-code-thats-causing-my-compile-error/28580527] . ¿Es posible obtener ...

1 la respuesta

¿Por qué no se puede usar el rasgo implícito para devolver tipos múltiples / condicionales?

Estoy tratando de obtener un generador de números aleatorios. Ya queOsRng::new() puede fallar, me gustaría volver athread_rng() si yo tengo que extern crate rand; // 0.5.5 use rand::{thread_rng, OsRng, RngCore}; fn rng() -> impl RngCore { match ...

1 la respuesta

¿Cómo serializo una enumeración sin incluir el nombre de la variante de enumeración?

Estoy tratando de serializar una enumeración en una cadena JSON. ImplementéSerialize rasgo para mi enumeración como se describe en los documentos, pero siempre obtengo{"offset":{"Int":0}} en lugar de la deseada{"offset":0}. extern crate serde; ...

2 la respuesta

¿Por qué el uso de by_ref (). Take () difiere entre los rasgos Iterator y Read?

Aquí hay dos funciones: fn foo<I>(iter: &mut I) where I: std::iter::Iterator<Item = u8>, { let x = iter.by_ref(); let y = x.take(2); } fn bar<I>(iter: &mut I) where I: std::io::Read, { let x = iter.by_ref(); let y = x.take(2); } Mientras el ...

2 la respuesta

¿Por qué mi analizador de nombres no consume toda la entrada y deja la última pieza sin analizar?

Estoy tratando de dividir una línea de registro en el espacio y las comas para crear unaVector deTokens deField ySeparator como se muestra en el siguiente código. Mi problema es que nom no parece consumir toda la línea de registro, deja ...

2 la respuesta

¿Cómo puedo mutar otros elementos de un HashMap cuando uso el patrón de entrada?

Me gustaría usar unaHashMap para almacenar en caché un cálculo costoso que depende de otras entradas en el mapa. El patrón de entrada solo proporciona una referencia mutable al valor coincidente, pero no al resto deHashMap. Realmente agradecería ...

1 la respuesta

¿Cómo hacer cosas iguales a `impl implícito` anidado?

function A que toman unfunction B como parámetro, nuevamente lafunction B tomarfunction C como parámetro. Intento la sintaxis como a continuación, pero esto me da un error: fn a(b: impl Fn(impl Fn() -> ()) -> ()) -> () { // ... } error[E0666]: ...

1 la respuesta

¿Puedo devolver automáticamente Ok (()) o None desde una función?

Tengo funciones que devuelven unOption o unResult: fn get_my_result() -> Result<(), Box<Error>> { lots_of_things()?; Ok(()) // Could this be omitted? } fn get_my_option() -> Option<&'static str> { if some_condition { return Some("x"); } if ...

1 la respuesta

¿Cómo puedo construir y pasar un iterador de iteradores?

Estoy tratando de asimilar Rust implementando algoritmos simples en él. Logré hacer un @ genérimerge_sorted, que terminó teniendo la siguiente firma: fn merge_sorted<IL, ILL, I: Ord>(mut arrays: ILL) -> Vec<I> where IL: Iterator<Item = I>, ILL: ...