Tag: BORROW-CHECKER
Al compilar el siguiente código: pub enum NodeType { None, Node(Box<node>), } pub struct Node { next: NodeType, } impl Node { fn traverse_recursively<f>(&self, depth: usize, f: &mut F) where F: FnMut(&Node, usize), { f(self, depth); match &self.next { NodeType::None => {} NodeType::Node(node) => { node.traverse_recursively(depth + 1, f); } . . . Read more
Obtengo el error: ninguno error[E0382]: uso de un valor movido: `x` –> src/lib.rs:7:13 | 5 | let x = String::from(“abcd”); | – movimiento ocurre porque `x` tiene tipo `String`, que no implementa el rasgo `Copy` 6 | let y = x; | – valor movido aquí 7 | let z . . . Read more
struct Population<‘a> { dat: Vec<genotype<‘a>>, } impl<‘a> Population<‘a> { fn new(dat: Vec<genotype<‘a>>) -> Self { Population { dat } } fn select(&self) -> Genotype<‘a> { self.dat.first().unwrap().clone() } } #[derive(Clone)] struct Genotype<‘a> { data: &’a str, } impl<‘a> Genotype<‘a> { fn new(data: &’a str) -> Self { Genotype { data } . . . Read more
Estoy intentando iterar sobre una serie de nombres de archivo y analizar los archivos correspondientes. Mi Cargo.toml: [package] name = “fold” version = “0.1.0” authors = [“Akshat Mahajan”] edition = “2018” : See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] goblin = “0.4.3” Mi main.rs: /// Un enlazador de . . . Read more
Considera el siguiente programa Rust: #![feature(generic_associated_types)] pub trait Func { type Input<‘a>; type Output; fn call(self, input: Self::Input<‘_>) -> Self::Output; } fn invoke<‘cx, F>(f: F, ctx: &’cx mut u8) where F: ‘static + Func<input<‘cx> = &’cx u8, Output = u8>, { let input = &*ctx; let out = f.call(input); *ctx . . . Read more