On this page
server.Server.chain
- Module
- server
- Declared in
- Server
- Package
- libtmux
- Source
- crates/libtmux/src/server.rs
- chain ( self , chain : CommandChain ) Result<CommandResult, Error>
-
Dispatch several commands as one
tmux a \; binvocation.One process, one exit status, one merged stdout. tmux runs the chain up to the first failure and drops the remainder, so this trades the ability to tell *which* command failed for a single round trip. The merged result is identical whichever member failed: use it when the commands succeed or fail as a unit, and
Server::cmdwhen you need to know where a failure happened.Errors
Returns an error when the process cannot be started, captured, awaited, or is cancelled by timeout or shutdown. A command tmux refuses is reported through the returned [
CommandResult], not as an error.Examples
use libtmux::{Command, CommandChain}; let server = libtmux::Server::builder() .socket_path("/tmp/libtmux-rs-test/chain-example-absent.sock") .build()?; let chain = CommandChain::new(Command::new("list-sessions")) .then(Command::new("list-panes")); let result = server.chain(chain).await?; assert!(result.exit_code().is_some()); server.shutdown().await?;
0 declared, 0 inherited