summaryrefslogtreecommitdiffstats
path: root/third_party/rust/same-file/examples
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 01:47:29 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 01:47:29 +0000
commit0ebf5bdf043a27fd3dfb7f92e0cb63d88954c44d (patch)
treea31f07c9bcca9d56ce61e9a1ffd30ef350d513aa /third_party/rust/same-file/examples
parentInitial commit. (diff)
downloadfirefox-esr-0ebf5bdf043a27fd3dfb7f92e0cb63d88954c44d.tar.xz
firefox-esr-0ebf5bdf043a27fd3dfb7f92e0cb63d88954c44d.zip
Adding upstream version 115.8.0esr.upstream/115.8.0esr
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'third_party/rust/same-file/examples')
-rw-r--r--third_party/rust/same-file/examples/is_same_file.rs11
-rw-r--r--third_party/rust/same-file/examples/is_stderr.rs31
2 files changed, 42 insertions, 0 deletions
diff --git a/third_party/rust/same-file/examples/is_same_file.rs b/third_party/rust/same-file/examples/is_same_file.rs
new file mode 100644
index 0000000000..6ba948a4c8
--- /dev/null
+++ b/third_party/rust/same-file/examples/is_same_file.rs
@@ -0,0 +1,11 @@
+use same_file::is_same_file;
+use std::io;
+
+fn try_main() -> Result<(), io::Error> {
+ assert!(is_same_file("/bin/sh", "/usr/bin/sh")?);
+ Ok(())
+}
+
+fn main() {
+ try_main().unwrap();
+}
diff --git a/third_party/rust/same-file/examples/is_stderr.rs b/third_party/rust/same-file/examples/is_stderr.rs
new file mode 100644
index 0000000000..1078695d98
--- /dev/null
+++ b/third_party/rust/same-file/examples/is_stderr.rs
@@ -0,0 +1,31 @@
+use std::io;
+use std::process;
+
+use same_file::Handle;
+
+fn main() {
+ if let Err(err) = run() {
+ println!("{}", err);
+ process::exit(1);
+ }
+}
+
+fn run() -> io::Result<()> {
+ // Run with `cargo run --example is_stderr 2> examples/stderr` to see
+ // interesting output.
+ let candidates = &[
+ "examples/is_same_file.rs",
+ "examples/is_stderr.rs",
+ "examples/stderr",
+ ];
+ let stderr_handle = Handle::stderr()?;
+ for candidate in candidates {
+ let handle = Handle::from_path(candidate)?;
+ if stderr_handle == handle {
+ println!("{:?} is stderr!", candidate);
+ } else {
+ println!("{:?} is NOT stderr!", candidate);
+ }
+ }
+ Ok(())
+}