Crate bao_tree

source ·
Expand description

The tree for the bao file format

This crate is similar to the bao crate, but takes a slightly different approach.

The core struct is BaoTree, which describes the geometry of the tree and various ways to traverse it. An individual node is identified by TreeNode, which is just a newtype wrapper for an u64.

TreeNode provides various helpers to e.g. get the offset of a node in different traversal orders.

There are various newtypes for the different kinds of integers used in the tree, e.g. ByteNum for number of bytes, ChunkNum for number of chunks.

All this is then used in the io module to implement the actual io, both synchronous and asynchronous.

Re-exports

Modules

  • Implementation of bao streaming for std io and tokio io
  • Iterators over BaoTree nodes

Structs

Enums