#![cfg_attr(feature = "lt2019_1", doc = ".")]
#![cfg_attr(
not(feature = "lt2019_1"),
doc = ", or stream-spec mode with [`Diff::stream_spec_mode`]."
)]
#![cfg_attr(
not(feature = "lt2019_1"),
doc = "- [`Diff<StreamSpecMode>`]: diff stream specs via `-As`."
)]
use std::ffi::OsStr;
use perforce_cli::P4Cli;
use perforce_cli::cmd::DiffOptionsBuilder;
use perforce_cli::cmd::diff::DisplayOptions;
use perforce_cli::spawn::ParameterizedOutput;
#[cfg(not(feature = "lt2019_1"))]
use perforce_cli::spawn::ParameterizedSpawn;
fn main() -> std::io::Result<()> {
let p4 = P4Cli::default();
let mut diff = p4
.diff()
.force(true)
.diff_options(DiffOptionsBuilder::unified(None).ignore_all_whitespace())
.limit(10);
let files = [OsStr::new("//depot/project/src/...")];
let output = diff.output_with((&files,))?;
println!("{}", String::from_utf8_lossy(&output.stdout));
let mut list_changed = p4
.diff()
.force(true)
.display_options(DisplayOptions::UnopenedChanged);
let output = list_changed.output_with((&files,))?;
println!("{}", String::from_utf8_lossy(&output.stdout));
#[cfg(not(feature = "lt2019_1"))]
{
let mut stream_diff = p4.diff().stream_spec_mode();
let mut child = stream_diff.spawn_with(("//streams/main@head",))?;
child.wait()?;
}
Ok(())
}