Biblioteca Padrão do Zig (stdlib): Guia dos Módulos std com Exemplos
Biblioteca Padrão do Zig (stdlib): módulos std em português A biblioteca padrão do Zig, também chamada de Zig stdlib ou simplesmente std, é a coleção de módulos oficiais …
Biblioteca Padrão do Zig (stdlib): módulos std em português A biblioteca padrão do Zig, também chamada de Zig stdlib ou simplesmente std, é a coleção de módulos oficiais …
HashMap em Zig: AutoHashMap, StringHashMap e getOrPut Resposta direta: para criar um dicionário em Zig, use std.AutoHashMap(K, V) com chaves numéricas ou structs …
std.ArrayHashMap — Mapa Hash com Ordem de Inserção O std.ArrayHashMap é uma implementação de mapa hash que preserva a ordem de inserção dos elementos. Diferente do …
std.ArrayList — Array Dinâmico O std.ArrayList é a estrutura de dados de array dinâmico da biblioteca padrão do Zig. Ele funciona como um vetor que cresce automaticamente …
std.atomic — Operações Atômicas O módulo std.atomic fornece operações atômicas para programação concorrente sem locks (lock-free programming). Operações atômicas são …
std.crypto — Criptografia O módulo std.crypto fornece implementações criptográficas de alta qualidade escritas em Zig puro (sem dependências de C). Ele inclui funções de …
std.crypto.hash — Funções de Hash Criptográficas As funções de hash criptográficas do Zig produzem um resumo (digest) de tamanho fixo a partir de dados de tamanho …
std.crypto.random — Geração Aleatória Criptograficamente Segura O std.crypto.random fornece acesso a um gerador de números aleatórios criptograficamente seguro (CSPRNG). …
std.debug — Depuração e Diagnóstico O módulo std.debug contém utilitários de depuração para desenvolvimento em Zig. Inclui saída de diagnóstico via stderr, assertions, …
Event Loop e I/O Assíncrono em Zig O Zig historicamente explorou um modelo de programação assíncrona baseado em async frames e um event loop integrado à biblioteca …
std.fmt — Formatação de Strings O módulo std.fmt é o sistema central de formatação do Zig, usado por std.debug.print, writer.print, std.fmt.bufPrint e muitas outras …
std.fmt Format Strings — Sintaxe de Formatação As format strings do Zig controlam como valores são convertidos em texto. Elas são verificadas em tempo de compilação, …
std.fmt.parseInt / parseFloat — Conversão de Strings para Números As funções std.fmt.parseInt e std.fmt.parseFloat convertem representações textuais de números em valores …
std.fs — Sistema de Arquivos O módulo std.fs fornece uma interface portável para operações com o sistema de arquivos. Ele permite abrir, criar, ler e escrever arquivos, …
std.fs.cwd() — Diretório de Trabalho Atual A função std.fs.cwd() retorna um handle Dir que representa o diretório de trabalho atual (Current Working Directory) do …
std.fs.Dir — Tipo Dir e Iteração O tipo std.fs.Dir representa um descritor de diretório aberto. Ele é a base para operações de sistema de arquivos no Zig, oferecendo …
std.fs.File — Tipo File e Operações O tipo std.fs.File representa um descritor de arquivo aberto no sistema operacional. Ele fornece métodos para leitura, escrita, …
std.heap — Alocadores de Memória O módulo std.heap fornece implementações concretas da interface std.mem.Allocator. Cada alocador tem características diferentes, …
ArenaAllocator — Alocador de Arena O ArenaAllocator é um alocador que permite liberar toda a memória alocada de uma vez. Chamadas individuais a free() são no-ops — a …
FixedBufferAllocator — Alocador sobre Buffer Fixo O FixedBufferAllocator aloca memória a partir de um buffer pré-existente de tamanho fixo. Ele não faz nenhuma syscall ao …
GeneralPurposeAllocator — Alocador de Uso Geral O GeneralPurposeAllocator (GPA) é o alocador recomendado para uso geral em Zig. Ele combina bom desempenho com recursos de …
page_allocator — Alocador de Páginas O std.heap.page_allocator é um alocador que solicita memória diretamente ao sistema operacional em unidades de páginas. Ele usa mmap …
std.http — HTTP Client e Server O módulo std.http fornece uma implementação completa de HTTP/1.1 na biblioteca padrão do Zig, incluindo tanto um cliente para fazer …
std.http.Client — Cliente HTTP O std.http.Client permite fazer requisições HTTP/1.1 a servidores remotos. Ele suporta todos os métodos HTTP, cabeçalhos customizados, …
std.io Buffered — BufferedReader e BufferedWriter Para fazer I/O com buffer em Zig, envolva um reader existente com std.io.bufferedReader() ou um writer com …
std.io — Entrada e Saída O módulo std.io é o ponto central para operações de entrada e saída no Zig. Ele fornece interfaces genéricas (Writer e Reader) que são …
getStdOut, getStdErr, getStdIn — Fluxos Padrão As funções getStdOut(), getStdErr() e getStdIn() fornecem acesso aos três fluxos padrão de I/O do processo: saída padrão, …
std.io.FixedBufferStream — Stream sobre Buffer Fixo O FixedBufferStream é um tipo que implementa as interfaces Reader e Writer sobre um buffer de tamanho fixo em memória. …
std.io.Reader — Interface de Leitura A interface Reader é o mecanismo genérico do Zig para leitura de bytes. Assim como o Writer, ela é parametrizada em tempo de …
std.io.Writer — Interface de Escrita A interface Writer do Zig é o mecanismo genérico fundamental para escrita de bytes. Qualquer tipo que implemente a função de escrita …
std.json — Parsing e Serialização JSON O módulo std.json fornece funcionalidades completas para trabalhar com JSON no Zig. Ele inclui um parser que pode desserializar …
std.json Parsing — Desserialização de JSON O sistema de parsing JSON do Zig permite converter strings JSON em valores Zig de forma segura e eficiente. Ele suporta tanto …
std.json Stringify — Serialização para JSON A serialização JSON do Zig converte valores Zig (structs, arrays, slices, optionals, enums) em strings JSON válidas. O sistema …
std.mem — Operações de Memória O módulo std.mem fornece funções fundamentais para trabalhar com memória e slices no Zig. Ele inclui operações de comparação, busca, cópia, …
std.mem.Allocator — Interface de Alocação A interface Allocator é o mecanismo central de alocação de memória em Zig. Em vez de usar uma função global como malloc, o Zig …
std.mem.eql, indexOf e Comparações As funções de comparação e busca de std.mem são essenciais para trabalhar com strings e slices em Zig. Como o Zig trata strings como …
std.mem.split e tokenize — Divisão e Tokenização Para dividir uma string em Zig, use std.mem.splitScalar(u8, texto, ',') para um delimitador de um caractere, …
std.MultiArrayList — Estrutura de Arrays (SoA) O std.MultiArrayList implementa o padrão Structure of Arrays (SoA), onde uma coleção de structs é armazenada como arrays …
std.net.Address — Endereços de Rede O tipo std.net.Address representa um endereço de rede completo (endereço IP e porta) usado para identificar endpoints em comunicações …
std.net.Stream — Conexão TCP Bidirecional O std.net.Stream representa uma conexão TCP estabelecida e bidirecional. Ele encapsula um descritor de socket do sistema …
std.os — Interface com o Sistema Operacional O módulo std.os (e seu complemento std.posix) fornece acesso direto às APIs do sistema operacional. No Zig, a filosofia é …
std.process — Gerenciamento de Processos O módulo std.process fornece funcionalidades para gerenciar processos no Zig. Isso inclui a execução de processos filhos, acesso …
std.Thread — Threads Nativas O módulo std.Thread fornece acesso a threads nativas do sistema operacional no Zig. Ele permite criar threads, aguardar sua conclusão, e …
std.Thread.Mutex — Exclusão Mútua O std.Thread.Mutex é a primitiva fundamental de sincronização do Zig para proteger dados compartilhados entre threads. Ele garante que …
std.Thread.Pool — Pool de Threads O std.Thread.Pool gerencia um conjunto reutilizável de threads de trabalho (worker threads) que processam tarefas de uma fila …
std.time — Tempo e Medição de Performance O módulo std.time fornece funcionalidades para trabalhar com tempo no Zig, incluindo medição de alta resolução, timestamps, …