//! Vocabulary-specific file-header reader.
//!
//! Previously lived as a free function in
//! `persistent_artrie_core::block_storage::read_vocab_header` (and as
//! convenience methods on `MmapDiskManager::read_vocab_header` and
//! `IoUringDiskManager::read_vocab_header`). Those sites coupled the
//! variant-agnostic core storage layer to `VocabTrieFileHeader`, a
//! vocabulary-specific type. The function lives in the vocab module so the
//! coupling runs in the correct direction (vocab → core only).
use crateBlockStorage;
use crateResult;
use crate;
/// Read a [`VocabTrieFileHeader`] from block 0 of any `BlockStorage`.
///
/// This reads the 96-byte extended header used by `PersistentVocabARTrie`,
/// which is wider than the regular 64-byte `FileHeader` used by byte/char
/// tries.