Skip to main content

Module events

Module events 

Source
Expand description

Unified event system for progress reporting and observability.

This module provides a unified event system that wraps all event categories used throughout void-core. It enables consistent progress reporting and observability across different subsystems.

§Event Categories

§Usage

use void_core::support::events::{VoidEvent, VoidObserver, emit};

struct MyObserver;

impl VoidObserver for MyObserver {
    fn on_event(&self, event: &VoidEvent) {
        println!("Event: {:?}", event);
    }
}

Structs§

LegacyPipelineAdapter
Adapter for legacy PipelineObserver compatibility.
MultiObserver
Observer that forwards events to multiple child observers.
NullObserver
No-op observer that discards all events.

Enums§

FetchSource
Source from which a shard was fetched.
IssueSeverity
Severity level for issues found during fsck.
OpsEvent
Events emitted during ops operations (fsck/merge).
P2PEvent
Events emitted during P2P networking operations.
PipelineEvent
Events emitted during pipeline operations (seal/unseal).
VoidEvent
Unified event type wrapping all event categories.
WorkspaceEvent
Events emitted during workspace operations (stage/checkout).

Traits§

VoidObserver
Observer trait for receiving void events.

Functions§

emit
Emit a void event to an optional observer.
emit_ops
Emit an ops event to an optional observer.
emit_p2p
Emit a P2P event to an optional observer.
emit_pipeline
Emit a pipeline event to an optional observer.
emit_workspace
Emit a workspace event to an optional observer.