Skip to main content

Crate oxdock_pipe

Crate oxdock_pipe 

Source
Expand description

Anonymous pipe backends for OxDock: spillable script buffers, OS kernel pairs, and the owned handle slots that bind them lazily.

This crate sits below oxdock-parser (whose PIPE values hold PipeHandles) and beside oxdock-process (whose stdio types the backends plug into). No central pipe index lives here or anywhere: resolution, keepers, and assertions all operate on handles already in hand.

Re-exports§

pub use backend::KeeperGuard;
pub use backend::PipeInfo;
pub use backend::PipeInner;
pub use backend::PipeKindDesc;
pub use backend::ScriptPipe;
pub use backend::ScriptPipeEndpoint;
pub use backend::inspect;
pub use backend::peek;
pub use backend::script_backend;
pub use slot::Materialized;
pub use slot::PipeHandle;
pub use slot::SharedInput;
pub use slot::SharedOutput;
pub use slot::Slot;
pub use slot::materialize;
pub use slot::new_handle_in_task;
pub use slot::OsPipeEntry;
pub use slot::OsPipeReader;
pub use slot::OsPipeWriter;
pub use slot::create_os_pipe;
pub use spill::DEFAULT_MAX_BACKLOG;
pub use spill::DEFAULT_SPILL_THRESHOLD;
pub use spill::SpillBuffer;

Modules§

backend
Script-pipe backend: an in-memory (spillable) byte channel with writer/keeper accounting, blocking reads, and explicit close.
slot
Owned pipe handles: a mutex cell holding a lazily materializing slot.
spill
Spillable byte buffer backing script pipes and capture sinks.