Resultados de la búsqueda a petición "traits"
¿Cómo clonar una estructura que almacena un objeto de rasgo en caja?
Escribí un programa que tiene el rasgoAnimal y la estructuraDog implementando el rasgo. También tiene una estructuraAnimalHouse almacenar un animal como un objeto de rasgoBox<Animal>. trait Animal { fn speak(&self); } struct Dog { name: String, ...
Cómo implementar un rasgo para un rasgo parametrizado
Tengo un problema de diseño, cuando uso algo como: trait MyTrait<K: OtherTrait> { ... } impl<K: OtherTrait, M: MyTrait<K>> AnyTrait for M { ... }No puedo implementar el rasgo para este rasgo debido al error E207 ("el parámetro de tipoK no está ...
Implemente fmt :: Display para Vec <T>
Quiero implementar elfmt::Display para una estructura anidada comúnmente utilizada en mi código. // The root structure pub struct WhisperFile<'a> { pub path: &'a str, pub handle: RefCell<File>, pub header: Header } pub struct Header{ pub ...
¿Cómo devuelvo una instancia de un rasgo de un método?
Estoy tratando de crear una función que devuelva una instancia de laShader rasgo. Aquí está mi código drásticamente simplificado: trait Shader {} struct MyShader; impl Shader for MyShader {} struct GraphicsContext; impl GraphicsContext { fn ...
Reflexión PHP: ¿Cómo saber si un método / propiedad / constante se hereda del rasgo?
Quiero excluir todos los métodos heredados de los rasgos de la listaque no se anulan en una claseEntonces, ¿cómo saber si un miembro de la clase se hereda del rasgo? Sí, puedo verificarlo así: if ($trait->hasMethod($methodName) || ...
Rasgos con PHP y Laravel
Estoy usando Laravel 5.1 y me gustaría acceder a una matriz en el Modelo desde el Rasgo cuando el Modelo anterior al modelo usa elappends formación. Me gustaría agregar ciertos elementos a la matriz de agregados si existe desde mi rasgo. No ...
¿Por qué es necesario el límite 'Sized' en este rasgo?
Tengo un rasgo con dos funciones asociadas: trait WithConstructor: Sized { fn new_with_param(param: usize) -> Self; fn new() -> Self { Self::new_with_param(0) } }¿Por qué la implementación predeterminada del segundo método (new()) obligarme a ...
¿Por qué se deriva Fn de FnMut (que se deriva de FnOnce)?
Si miras en eldocumento oficial de Rust [https://doc.rust-lang.org/std/ops/trait.Fn.html], ves que el rasgoFn se deriva deFnMuto para implementarFn, tienes que implementarFnMut (y después de esoFnOnce ya queFnMut también se deriva de ello). ¿Por ...
¿Es posible extender la implementación de un método predeterminado de un rasgo en una estructura?
En los lenguajes orientados a objetos tradicionales (por ejemplo, Java), es posible "extender" la funcionalidad de un método en una clase heredada llamando al método original desde la superclase en la versión anulada, por ejemplo: class A { ...
El rasgo `x` no está implementado para el tipo` x`
Al compilar el siguiente código: trait RenderTarget {} struct RenderWindow; impl RenderTarget for RenderWindow {} trait Drawable { fn draw<RT: RenderTarget>(&self, target: &mut RT); } fn main() { let mut win = RenderWindow; let mut vec: ...