std.heap.page_allocator em Zig — Referência e Exemplos
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 …
A biblioteca padrão do Zig (std) oferece um conjunto abrangente de módulos para operações fundamentais de programação — desde manipulação de memória e I/O até redes, criptografia e estruturas de dados. Esta referência documenta cada módulo com explicações em português brasileiro, assinaturas de funções e exemplos práticos.
Para acessar qualquer módulo da biblioteca padrão, basta importar std:
const std = @import("std");
A partir daí, você pode acessar qualquer submódulo diretamente:
const io = std.io;
const mem = std.mem;
const fs = std.fs;
| Módulo | Descrição |
|---|---|
| std.io | Visão geral do sistema de I/O |
| std.io.Writer | Interface genérica de escrita |
| std.io.Reader | Interface genérica de leitura |
| std.io Buffered | BufferedReader e BufferedWriter |
| std.io.FixedBufferStream | Stream sobre buffer fixo |
| getStdOut, getStdErr, getStdIn | Acesso aos fluxos padrão |
| Módulo | Descrição |
|---|---|
| std.fs | Visão geral do sistema de arquivos |
| std.fs.cwd() | Diretório atual e operações |
| std.fs.File | Tipo File e operações |
| std.fs.path | Utilitários de caminhos |
| std.fs.Dir | Tipo Dir e iteração |
| Módulo | Descrição |
|---|---|
| std.mem | Visão geral de operações de memória |
| std.mem.Allocator | Interface de alocador |
| std.mem.eql | Comparação e busca em memória |
| std.mem.split | Divisão e tokenização |
| std.heap | Visão geral dos alocadores |
| GeneralPurposeAllocator | Alocador de uso geral |
| ArenaAllocator | Alocador de arena |
| page_allocator | Alocador de páginas |
| FixedBufferAllocator | Alocador sobre buffer fixo |
| Módulo | Descrição |
|---|---|
| ArrayList | Lista dinâmica (vetor) |
| ArrayHashMap | HashMap com ordem de inserção |
| HashMap | Tabela hash genérica |
| StringHashMap | HashMap com chaves string |
| MultiArrayList | Struct of Arrays |
| BoundedArray | Array com tamanho limitado |
| PriorityQueue | Fila de prioridade (heap) |
| SegmentedList | Lista segmentada |
| LinkedList | Listas ligadas |
| Módulo | Descrição |
|---|---|
| std.fmt | Visão geral de formatação |
| Sintaxe de Format | Strings de formatação |
| parseInt, parseFloat | Conversão de strings para números |
| std.json | Visão geral de JSON |
| JSON Parsing | Análise de JSON |
| JSON Stringify | Serialização JSON |
| std.Uri | Análise de URIs |
| std.base64 | Codificação Base64 |
| Módulo | Descrição |
|---|---|
| std.net | Visão geral de rede |
| std.net.Stream | Socket Stream |
| std.net.Address | Tipo Address |
| std.http | Visão geral HTTP |
| HTTP Client | Cliente HTTP |
| HTTP Server | Servidor HTTP |
| Módulo | Descrição |
|---|---|
| std.Thread | Threads nativas |
| Thread.Mutex | Mutex e sincronização |
| Thread.Pool | Pool de threads |
| std.atomic | Operações atômicas |
| Event Loop | Conceitos de event loop |
| Módulo | Descrição |
|---|---|
| std.math | Visão geral de matemática |
| Funções matemáticas | Funções comuns |
| std.crypto | Visão geral de criptografia |
| Hash functions | Funções de hash |
| Crypto random | Números aleatórios criptográficos |
| std.compress | Compressão de dados |
| Módulo | Descrição |
|---|---|
| std.os | Interface com o SO |
| std.process | Processos e ambiente |
| std.time | Tempo e cronômetros |
| std.debug | Depuração e assertivas |
| std.log | Framework de logging |
| std.testing | Utilitários de teste |
| std.sort | Algoritmos de ordenação |
A biblioteca padrão do Zig segue algumas convenções importantes:
Allocator como parâmetro, tornando a gestão de memória transparente.error union (!T), integrando-se com o sistema de try/catch do Zig.comptime para tipagem genérica sem custo em tempo de execução.Writer e Reader utilizam ponteiros de função resolvidos em tempo de compilação quando possível.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 …
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 …
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 …
std.http.Server — Servidor HTTP O std.http.Server permite construir servidores HTTP/1.1 diretamente na biblioteca padrão do Zig, sem dependências externas. Ele …
std.io Buffered — BufferedReader e BufferedWriter Os tipos BufferedReader e BufferedWriter envolvem readers e writers existentes adicionando uma camada de …
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 …
std.io.FixedBufferStream — Stream sobre Buffer Fixo O FixedBufferStream é um tipo que implementa as interfaces Reader e Writer sobre um buffer de tamanho fixo …
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 …
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 …
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 …
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 …