From ee45c433a8d2bb705e140439b638a23654978ebe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ahmet=20Kaan=20G=C3=9CM=C3=9C=C5=9E?= <96421894+Tahinli@users.noreply.github.com> Date: Mon, 11 Sep 2023 15:09:03 +0300 Subject: [PATCH] take_arg --- src/main.rs | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 54 insertions(+), 3 deletions(-) diff --git a/src/main.rs b/src/main.rs index e7a11a9..83c2e1d 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,3 +1,54 @@ -fn main() { - println!("Hello, world!"); -} +use std::net::{TcpListener, TcpStream}; +use std::io::{Read, Write}; +use std::env; + +enum EnvArg + { + Client, + Server, + } + +fn take_arg() -> EnvArg + { + let args:Vec = env::args().collect(); + match args.len() + { + 1 => println!("Give an argument"), + 2 => + { + if args[1] == "c" + { + return EnvArg::Client; + } + else if args[1] == "s" + { + return EnvArg::Server; + } + else + { + println!("Give valid argument, c or s"); + } + }, + _ => println!("Only one argument is allowed"), + } + panic!(); + } + +fn client() + { + println!("Client"); + } +fn server() + { + println!("Server"); + } + +fn main() + { + println!("Hello, world!"); + match take_arg() + { + EnvArg::Client => client(), + EnvArg::Server => server() + } + }