1mod prolly;
253
254pub use prolly::batch::{
256 append_batch, BatchApplyResult, BatchApplyStats, BatchWriter, MutationBuffer,
257};
258#[cfg(feature = "async-store")]
259pub use prolly::blob::{AsyncBlobStore, SyncBlobStoreAsAsync};
260pub use prolly::blob::{
261 BlobRef, BlobStore, BlobStoreScan, FileBlobStore, FileBlobStoreError, LargeValueConfig,
262 MemBlobStore, MemBlobStoreError, ValueRef, DEFAULT_INLINE_VALUE_THRESHOLD,
263};
264#[cfg(feature = "tokio")]
265pub use prolly::blob::{TokioBlockingBlobStore, TokioBlockingBlobStoreError};
266pub use prolly::boundary::BoundaryDetector;
267pub use prolly::builder::{BatchBuilder, SortedBatchBuilder};
268pub use prolly::chunking;
269pub use prolly::cid::Cid;
270pub use prolly::config::{Config, ConfigBuilder, RuntimeConfig};
271pub use prolly::content_graph::{
272 compare_and_swap_named_content_root, compare_and_swap_named_content_root_with_limits,
273 content_references, copy_and_publish_content_graph, copy_content_graph,
274 load_named_content_root, load_named_content_root_with_limits, plan_content_gc,
275 put_named_content_root, put_named_content_root_with_limits, sweep_content_gc,
276 sweep_content_gc_with_invalidator, walk_content_graph, ContentGcPlan, ContentGcSweep,
277 ContentGraphCopy, ContentGraphLimits, ContentGraphWalk, ContentManifestUpdate,
278 ContentObjectKind, ContentRootManifest, ContentRootPublication, TypedContentObject,
279 TypedContentRoot,
280};
281pub use prolly::crdt::{
282 ConflictFreeMerger, CrdtConfig, CrdtResolution, CustomMergeFn, DefaultConflictFreeMerger,
283 DeletePolicy, MergeStrategy, MultiValueSet, TimestampExtractor, TimestampedValue,
284};
285pub use prolly::cursor::{Cursor, CursorIterator, DiffCursor};
286pub use prolly::debug::{
287 TreeDebugComparedNode, TreeDebugComparison, TreeDebugComparisonLevel, TreeDebugLevel,
288 TreeDebugNode, TreeDebugNodeStatus, TreeDebugView,
289};
290#[cfg(feature = "async-store")]
291pub use prolly::diff::{AsyncConflictIter, AsyncDiffIter};
292pub use prolly::diff::{
293 DiffPage, DiffTraversalStats, MergeExplanation, MergeFallbackReason, MergeFastPath,
294 MergeResolutionKind, MergeReuseReason, MergeTrace, MergeTraceEvent, MergeTraceStage,
295 StructuralDiffCursor, StructuralDiffMarker, StructuralDiffPage,
296};
297pub use prolly::encoding::Encoding;
298pub use prolly::error::{resolver, Conflict, Diff, Error, Mutation, Resolution, Resolver};
299pub use prolly::format::{
300 BoundaryInput, BoundaryRule, ChunkMeasure, ChunkingSpec, HashAlgorithm, NodeLayoutSpec,
301 TreeFormat,
302};
303pub use prolly::gc::{
304 BlobGcPlan, BlobGcReachability, BlobGcSweep, GcPlan, GcReachability, GcSweep,
305};
306pub use prolly::key::{
307 debug_key, decode_segments, encode_segment, encode_segment_prefix, i128_key, i64_key,
308 prefix_end, prefix_range, timestamp_millis_key, u128_key, u64_key, KeyBuilder, KeyDecodeError,
309};
310#[cfg(feature = "async-store")]
311pub use prolly::manifest::{AsyncManifestStore, AsyncManifestStoreScan};
312pub use prolly::manifest::{
313 ManifestStore, ManifestStoreScan, ManifestUpdate, NamedRoot, NamedRootManifest,
314 NamedRootRetention, NamedRootSelection, NamedRootUpdate, RootManifest,
315};
316pub use prolly::node::{Node, NodeBuilder};
317pub use prolly::parallel::ParallelConfig;
318pub use prolly::patch::{LogicalPatch, StructuralEdit, StructuralPatch};
319pub use prolly::policy::{
320 MergePolicyFn, MergePolicyRegistry, MergePolicyRule, MergePolicyRuleLabel,
321};
322pub use prolly::proof::{
323 inspect_proof_bundle, sign_proof_bundle_hmac_sha256, verify_authenticated_proof_bundle,
324 verify_authenticated_proof_envelope, verify_diff_page_proof, verify_key_proof,
325 verify_multi_key_proof, verify_proof_bundle, verify_range_page_proof, verify_range_proof,
326 AuthenticatedProofBundleVerification, AuthenticatedProofEnvelope,
327 AuthenticatedProofEnvelopeVerification, DiffPageProof, DiffPageProofVerification, KeyProof,
328 KeyProofVerification, MultiKeyProof, MultiKeyProofVerification, ProofBundleKind,
329 ProofBundleSummary, ProofBundleVerification, ProvedDiffPage, ProvedRangePage, RangePageProof,
330 RangePageProofVerification, RangeProof, RangeProofVerification,
331};
332pub use prolly::proximity::{
333 AcceleratorCatalog, AcceleratorCatalogEntry, AcceleratorSet, AdaptiveQuality,
334 ApproximatePreference, BuildParallelism, CatalogAcceleratorKind, CompositeAccelerator,
335 CompositeAcceleratorConfig, CompositeBase, CompositeBaseKind, CompositeBuildLimits,
336 CompositeBuildOrRebuildOutcome, CompositeBuildOutcome, CompositeBuildStats,
337 CompositeRebuildOptions, DistanceMetric, ExactProximityRecord, FullRebuildReason,
338 HierarchyConfig, HnswBuildLimits, HnswBuildStats, HnswConfig, HnswIndex,
339 HnswRoutingVectorEncoding, HnswSearchOptions, Neighbor, OverflowConfig, PlannerPolicy,
340 PqSearchOptions, ProductQuantizationBuildLimits, ProductQuantizationBuildStats,
341 ProductQuantizationConfig, ProductQuantizationQuality, ProductQuantizer, ProximityBuildStats,
342 ProximityConfig, ProximityFilter, ProximityMap, ProximityMembershipProof,
343 ProximityMembershipVerification, ProximityMutation, ProximityMutationStats,
344 ProximityProofFilter, ProximityReadSession, ProximityRecord, ProximityRecordRef,
345 ProximitySearchClaim, ProximitySearchEvent, ProximitySearchProof, ProximitySearchRequest,
346 ProximitySearchStats, ProximitySearchVerification, ProximityStructuralProof,
347 ProximityStructuralVerification, ProximityTree, ProximityVectorRef, ProximityVerification,
348 QueryKernel, ScalarQuantizationConfig, SearchBackend, SearchBudget, SearchCompletion, SearchIo,
349 SearchOptions, SearchPlan, SearchPlanSummary, SearchPolicy, SearchRequest, SearchResult,
350 SearchRuntime, SearchRuntimePolicy, StoreCacheNamespace, VectorStorageConfig,
351 SEARCH_PLAN_FORMAT_VERSION,
352};
353#[cfg(feature = "async-store")]
354pub use prolly::proximity::{
355 AsyncAcceleratorCatalog, AsyncAcceleratorSet, AsyncCompositeAccelerator, AsyncHnswIndex,
356 AsyncIoConfig, AsyncProductQuantizer, AsyncProximityMap, AsyncSearchControl, CancellationToken,
357};
358pub use prolly::range::{
359 CursorWindow, RangeCursor, RangeIter, RangePage, ReverseCursor, ReversePage,
360};
361#[cfg(feature = "async-store")]
362pub use prolly::read::AsyncReadSession;
363pub use prolly::read::{
364 BorrowedMergeResolver, ConflictRef, DiffRef, EntryRef, MergeDecision, OwnedRangeScanSession,
365 OwnedReadSession, OwnedValueLease, ReadSession, ScanOutcome, ValueRefView,
366};
367pub use prolly::secondary_index::{
368 catalog_checkpoint_key, catalog_checkpoints_prefix, catalog_current_key,
369 catalog_descriptor_key, catalog_format_key, catalog_map_id, catalog_retired_key,
370 control_record_key, control_root_name, decode_physical_index_key,
371 decode_physical_index_key_ref, descriptor_fingerprint, index_map_id, physical_index_key,
372 term_bounds_exact, term_bounds_prefix, term_bounds_range, ActiveIndexControl,
373 ActiveIndexHealth, DecodedPhysicalIndexKey, DecodedPhysicalIndexKeyRef, IndexBuildResult,
374 IndexCheckpoint, IndexControl, IndexProjection, IndexValue, IndexValueRef, IndexVerification,
375 IndexedHeadRecord, IndexedMap, IndexedMapEditor, IndexedMapHealth, IndexedMapMetricsSnapshot,
376 IndexedMapUpdate, IndexedRetentionResult, IndexedSnapshot, IndexedSnapshotBundle,
377 IndexedSnapshotBundleIndex, IndexedSnapshotBundleSummary, IndexedSnapshotBundleVerification,
378 IndexedSnapshotId, IndexedSourceRecord, IndexedSourceRecordRef, IndexedVersion,
379 ProjectedIndexEntry, SecondaryIndex, SecondaryIndexBuilder, SecondaryIndexCursor,
380 SecondaryIndexDescriptor, SecondaryIndexDirection, SecondaryIndexEntry, SecondaryIndexEntryRef,
381 SecondaryIndexError, SecondaryIndexExtractor, SecondaryIndexLimits, SecondaryIndexMatch,
382 SecondaryIndexMatchRef, SecondaryIndexPage, SecondaryIndexRegistry, SecondaryIndexSnapshot,
383 StreamingSecondaryIndexExtractor, TermBounds, INDEXED_SNAPSHOT_BUNDLE_FORMAT_VERSION,
384 INDEX_PHYSICAL_LAYOUT_VERSION, SECONDARY_INDEX_FORMAT_VERSION,
385};
386pub use prolly::snapshot::{
387 snapshot_id_from_name, snapshot_root_name, SnapshotManager, SnapshotNamespace, SnapshotRoot,
388 SnapshotSelection, SNAPSHOT_BRANCH_PREFIX, SNAPSHOT_CHECKPOINT_PREFIX, SNAPSHOT_TAG_PREFIX,
389};
390pub use prolly::splice::{splice, SpliceStats};
391pub use prolly::streaming::{DefaultStreamingDiffer, StreamingDiffer};
392pub use prolly::write::WriteStats;
393pub use prolly::{ChangedSpan, ChangedSpanHint, KeyValue, Prolly, ProllyMetricsSnapshot};
394
395#[cfg(feature = "async-store")]
396pub use prolly::range::{AsyncRangeIter, AsyncRangePage, AsyncReversePage};
397#[cfg(feature = "async-store")]
398pub use prolly::remote::{
399 conformance as remote_conformance, RemoteAdapterError, RemoteBatchOp, RemoteManifestUpdate,
400 RemoteNamedRoot, RemoteProllyStore, RemoteRootCondition, RemoteRootWrite, RemoteStoreBackend,
401 RemoteStoreConfig, RemoteTransactionConflict, RemoteTransactionUpdate,
402};
403pub use prolly::stats::{StatsComparison, StatsDiff, StatsPercentageChange, TreeStats};
404#[cfg(feature = "async-store")]
405pub use prolly::store::{AsyncStore, SyncStoreAsAsync};
406pub use prolly::store::{
407 BatchOp, FileNodeStore, FileNodeStoreError, MemStore, MemStoreError, NodeStoreScan, Store,
408};
409#[cfg(feature = "tokio")]
410pub use prolly::store::{TokioBlockingStore, TokioBlockingStoreError};
411pub use prolly::sync::{
412 MissingNodeCopy, MissingNodePlan, SnapshotBundle, SnapshotBundleNode, SnapshotBundleSummary,
413 SnapshotBundleVerification, SNAPSHOT_BUNDLE_FORMAT_VERSION,
414};
415pub use prolly::tombstone::{
416 is_tombstone_value, tombstone_compaction, tombstone_upsert, Tombstone,
417};
418#[cfg(feature = "async-store")]
419pub use prolly::transaction::{
420 AsyncProllyTransaction, AsyncTransactionOverlayStore, AsyncTransactionalStore,
421 OwnedAsyncProllyTransaction, OwnedAsyncTransactionOverlayStore,
422};
423pub use prolly::transaction::{
424 OwnedProllyTransaction, OwnedTransactionOverlayStore, ProllyTransaction, RootCondition,
425 RootWrite, TransactionConflict, TransactionNodeWrite, TransactionOverlayError,
426 TransactionUpdate, TransactionalStore,
427};
428pub use prolly::tree::Tree;
429pub use prolly::value::{
430 decode_cbor, decode_json, encode_cbor, encode_json, CborCodec, JsonCodec, ValueCodec,
431 VersionedCborCodec, VersionedJsonCodec, VersionedValue,
432};
433#[cfg(feature = "async-store")]
434pub use prolly::versioned_map::{AsyncMapChangeSubscription, AsyncMapSnapshot, AsyncVersionedMap};
435pub use prolly::versioned_map::{
436 BytesKeyCodec, KeyCodec, MapBackupVersion, MapCatalogVerification, MapChangeEvent,
437 MapChangeSubscription, MapComparison, MapMerge, MapReverseIter, MapSnapshot, MapVersion,
438 MapVersionId, ProofAuthentication, StringKeyCodec, TypedMigrationResult, TypedVersionedMap,
439 VersionPruneResult, VersionedMap, VersionedMapBackup, VersionedMapBatchResult,
440 VersionedMapEditor, VersionedMapUpdate, VersionedMapsTransaction,
441 DEFAULT_VERSIONED_MAP_RETRIES, VERSIONED_MAP_ROOT_PREFIX,
442};
443pub use prolly::write_session::{PendingValue, Savepoint, WriteSession};
444#[cfg(feature = "async-store")]
445pub use prolly::AsyncProlly;
446
447pub use prolly::encoding::{
449 DEFAULT_CHUNKING_FACTOR, DEFAULT_HASH_SEED, DEFAULT_MAX_CHUNK_SIZE, DEFAULT_MIN_CHUNK_SIZE,
450 INIT_LEVEL,
451};