Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/LayerZero-Labs/qmdb
/ types & classes
Types & classes
185 in github.com/LayerZero-Labs/qmdb
⨍
Functions
1,374
◇
Types & classes
185
↓ 2 callers
Class
NodePos
crates/qmdb/src/merkletree/tree.rs:86
↓ 2 callers
Interface
Task
crates/qmdb-common/src/task/task.rs:4
↓ 1 callers
Class
AlignedHash32
crates/qmdb-common/src/utils/hasher.rs:15
↓ 1 callers
Class
Block
crates/qmdb/src/test_helper/testgen.rs:92
Interface
ADS
Core trait defining the database interface. Provides operations for reading, writing, and verifying state. # Thread Safety All methods are thread-saf
crates/qmdb/src/lib.rs:1275
Class
ActiveBits
crates/qmdb/src/utils/activebits.rs:55
Class
ActiveBits
crates/qmdb-common/src/merkletree/activebits.rs:9
Class
ActiveBitsUtil
Utility functions for manipulating active bits using u64 operations. Works with 4-element u64 slices (256 bits total).
crates/qmdb-common/src/merkletree/activebitsutil.rs:3
Class
AddressHasher
Hasher for 20-byte address keys. Uses all 20 bytes: bytes 0..8 XOR 8..16 XOR (12..20 shifted) + wyhash64.
crates/qmdb-common/src/utils/short_key.rs:59
Class
AdsCore
Core database engine handling state storage and verification. Manages the underlying storage, indexing, and proof generation. # Architecture AdsCore
crates/qmdb/src/lib.rs:180
Class
AdsWrap
High-level wrapper providing block-oriented database operations. Manages block lifecycle, caching, and task coordination. # Type Parameters `T`: Task
crates/qmdb/src/lib.rs:973
Class
AlignedBuf512
Buffer with 512-byte alignment for O_DIRECT operations. This buffer guarantees that: - The starting address is aligned to 512 bytes - Memory is conti
crates/hpfile/src/aligned_buf.rs:71
Class
BarrierSet
crates/qmdb/src/flusher/barrier_set.rs:3
Class
BatchProofReq
crates/qmdb/src/flusher/shard.rs:17
Class
BenchmarkResults
bench/src/speed/results.rs:134
Class
BigEndian
crates/qmdb-common/src/utils/byteorder.rs:57
Class
Bitmap
crates/qmdb/src/utils/bitmap.rs:9
Class
BitmapModel
bench/src/speed/correctness.rs:58
Class
Block512
crates/hpfile/src/aligned_buf.rs:30
Class
BlockPairTaskHub
crates/qmdb/src/tasks/bptaskhub.rs:11
Enum
BlockType
bench/src/speed/streaming_gen.rs:24
Class
BufList
Manages a pool of direct I/O buffers. Provides: - Buffer allocation - Buffer recycling - Buffer access
crates/qmdb/src/prefetcher/dioprefetcher.rs:1253
Class
BytesCache
A sharded cache for storing and retrieving byte slices. This cache provides concurrent access through multiple shards, each protected by a read-write
crates/qmdb/src/utils/bytescache.rs:216
Class
BytesCacheShard
A shard of the bytes cache that manages a subset of the cached data. Each shard maintains its own buffer pool and position mapping to reduce contenti
crates/qmdb/src/utils/bytescache.rs:79
Class
ChangeOp
crates/qmdb-common/src/utils/changeset.rs:33
Class
ChangeSet
crates/qmdb-common/src/utils/changeset.rs:154
Class
ChunkState
crates/qmdb-common/tests/reference_impl.rs:165
Class
Cli
bench/src/cli.rs:5
Class
CompactJob
crates/qmdb/src/compactor.rs:69
Class
Compactor
Manages the compaction process for a database shard. The Compactor coordinates storage optimization by: - Monitoring entry counts and triggering comp
crates/qmdb/src/compactor.rs:95
Class
Config
crates/qmdb/src/config.rs:126
Class
Consumer
Consumer end of a ring buffer channel. The consumer can: - Receive items from the producer - Return items back to the producer
crates/qmdb/src/utils/ringchannel.rs:27
Class
Counters
crates/qmdb/src/indexer/hybrid/index_cache.rs:13
Class
CrudCli
bench/src/bin/crud.rs:34
Class
DSNIter
Iterator over deactivated serial numbers in an entry. This iterator yields (index, serial_number) pairs for each deactivated serial number stored in
crates/qmdb-common/src/entryfile/entry.rs:600
Class
DetailedStats
bench/src/speed/metrics.rs:192
Class
DiffMap
crates/qmdb-common/src/merkletree/diffmap.rs:36
Enum
DoneReceiver
crates/qmdb/src/entryfile/uring_reader.rs:63
Enum
DoneSender
crates/qmdb/src/entryfile/uring_reader.rs:40
Class
EdgeNode
crates/qmdb/src/merkletree/tree.rs:129
Class
Entry
crates/qmdb-common/src/entryfile/entry.rs:46
Class
EntryBuffer
crates/qmdb/src/entryfile/entrybuffer.rs:97
Class
EntryBufferReader
crates/qmdb/src/entryfile/entrybuffer.rs:272
Class
EntryBufferWriter
crates/qmdb/src/entryfile/entrybuffer.rs:50
Class
EntryBuilder
crates/qmdb-common/src/entryfile/helpers.rs:6
Class
EntryBz
crates/qmdb-common/src/entryfile/entry.rs:64
Class
EntryCache
crates/qmdb/src/entryfile/entrycache.rs:8
Class
EntryFile
crates/qmdb/src/entryfile/entryfile.rs:16
Class
EntryFileWithPreReader
crates/qmdb/src/entryfile/entryfile.rs:392
Class
EntryFileWriter
crates/qmdb/src/entryfile/entryfile.rs:447
Interface
EntryIndexer
Trait for indexer operations required by EntryMutator
crates/qmdb-common/src/mutator/entrymutator.rs:51
Interface
EntryMutationInspector
Trait for inspecting entry mutations during database operations. This trait provides hooks for monitoring entry operations such as reading, appending
crates/qmdb-common/src/mutator/entrymutator.rs:66
Class
EntryMutationResult
crates/qmdb-common/src/mutator/entrymutator.rs:79
Class
EntryMutator
Handles mutations of key-value entries with efficient indexing
crates/qmdb-common/src/mutator/entrymutator.rs:87
Class
EntryMutatorBuilder
Builder for creating EntryMutator instances with different configurations. This builder allows for step-by-step configuration of an EntryMutator, sta
crates/qmdb-common/src/mutator/entrymutator.rs:369
Interface
EntryStorage
Trait for storage operations on entries
crates/qmdb-common/src/mutator/entrymutator.rs:18
Class
ExtEntryFile
crates/qmdb/src/entryfile/entrybuffer.rs:14
Class
FileChunk
crates/hpfile/src/watcher.rs:18
Class
FileReader
crates/qmdb/src/indexer/hybrid/file_reader.rs:12
Class
FileSlots
Lock-free file slots using a resizable ring buffer. This is a specialized wrapper around `ResizableSlots<File>` with additional file-specific feature
crates/hpfile/src/file_slots.rs:516
Class
FileWatcher
Watches a directory and streams newly appended file bytes via a crossbeam channel. Implementation notes: - Uses notify (debounced watcher) to receive
crates/hpfile/src/watcher.rs:30
Class
FileWriter
crates/qmdb/src/indexer/hybrid/file_writer.rs:12
Class
Flusher
crates/qmdb/src/flusher/flusher.rs:181
Class
FlusherShard
Shard-specific flusher component that manages local state and operations. The FlusherShard is responsible for: - Managing local buffer operations - U
crates/qmdb/src/flusher/shard.rs:43
Class
GaloisLfsr
crates/qmdb/src/utils/lfsr.rs:18
Class
HPFile
crates/hpfile/src/lib.rs:62
Class
Hash32Hasher
Hasher for 32-byte hash keys (keccak, etc). Uses bytes 0..8 XOR 24..32. No wyhash64 needed (keccak is well-distributed).
crates/qmdb-common/src/utils/short_key.rs:48
Class
HashIterForPosList
Iterator for retrieving hash values for a list of positions in the tree
crates/qmdb/src/merkletree/tree.rs:1107
Class
Hasher
An incremental hasher that can accept any number of writes.
crates/qmdb-common/tests/reference_impl.rs:267
Class
HistoryEntry
crates/qmdb/examples/v3_indexer.rs:76
Class
HoverBlockResult
Result of generating a hover block, including bitmap update info
bench/src/speed/hover_gen.rs:25
Class
HoverConfig
bench/src/speed/streaming_gen.rs:67
Class
HoverExecuteConfig
bench/src/bin/speed.rs:61
Class
HoverGen
Hover block generator
bench/src/speed/hover_gen.rs:33
Class
HoverTaskConfig
bench/src/bin/speed.rs:47
Class
HoverWorkloadArgs
bench/src/cli.rs:45
Class
HybridIndexer
crates/qmdb/src/indexer/hybrid/mod.rs:109
Class
IdentityHasher
Identity hasher for testing - returns the key as-is.
crates/qmdb-common/src/utils/short_key.rs:91
Class
InFlightRequest
crates/qmdb/src/entryfile/uring_reader.rs:122
Class
InMemIndexerGeneric
crates/qmdb/src/indexer/memidx.rs:520
Class
IndexCache
crates/qmdb/src/indexer/hybrid/index_cache.rs:152
Class
IndexCacheMap
crates/qmdb/src/indexer/hybrid/index_cache.rs:88
Class
IndexedBlock
A complete block with its index and type
bench/src/speed/streaming_gen.rs:54
Interface
IndexerTrait
crates/qmdb-common/src/indexer/indexer_trait.rs:3
Class
InstructionMeter
A small helper to measure QEVM instruction count / execution time / cycles. - **Linux ARM64**: Uses `perf_event` to count hardware instructions. - **
crates/qmdb-common/src/utils/instruction_meter.rs:34
Class
IntSet
crates/qmdb/src/utils/intset.rs:105
Enum
Job
Represents a job to be processed by the prefetcher. Can be either: - A task job for processing multiple entries - A warmup job for prefetching specif
crates/qmdb/src/prefetcher/dioprefetcher.rs:362
Class
JobManager
Manages prefetch jobs and I/O operations across shards. Handles: - Buffer management - I/O scheduling - Job coordination - Completion notification
crates/qmdb/src/prefetcher/dioprefetcher.rs:153
Class
JobManager
Manages jobs for the universal prefetcher implementation. This implementation is used for platforms that don't support io_uring. It provides basic jo
crates/qmdb/src/prefetcher/uniprefetcher.rs:21
Class
JobSlot
Per-io_uring-worker tracking for a job. We keep exactly one `Arc<Job>` alive per job (per worker) to avoid per-I/O refcount contention on the `Arc` h
crates/qmdb/src/prefetcher/dioprefetcher.rs:185
Class
KVCursor
crates/qmdb/src/indexer/kvlist.rs:53
Class
KVList
crates/qmdb/src/indexer/kvlist.rs:30
Class
LatencyStats
bench/src/speed/metrics.rs:16
Class
Level8NthHasher
Hasher for level8nth u64 keys. Compresses sparse values (8-15, 24-31, ...) into contiguous indices.
crates/qmdb-common/src/utils/short_key.rs:37
Class
LittleEndian
We just copy some code from https://docs.rs/byteorder/latest/byteorder/ such that it can be used in no_std environment. LittleEndian is a module that
crates/qmdb-common/src/utils/byteorder.rs:5
Class
Merger
crates/qmdb/src/indexer/hybrid/mod.rs:47
Class
MetaDB
Metadata database managing persistent state information. This struct provides methods to read and write metadata to disk, optionally encrypting sensi
crates/qmdb/src/metadb.rs:301
Class
MetaInfo
crates/qmdb/src/metadb.rs:122
Class
MultiEntryFileUringReader
crates/qmdb/src/entryfile/uring_reader.rs:180
Class
MultiEntryFileUringReaderReceiver
crates/qmdb/src/entryfile/uring_reader.rs:190
next →
1–100 of 185, ranked by callers