Referência da Biblioteca Operacional

Esta página cataloga os pacotes seed comuns preparados pelo compilador operacional LLVM de seed/compiler/llvm/libs. Ele não trata todos os diretórios da árvore de compatibilidade Grove de nível superior como um pacote atual.

Importar e construir modelo

Os pacotes principais do repositório usam importações simples:

use "io"
use "parse"
use "vec"

Os caminhos incrementais build e run do inicializador resolvem esses nomes, criam artefatos nativos profile/target-compatible e .sdi e reutilizam gerações instaladas exatas. O subcomando check mais restrito atualmente invoca a verificação direta da fonte e não prepara primeiro um pacote vazio ausente. Uma construção --static explícita seleciona dependências seed estáticas correspondentes; a vinculação hospedada comum usa os artefatos dinâmicos compatíveis com o perfil por padrão.

A disponibilidade permanece limitada pelo manifesto de cada pacote e pela matriz de capacidade de destino canônica. Um pacote presente na árvore de origem não adiciona serviços de tempo de execução a um destino que não os possui.

Catálogo de pacotes

Pacote Superfície pública principal Função
box box_new, view, into_inner Indireção de propriedade única falível para valores recursivos ou grandes
byte_buffer byte_buffer_new, reserve, push, extend, resize, into_bytes Construção de bytes inicializados com reconhecimento de capacidade com crescimento falível verificado
fibonacci fibonacci_i64 Fibonacci iterativo verificado sem alocação retornando None para entrada negativa ou estouro
file write_text, write_stdout, write_stderr, variantes de formato Wrappers de compatibilidade de saída hospedados baseados em descritor
format bool_text, option_bool_text Pequenos ajudantes em formato de texto estático
hkdf hkdf_extract, hkdf_expand RFC 5869 HKDF-SHA256 funções pseudo-aleatórias (extrair + expandir) sobre o hmac_sha256 primitivo
io input_stream, output_buffer, read/write/all e operações de formato Digitado parcial e hospedado em buffer I/O com io_error
math sqrt_*, abs_*, min_*, max_* Operações f32/f64 em linha portáteis
net open_ipv4_stream, socket Wrapper de soquete de fluxo IPv4 de propriedade hospedado mínimo
parse parse_i*, parse_u*, parse_*_or Análise de número inteiro verificada com parse_error digitado e padrões explícitos
process current_id, argument_count, argument, environment, process_fork, process_exec_args, process_exec_args_with_environment, process_change_directory, process_wait Visualizações process/environment livres de alocação e primitivas de subprocesso hospedadas limitadas
serialize encode_bool, decode_bool Superfície de serialização segura representativa mínima
mobile ligações de plataforma, ciclo de vida, entrada, exibição, área de transferência Android API 21/29/37 ARM64 AVD e iOS 26.5 Execução do simulador ARM64
path_file file_descriptor, open, read, write, metadata Descritores de arquivo de caminho de propriedade para sequencial verificado I/O, renomeação atômica e bloqueio consultivo
slice slice_split_at_mut, reverter, girar, auxiliares de janela Algoritmos genéricos livres de alocação em fatias de tipo nativo
sort funções de classificação escalar e sort_by_key Classificação de fatias mutáveis no local, incluindo envio de chave estática para valores somente de movimentação
system wrappers de endereço, tabelas de páginas, MMIO, atômicos, alocação de bump, pinned/DMA valores Abstrações de sistemas independentes auditados sobre construção insegura explícita
task canais, junções, resultados digitados, eventos, cancelamento, grupos de espera, semáforos, barreiras, bloqueios Comunicação e sincronização estruturadas apoiadas por agendador
text utf8_next, utf8_count, utf8_validate, split_ascii Livre de alocação UTF-8 escalar validation/counting e cursores de token delimitados por ASCII
time monotonic_ms, wall_time_seconds, wall_time_ms Valores de tempo decorrido hospedado e relógio de parede Unix
tls13 tls13_core_seal/open, tls13_chacha_seal/open, tls13_record_pack/unpack, tls13_hkdf_expand_label, tls13_derive_secret, tráfego secret/key/iv derivação Puro-seed TLS 1.3 ChaCha20-Poly1305 AEAD, registro protect/unprotect, e cronograma principal RFC 8446 §7; não handshake/X.509 ainda
vec vec, APIs de fila, conjunto, mapa e mutação falível Coleções genéricas de propriedade com limpeza exata e visualizações verificadas

