Como incluir condicionalmente atributos como `#[derive]` em Rust?
Olá a todos! Estou estudando Rust e me deparei com uma situação em que preciso que uma struct implemente automaticamente a trait `Debug` apenas no modo de depuração (debug build), e na compilação de release, não. Eu conheço o `#[cfg(debug_assertions)]`, que permite compilar blocos de código condicionalmente. Mas como aplicar isso a atributos, especialmente ao `#[derive]`?\n\nAqui está um exemplo que não funciona:\n\n```rust\n#[cfg(debug_assertions)]\n#[derive(Debug)]\nstruct MyStruct {\n value: i32,\n}\n```\n\nO compilador reclama que o atributo `derive` não pode ser condicional. Tentei diferentes variações: colocar `cfg` depois de `derive`, usar atributos aninhados — nada funciona.\n\nEncontrei discussões semelhantes em fóruns em inglês, mas são antigas (2016–2018). Talvez algo tenha mudado desde então? Ou existe uma solução alternativa?
No answers yet.
Faça login para deixar uma resposta