Configurações de aplicação têm aninhamento profundo: configurações do aplicativo, credenciais de banco de dados, flags de recursos. Este exemplo gera structs Rust a partir de uma estrutura de configuração de múltiplos níveis para que você possa desserializar arquivos de configuração diretamente em sua aplicação Rust.
O Que Você Obtém
A ferramenta produz:
- Um struct raiz
Rootcom três seções superiores:App,Database,Features - Um struct
RootAppcom camposName,Version,Debug - Um struct
RootDatabasecomHost,Porte o struct aninhadoCredentials - Um struct
RootDatabaseCredentialspara autenticação do banco de dados - Um struct
RootFeaturescomDarkMode,MaxConnectionse o vecAllowedOrigins - Mapeamentos de tipos Rust corretos:
String,i64,bool,Vec<String>
Como Usar
- O exemplo carrega com uma configuração de aplicação de exemplo no modo Rust
- A estrutura aninhada mostra como cada seção de configuração recebe seu próprio struct
- Copie os structs e cole em seu projeto Rust
- Substitua com seu JSON de configuração real para gerar structs para seu projeto
Padrão do Mundo Real
Bibliotecas de configuração Rust como config e figment funcionam bem com structs tipados. Gere structs a partir de sua configuração padrão, depois use serde_json::from_str ou o decodificador de sua biblioteca de configuração para preenchê-los a partir de arquivos JSON, variáveis de ambiente ou flags de linha de comando.