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

1 la respuesta

Tipo de función recursiva

EnLa charla de Rob Pike [https://www.youtube.com/watch?v=HxaD_trXwRE#t=855]en el escaneo léxico en Go, define un tipo de funciónstateFn que devuelve otrostateFn, al igual que: type stateFn func() stateFnEn un intento de hacer algo similar en ...

2 la respuesta

¿Puedo escribir introspección con objetos de rasgo y luego bajarlo?

Tengo una colección deTrait, una función que itera sobre ella y hace algo, y luego me gustaría verificar el tipo de implementador y si es de tipoFoo luego descárgalo y llama a algún método Foo. Básicamente, algo similar a Go'sinterruptor de ...

2 la respuesta

"Elemento fn esperado, se encontró un elemento fn diferente" cuando se trabaja con punteros de función

Tengo el siguiente código (Patio de recreo [https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=ab5a19f3ea31260a0e140b3f4e9a315c] ): // Two dummy functions, both with the signature `fn(u32) -> bool` fn foo(x: u32) -> bool { x ...

2 la respuesta

¿Por qué se necesita el rasgo Copiar para la inicialización de matriz predeterminada (valor de estructura)?

Cuando defino una estructura como esta, puedo pasarla a una función por valor sin agregar nada específico: #[derive(Debug)] struct MyType { member: u16, } fn my_function(param: MyType) { println!("param.member: {}", param.member); }Cuando quiero ...

3 la respuesta

Tipos de cierres sin caja que son únicos para cada uno

Esto está en el contexto de la pregunta enMensaje de error con cierres sin caja [https://stackoverflow.com/questions/27867765/error-message-with-unboxed-closures] . Las respuestas señalan que Rust genera un tipo cada uno que es único para ...

2 la respuesta

¿Por qué # [derivar (Mostrar)] ya no funciona?

Con el Rust nocturno de hoy, el siguiente código ya no se compila: #[derive(Show)] enum S { A, B } fn main() { println!("{}", S::A); }En cambio, me da el siguiente mensaje de error: error: the trait `core::fmt::String` is not implemented for ...

3 la respuesta

¿Puedes clonar un cierre?

A FnMut el cierre no se puede clonar, por razones obvias, sino unFn el cierre tiene un alcance inmutable; ¿Hay alguna manera de crear un "duplicado" de unFn ¿cierre? Intentar clonarlo da como resultado: error[E0599]: no method named `clone` ...

1 la respuesta

¿Por qué debo usar macros que solo usan mis dependencias?

¿Por qué debo explícitamentemacro_use macros no utilizados directamente por mi código, pero solo utilizados por mis dependencias de códigos? Hay 2 casos ilustrados a continuación: Macros solo utilizadas por mis dependenciascall, do_parse, map, ...

1 la respuesta

¿Cómo creo una colección heterogénea de objetos?

Quiero usar objetos de rasgos en unVec. En C ++ podría hacer una clase baseThing de donde se derivaMonster1 yMonster2. Entonces podría crear unstd::vector<Thing*>. Thing los objetos deben almacenar algunos datos, p.x : int, y : int, pero las ...

3 la respuesta

Implementando Iterator usando un iterador subyacente

Nota del editor: esta pregunta utiliza algunas funciones y tipos que se eliminaron antes de Rust 1.0. Las ideas siguen siendo válidas, pero el código no se ejecuta en Rust 1.0. Estoy tratando de resolver el problema # 3 del Proyecto Euler usando ...