FlatBuffers é uma biblioteca de serialização multiplataforma projetada para máxima eficiência de memória. Ele permite que você acesse diretamente dados serializados sem analisá-los/descompactá-los primeiro, ao mesmo tempo em que possui excelente compatibilidade direta/posterior.
Construa o compilador para flatbuffers ( flatc
)
Use cmake
para criar os arquivos de compilação para sua plataforma e depois realizar a compilação (exemplo Linux).
cmake -G "Unix Makefiles"
make -j
Defina seu esquema flatbuffer ( .fbs
)
Escreva o esquema para definir os dados que você deseja serializar. Veja monster.fbs por exemplo.
Gere código para seu(s) idioma(s)
Use o compilador flatc
para pegar seu esquema e gerar código específico da linguagem:
./flatc --cpp --rust monster.fbs
O que gera arquivos monster_generated.h
e monster_generated.rs
.
Serializar dados
Use o código gerado, bem como o FlatBufferBuilder
para construir seu buffer serializado. (exemplo C++
)
Transmitir/armazenar/salvar buffer
Use seu buffer serializado como quiser. Envie para alguém, guarde para depois, etc...
Leia os dados
Use os acessadores gerados para ler os dados do buffer serializado.
Não precisa ser a mesma versão de idioma/esquema, FlatBuffers garante que os dados sejam legíveis em idiomas e versões de esquema. Veja o exemplo Rust
lendo os dados escritos por C++
.
Vá para nossa página inicial para navegar em nossa documentação.
Geração de código e bibliotecas de tempo de execução para muitas linguagens populares.
FlatBuffers não segue o versionamento tradicional do SemVer (ver justificativa), mas usa um formato de data de lançamento.
flatbuffers
para qualquer dúvida sobre FlatBuffers.Para contribuir com este projeto, consulte CONTRIBUINDO.
Consulte nossa Política de Segurança para relatar vulnerabilidades.
Flatbuffers é licenciado sob a Licença Apache, Versão 2.0. Consulte LICENÇA para obter o texto completo da licença.