Resultados da pesquisa a pedido "rust"

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

Por que o HashMap :: get_mut () assume a propriedade do mapa pelo restante do escopo?

Eu tenho o seguinte código que insere alguns valores em um HashMap e depois os recupera: use std::collections::HashMap; fn things() { let mut map = HashMap::new(); map.insert(5, "thing"); map.insert(4, "world"); map.insert(1, "hello"); let ...

1 a resposta

Como impor que um tipo implemente uma característica em tempo de compilação?

Eu quero escrever uma macro como esta: macro_rules! a { ( $n:ident, $t:ty ) => { struct $n { x: $t } } }Mas$t deve implementarAdd, Sub eMul traços. Como posso verificá-lo em tempo de compilação?

1 a resposta

Como posso passar uma referência a uma variável de pilha para um thread?

Estou escrevendo um servidor WebSocket em que um cliente da Web se conecta para jogar xadrez contra uma IA de computador multithread. O servidor WebSocket deseja passar umLogger objeto no código AI. oLogger O objeto vai canalizar as linhas de log ...

1 a resposta

Removendo itens de um BTreeMap ou BTreeSet encontrado através da iteração

Gostaria de remover itens de umBTreeMap que foram encontrados através da iteração. Como não é possível remover itens durante a iteração, coloquei os itens a serem excluídos em um vetor. A questão principal é que não é possível usar um ...

3 a resposta

Como suprimir o aviso “a função nunca é usada” para uma função usada pelos testes?

Estou escrevendo um programa em Rust e tenho alguns testes para isso. Eu escrevi uma função auxiliar para esses testes, mas sempre que construo usandocargo build avisa-me que a função nunca é usada: warning: a função nunca é usada: ... # [warn ...

2 a resposta

Posso criar uma fatia de um único byte (u8)?

Às vezes, quero ler um único byte de umstd::io::Reader. Se eu tentar fazer isso: use std::io; use std::io::Read; fn main() { let mut byte: u8 = 0; io::stdin().read(&mut byte).unwrap(); println!("byte: {}", byte); }Eu recebo o seguinte erro (que ...

2 a resposta

Como criar uma string estática em tempo de compilação

Eu quero criar um longo&'static str feito de sequências repetidas de caracteres, p.abcabcabc... Existe uma maneira no Rust de fazer isso por meio de uma expressão, por exemplo algo comolong_str = 1000 * "abc" em Python, ou eu tenho que gerá-lo ...

1 a resposta

Por que a característica impl não pode ser usada para retornar vários tipos / condicionais?

Estou tentando obter um gerador de números aleatórios. Desde aOsRng::new() pode falhar, eu gostaria de voltar athread_rng() se eu tiver que: extern crate rand; // 0.5.5 use rand::{thread_rng, OsRng, RngCore}; fn rng() -> impl RngCore { match ...

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 ...