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

1 la respuesta

¿Cuál es la mejor manera de analizar protocolos binarios con Rust?

Esencialmente tengo un protocolo de red basado en TCP para analizar. En C, puedo transmitir un poco de memoria al tipo que quiero. ¿Cómo puedo lograr algo similar con Rust?

1 la respuesta

¿Puedo escribir un iterador que se muta y luego produce una referencia en sí mismo?

Me encontré con un problema que se simplifica en lo siguiente: struct MyIter { vec: Vec<i8>, } fn fill_with_useful_data(v: &mut Vec<i8>) { /* ... */ } impl<'a> Iterator for MyIter { type Item = &'a [i8]; fn next(&mut self) -> Option<&'a [i8]> { ...

1 la respuesta

¿Cómo emitir tipos genéricos que sé que son enteros?

Quiero verificar los códigos de retorno de las API de C de forma genérica y el resultado debe estar libre de tipos de C comolibc::c_int. ¿Hay alguna forma de escribir una función como fn check<S: PartialOrd + std::num::Zero, T> (x: S) -> ...

1 la respuesta

"Parámetro de tipo esperado, estructura encontrada"

He estado jugando con los rasgos usando Rust y me he encontrado con un problema. Aquí hay un código: struct Foo; trait Bar {} impl Bar for Foo {} fn bar<B: Bar>(bar: B) {} fn barr<B: Bar>() { bar(Foo); // 1. THIS WILL WORK let foo: B = Foo; // ...

1 la respuesta

¿Por qué no puedo lanzar un `u32` a` char`?

Estoy tratando de aprender Rust y quedé atrapado pensando en cómochars tienen 4 bytes de ancho. Puedo lanzar unchar a unu32 y funciona (ambos tienen 4 bytes de ancho), sin embargo, cuando lanzo desde unu32 a uncharRust se queja: fn main() { let ...

1 la respuesta

¿Hay alguna manera de no tener que inicializar matrices dos veces?

Necesito inicializar cada elemento de una matriz a una expresión no constante. ¿Puedo hacer eso sin tener que inicializar cada elemento de la matriz a una expresión sin sentido? Aquí hay un ejemplo de lo que me gustaría poder hacer: fn foo(xs: ...

1 la respuesta

¿Por qué los cortes en una estructura requieren una vida útil, pero no vectores?

Cuando defino la siguiente estructura: struct Test<'a> { a: &'a [i64], b: Vec<i64>, }Tanto el corte como el vector contienen un puntero. ¿Por qué el corte requiere una vida útil, pero no el vector?

1 la respuesta

¿Cómo se envían rodajas de un Vec a una tarea oxidada?

Entonces, esto no funciona: use std::comm; #[deriving(Show)] struct St { v: u8 } fn main() { let mut foo:Vec<St> = Vec::new(); for i in range(0u8, 10) { foo.push(St { v: i }); } { let mut foo_slice = foo.as_mut_slice(); let (f1, f2) ...

1 la respuesta

¿Por qué Rust no implementa el pedido total a través del rasgo Ord para f64 y f32?

Mientras que todos los tipos enteros en Rust implementanOrd [http://doc.rust-lang.org/std/cmp/trait.Ord.html]que enfatiza el orden total, los tipos de punto flotante solo ...

1 la respuesta

Modificar caracteres en una cadena por índice

Escribí una función para poner en mayúsculas (primera letra en mayúscula, todas las demás en minúscula) una Cadena prestada, pero terminó siendo más problemática de lo que parece que debería ser. fn titlecase_word(word: &mut String) { unsafe { ...