Pacotes de aplicativos de nível superior Grove árvore inclui std-uuid 0,2. Ele fornece livre de alocação UUID validação de texto, validação estrita RFC 9562 UUIDv7, determinística uuid_v7_from_partse falível uuid_v7 geração apoiada por milissegundos de relógio hospedado mais 74 bits do sistema operacional auditado entropy pacote. Os UUIDs permanecem identificadores em vez de credenciais.

Convenções de propriedade e erro

Os pacotes operacionais seguem o modelo de propriedade do idioma:

I/O

O novo código deve preferir io aos wrappers de compatibilidade file mais restritos. A distinção importante é a entrada parcial:

byte_buffer e io compartilham o contrato de prefixo inicializado. Chamadores seguros nunca observam capacidade não inicializada sobressalente.

Grove execução de comando

O Grove command O pacote fornece execução infantil baseada em argv limitada para aplicativos hospedados. command_run_configured_with_stdin_file tem o mesmo diretório de trabalho, ambiente, tempo limite e contrato de limite de captura que command_run_configurede, adicionalmente, conecta um arquivo de entrada regular existente à entrada padrão do filho. O arquivo é aberto sem seguir um link simbólico final e todos parent/child os descritores mantêm a limpeza exata. Isto é útil para protocolos stdio limitados, como servidores de linguagem, sem invocar um shell ou reter uma segunda cópia na memória da solicitação emoldurada.

Coleções e fatias

vec<t> é a sequência genérica canônica que pode ser cultivada. Ele fornece capacidade falível e operações push, verificadas update/pop, visualizações somente leitura e mutáveis e limpeza exata para elementos somente movimentação. Os tipos de fila, conjunto e mapa usam o mesmo modelo de propriedade.

Nativo []t e mut []t permanecem os tipos de sequência emprestados padrão. O slice pacote adiciona algoritmos; indexação verificada, fatiamento, fill, copy_frome split_at_mut são operações principais, em vez de um invólucro herdado de fatias de gordura brutas.

Tarefas

task é um pacote comum, não um conjunto de linguagens integradas. Ele fornece:

Endpoints e tickets mantêm seus linear/exact-cleanup contratos. Direto spawn permanece lexicalmente estruturado e postfix ? não pode cruzar o limite do corpo gerado enquanto esse corpo ABI retorna void.

Pacote de sistemas

system alvos declarados perfis independentes. Endereços brutos, ponteiros MMIO, armazenamento atômico, buffers fixados, buffers DMA e armazenamento de apoio do alocador são criados por meio de unsafe construtores. Os métodos seguros dependem do alinhamento, vida útil, espaço de endereço, sincronização e obrigações de propriedade desses construtores.

A presença deste pacote não implica que todos os destinos hospedados ou independentes forneçam todos os serviços do sistema. Consulte System Primitives e a matriz de destino Gate 14.

Grove inventário de pacotes

O nível superior grove/libs/ corpus concluído Classificação G01–G22: 218 pacotes manifestados são cobertos exatamente uma vez pelo Grove arnês do portão. Pacotes portados expõem interfaces atuais excluídas da origem; pacotes arquivados expõem apenas seus documentos documentados validation/unavailability limite. Veja Grove Árvore de compatibilidade e Roteiro da Biblioteca.

Pacotes de clientes de rede operacional

