summaryrefslogtreecommitdiffstats
path: root/third_party/rust/warp/examples/unix_socket.rs
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/rust/warp/examples/unix_socket.rs')
-rw-r--r--third_party/rust/warp/examples/unix_socket.rs22
1 files changed, 22 insertions, 0 deletions
diff --git a/third_party/rust/warp/examples/unix_socket.rs b/third_party/rust/warp/examples/unix_socket.rs
new file mode 100644
index 0000000000..521aeead21
--- /dev/null
+++ b/third_party/rust/warp/examples/unix_socket.rs
@@ -0,0 +1,22 @@
+#![deny(warnings)]
+
+#[cfg(unix)]
+#[tokio::main]
+async fn main() {
+ use tokio::net::UnixListener;
+ use tokio_stream::wrappers::UnixListenerStream;
+
+ pretty_env_logger::init();
+
+ let listener = UnixListener::bind("/tmp/warp.sock").unwrap();
+ let incoming = UnixListenerStream::new(listener);
+ warp::serve(warp::fs::dir("examples/dir"))
+ .run_incoming(incoming)
+ .await;
+}
+
+#[cfg(not(unix))]
+#[tokio::main]
+async fn main() {
+ panic!("Must run under Unix-like platform!");
+}