Resultados da pesquisa a pedido "rust"
Por que a remoção de retorno me deu um erro: tipo esperado `()` mas tipo encontrado
Estou escrevendo umis_prime função no Rust, e eu tive a impressão de que simplesmente escrevertrue foi o equivalente areturn true;, mas este não é o caso em minha função: fn is_prime(number: i64) -> bool { for i in 2i64..number { if number % i ...
Como um operador pode ser sobrecarregado para diferentes tipos de RHS e valores de retorno?
Dada a seguinte estrutura: struct Vector3D { x: f32, y: f32, z: f32 }Eu quero sobrecarregar sua* operador para fazer um produto escalar quando o lado direito é umVector3De fazer uma multiplicação por elementos quando o RHS é umf32. Meu código ...
Chamando o método estático de característica de outro método estático (ferrugem)
Você pode chamar um método estático de característica implementado por tipos de outro método estático de característica implementado na característica? Por exemplo: trait SqlTable { fn table_name() -> String; fn load(id: i32) -> Something { ...
Por que posso retornar uma referência a um literal local, mas não a uma variável?
Por que esse código é compilado? fn get_iter() -> impl Iterator<Item = i32> { [1, 2, 3].iter().map(|&i| i) } fn main() { let _it = get_iter(); }[1, 2, 3] é uma variável local eiter() pede emprestado. Este código não deve ser compilado porque o ...
Alguns e Nenhum, o que são?
Ao programar alguns pequenos exercícios para iniciantes tentando se acostumar com o Rust, me deparei com algumas saídas que não entendo usarVec::get. Aqui está o código: fn main() { let command = [('G', 'H'), ('H', '5')]; for i in 0..3 { ...
Implementar automaticamente características do tipo fechado para os novos tipos de ferrugem (estruturas de tupla com um campo)
No Rust, estruturas de tupla com apenas um campo podem ser criadas da seguinte maneira: struct Centimeters(i32);Eu quero fazer aritmética básica comCentimeters sem extrair seus valores "internos" toda vez com a correspondência de padrões e ...
Como passo uma matriz para uma função no Rust e altero seu conteúdo?
Eu quero passar uma matriz para uma função e alterar o conteúdo dentro dela. Como posso fazer isso, este é o meu código abaixo, mas é claro que não funciona. fn change_value(mut arr: &[int]) { arr[1] = 10; } fn main() { let mut arr: [int, ..4] = ...
Erro de vida útil da ferrugem esperado vida útil concreta, mas encontrou vida útil limitada
Estou tendo um problema ao trabalhar com parâmetros de vida útil para estruturas. Não tenho 100% de certeza de como descrever o problema, mas criei um caso trivial que mostra meu erro de tempo de compilação. struct Ref; struct Container<'a> { r ...
Como crio duas novas fatias mutáveis a partir de uma fatia?
Gostaria de pegar uma fatia mutável e copiar o conteúdo em duas novas fatias mutáveis. Cada fatia é metade do original. Minha tentativa 1: let my_list: &mut [u8] = &mut [0, 1, 2, 3, 4, 5]; let list_a: &mut [u8] = my_list[0..3].clone(); let ...
É possível escrever uma macro Rust que será expandida para uma assinatura de função / método?
Gostaria muito de poder algo como o seguinte: macro_rules! impl_a_method( ($obj:ident, $body:block) => ( fn a_method(foo: Foo, bar: Bar, baz: Baz) -> $obj $body ) ) // Implementation would look like: impl_a_method!(MyType, { MyType { foo: ...