Pacote Função Limite atual
std-url Absoluto limitado sem alocação URL analisador Intervalos de componentes emprestados, IPv6 entre colchetes, portas verificadas; não IDNA/relative resolução
tls Possuído OpenSSL 3 server/client contextos e conexões TLS 1,2 mínimo; certificado de cliente e hostname/IP verificação mais tempo limite de handshake digitado; macOS Execução ARM64 e Linux AArch64 construção cruzada
http-client Puro-seed HTTP/1.1 cliente (não OpenSSL): GET sobre TCP bruto ou o tls13 transporte Limites digitados (connect/io tempos limite, head/header/body maiúsculos), Autorização opcional, Content-Length/chunked/close-delimited enquadramento, propriedade limitada Location/Retry-After, bloqueando read() cursor e uma ponte de fonte de áudio para a fonte de retorno de chamada do codec compartilhado; DNS através do puro-seed dns pacote com IPv4-literal e localhost caminhos rápidos; sem cookies, redirecionamentos, descompactação ou pooling
http-client-tls Fino puro-seed embalagem preservando o TLS-contexto API (system/open/enabled, get_host_authority_authorized) acabou http-client + tls13 A mesma pilha TLS 1.3 verificada do e2e verificado pelo servidor; verificação do nome do host do CertificateVerify prova de posse da chave; a distribuição do armazenamento raiz do sistema continua sendo uma lacuna documentada
http-fetch Redirecionamento limitado absoluto HTTP/HTTPS URL composição sobre o puro seed clientes Resolução IPv4 do sistema, autoridade explícita, referência relativa e manipulação de segmento de ponto, remoção de fragmentos, limite de redirecionamento, rejeição de downgrade de HTTPS, autorização somente HTTPS confinada a redirecionamentos de mesma origem e retry/backoff exponencial limitado por chamador para falhas GET transitórias; sem cancelamento de resolvedor, cache ou ganchos de política
audio-network-source Adaptador de propriedade exata de um corpo HTTP/HTTPS para a origem de retorno de chamada do codec compartilhado HTTP getter de conveniência mais transferência genérica de corpo; retry/cache/live-stream a política permanece acima dela; link de aplicativos http_client_source.c para a ponte de retorno de chamada

Os limites completos e as evidências da meta estão registrados no G12 e G14 linhas de base.

Pacotes de atualização remota de UI adaptável operacional

Pacote Função Limite atual
grove-ui-plugin-update Seleção de catálogo autenticado e atualização de artefato de plug-in transacional Nova tentativa transitória de três tentativas, autorização HTTPS de mesma origem, signed/fresh/monotonic catálogos, ligação exata da versão do pacote, trust/permission comprovação, histórico de geração e precisão opcional URL reserva de cache
grove-ui-plugin-remote-cache Cache opaco limitado para cargas úteis de plug-ins remotos Raiz existente selecionada pelo chamador, SHA-256 exata-URL chaves, arquivos de partes privadas, bloqueios de sistema operacional por entrada, sincronização, substituição atômica, erros digitados e teto de 64 MiB; todos os hits permanecem não confiáveis ​​e exigem revalidação do chamador
grove-ui-plugin-trust-distribution Entrega HTTPS verificada de envelopes de política de confiança assinados A verificação fixada pela raiz permanece visível para o aplicativo; o fallback em cache é apenas transitório e apenas envelopes já verificados são armazenados

O cache não implementa condicional HTTP validadores, expiração, despejo, cota compartilhada, criptografia ou manutenção em segundo plano. Nativo macOS ARM64, Linux x86-64 e Windows x86-64/Wine debug/release a evidência é congelada pelo atualização e distribuição de confiança linhas de base.

Ridge pacotes v0.3

A pilha de banco de dados local Ridge v0.3 completa é dividida em pacotes Grove comuns:

Pacote Função
ridge B+Tree armazenamento, WAL, MVCC, restrições, backup/recovery, integridade e vácuo
ridge_sql Multicoluna limitada SQL, transações, índices, planejador, derramamento, JSON, análise e observabilidade
ridge_pgwire Servidor pgwire Loopback TLS/password e protocolo estendido de texto limitado
ridge_timeseries Chaves de tempo compostas persistentes, range/bucket/rate/retention/downsampling operações
ridge_fulltext Normalizado persistente terms/positions, boolean/prefix/phrase pesquisa, subconjunto BM25, destaques
ridge_vector Vetores f32 corrigidos, top-k exato, HNSW persistente limitado, filtros, recall/memory limites
ridge_ops Arquivo de limite de commit PITR, exercícios de restauração, migrações, manutenção, health/metrics/logs/quotas

Esses são contratos de banco de dados local limitados, não paridade PostgreSQL ou serviços de cluster. Consulte Ridge Database e o documento de capacidade Ridge para obter as formas e exclusões exatas suportadas.

Fontes da verdade