Resultados da pesquisa a pedido "lifetime"

2 a resposta

<'A,' b: 'a> significa que a vida' b deve sobreviver à vida 'a?

Eu quero implementar um construtor semelhante à depuraçãoconstrutores [https://github.com/rust-lang/rust/blob/8a3f5af8c98e123247a2847c52474f42874d23fa/src/libcore/fmt/builders.rs] definido pela biblioteca padrão. Eles são definidos usando ...

1 a resposta

Como a vida útil funciona em strings / literais de strings constantes?

Eu li otutorial no site oficial [https://doc.rust-lang.org/stable/book/first-edition/lifetimes.html]e eu tenho algumas perguntas sobre o tempo de vida de constantes strings / strings literais. Eu recebo um erro quando escrevo o seguinte ...

3 a resposta

Como declarar uma vida para um argumento de fechamento?

Gostaria de declarar uma vida inteira para um fechamento no Rust, mas não consigo encontrar uma maneira de adicionar uma declaração vitalícia. use std::str::SplitWhitespace; pub struct ParserError { pub message: String, } fn ...

9 a resposta

Por que as vidas explícitas são necessárias no Rust?

Eu estava lendo ocapítulo das vidas [https://doc.rust-lang.org/book/first-edition/lifetimes.html]do livro Rust e me deparei com este exemplo por um tempo de vida nomeado / explícito: struct Foo<'a> { x: &'a i32, } fn main() { let x; // -+ x goes ...

1 a resposta

Emprestando referência e guarda juntos de um Mutex

Estou tentando encapsular algum código para evitar repeti-lo, relacionado ao empréstimo de dados de um Mutex e a operações posteriores (que deixo de fora dessa questão como fora do escopo, mas são os fatores motivadores). O seguinte código de ...

2 a resposta

Por que não consigo armazenar um valor e uma referência a esse valor na mesma estrutura?

Eu tenho um valor e quero armazenar esse valor e uma referência a algo dentro desse valor no meu próprio tipo: struct Thing { count: u32, } struct Combined<'a>(Thing, &'a u32); fn make_combined<'a>() -> Combined<'a> { let thing = Thing { count: ...

2 a resposta

Existe alguma maneira de retornar uma referência a uma variável criada em uma função?

Eu quero escrever um programa que irá gravar um arquivo em 2 etapas. É provável que o arquivo não exista antes da execução do programa. O nome do arquivo é fixo. O problema é queOpenOptions.new().write() pode falhar. Nesse caso, quero chamar uma ...

1 a resposta

As referências de encadeamento requerem vida estática?

Embora faça sentido intuitivamente que as referências passadas para threads gerados precisem ter vida estática, não sei ao certo o que exatamente está fazendo o seguinte código não ser compilado: use std::sync::Arc; use std::sync::Mutex; struct ...

1 a resposta

Retornando o iterador de um Vec em um RefCell

Dado o seguintestruct eimpl: use std::slice::Iter; use std::cell::RefCell; struct Foo { bar: RefCell<Vec<u32>>, } impl Foo { pub fn iter(&self) -> Iter<u32> { self.bar.borrow().iter() } } fn main() {}Recebo uma mensagem de erro sobre um problema ...

1 a resposta

Erro de verificação de empréstimo com a variável que não vive o tempo suficiente no lambda aninhado

Estou recebendo um erro dentro de uma lambda aninhada. let rows = vec![ vec![3, 6, 2, 8, 9, 0], vec![0, 0, 1, 4, 5, 1], ]; let pair_sums = rows.iter() .flat_map(|row| { (0 ..= row.len()).map(|i| row[i] + row[i + 1]) }) .collect::<Vec<_>>(); ...