🎯 Palavras Reservadas no Rust
Em poucas palavras
Palavras reservadas (ou keywords) são identificadores especiais que o compilador do Rust utiliza para funcionalidades específicas da linguagem. Elas não podem ser usadas como nomes de variáveis, funções, structs ou qualquer outro identificador, pois possuem um significado semântico fixo para o sistema de tipos e controle de fluxo.
📝 Notas e Desenvolvimento
Para facilitar a consulta, as palavras-chave foram agrupadas por categoria funcional:
1. Controle de Fluxo e Iteração
| Palavra-chave | Descrição |
|---|---|
if / else | Ramificação condicional. |
match | Comparação de padrões (Pattern Matching). |
loop | Loop infinito (incondicional). |
while | Loop condicional. |
for / in | Iteração sobre coleções ou implementação de traits. |
break / continue | Sai de um loop ou pula para a próxima iteração. |
return | Retorna um valor de uma função. |
2. Declarações e Definições
| Palavra-chave | Descrição |
|---|---|
let | Vincula um valor a uma variável. |
fn | Define uma função ou tipo de ponteiro de função. |
struct | Define uma estrutura de dados. |
enum | Define uma enumeração. |
trait | Define uma interface de comportamento. |
impl | Implementa funcionalidades para tipos ou traits. |
const / static | Define itens constantes ou globais. |
type | Cria um alias para um tipo existente. |
3. Módulos e Visibilidade
| Palavra-chave | Descrição |
|---|---|
mod | Define um novo módulo. |
use | Traz símbolos para o escopo atual. |
pub | Torna um item público (visível para outros módulos). |
crate | Refere-se à raiz do crate atual. |
super | Refere-se ao módulo pai. |
extern | Vincula bibliotecas ou funções externas (FFI). |
4. Assincronismo e Concorrência
| Palavra-chave | Descrição |
|---|---|
async | Define um bloco ou função que retorna uma Future. |
await | Suspende a execução até que uma Future seja resolvida. |
move | Força um closure a assumir a propriedade (ownership) de suas capturas. |
5. Outros Identificadores Especiais
as: Realiza conversão de tipos (casting) ou renomeia itens nouse.dyn: Indica despacho dinâmico para objetos de trait.mut: Denota mutabilidade em referências ou variáveis.self/Self: Referem-se à instância atual ou ao tipo que está sendo implementado.unsafe: Delimita blocos de código que ignoram certas verificações de segurança do compilador.where: Adiciona restrições complexas de tipo (generics).ref: Vincula por referência em padrões de busca.
Identificadores Brutos
Se você realmente precisar usar uma palavra reservada como nome (ex: uma API externa que usa
match), você pode usar o prefixor#(ex:let r#match = 10;).
🔗 Conexões e Contexto
- Atlas: MdC - Programação
- Notas Relacionadas: