take_arg
This commit is contained in:
parent
b633a3d949
commit
ee45c433a8
1 changed files with 54 additions and 3 deletions
57
src/main.rs
57
src/main.rs
|
@ -1,3 +1,54 @@
|
||||||
fn main() {
|
use std::net::{TcpListener, TcpStream};
|
||||||
println!("Hello, world!");
|
use std::io::{Read, Write};
|
||||||
}
|
use std::env;
|
||||||
|
|
||||||
|
enum EnvArg
|
||||||
|
{
|
||||||
|
Client,
|
||||||
|
Server,
|
||||||
|
}
|
||||||
|
|
||||||
|
fn take_arg() -> EnvArg
|
||||||
|
{
|
||||||
|
let args:Vec<String> = 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()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue