Don't panic on a missing 3rd argument, use the default

This commit is contained in:
Juergen Stuber 2024-10-19 15:51:36 +02:00
parent fa22a5e838
commit e51336b3f2
8 changed files with 44 additions and 14 deletions

View File

@ -18,7 +18,7 @@ fn send<T: Write>(w: &mut T, f: &Frame) -> std::io::Result<()> {
w.flush()
}
const DEFAULT_LOOP_TIME: usize = 120;
const DEFAULT_ARG: usize = 120;
const MIN_LOOP_TIME: usize = 20;
fn main() -> std::io::Result<()> {
@ -27,10 +27,12 @@ fn main() -> std::io::Result<()> {
let x_size = args[1].parse::<usize>().unwrap();
let y_size = args[2].parse::<usize>().unwrap();
let loop_time = args[3]
.parse::<usize>()
.unwrap_or(DEFAULT_LOOP_TIME)
.max(MIN_LOOP_TIME);
let arg = if let Some(s) = args.get(3) {
s.parse::<usize>().unwrap_or(DEFAULT_ARG)
} else {
DEFAULT_ARG
};
let loop_time = arg.max(MIN_LOOP_TIME);
eprintln!(
"screen size {}x{}, loop time {:?}s",
x_size, y_size, loop_time

View File

@ -48,7 +48,11 @@ fn main() -> std::io::Result<()> {
let x_size = args[1].parse::<usize>().unwrap();
let y_size = args[2].parse::<usize>().unwrap();
let arg = args[3].parse::<usize>().unwrap_or(DEFAULT_ARG);
let arg = if let Some(s) = args.get(3) {
s.parse::<usize>().unwrap_or(DEFAULT_ARG)
} else {
DEFAULT_ARG
};
eprintln!("screen size {}x{}, arg {}", x_size, y_size, arg);
let t_frame = 0.040; // s

View File

@ -240,7 +240,7 @@ where
}
}
const DEFAULT_ARG: isize = 16;
const DEFAULT_ARG: usize = 10;
fn main() -> std::io::Result<()> {
let args = args().collect::<Vec<_>>();
@ -248,7 +248,11 @@ fn main() -> std::io::Result<()> {
let x_size = args[1].parse::<i64>().unwrap();
let y_size = args[2].parse::<i64>().unwrap();
let arg = args[3].parse::<isize>().unwrap_or(DEFAULT_ARG);
let arg = if let Some(s) = args.get(3) {
s.parse::<usize>().unwrap_or(DEFAULT_ARG)
} else {
DEFAULT_ARG
};
eprintln!("screen size {}x{}, arg {}", x_size, y_size, arg);
let mut rng = thread_rng();

View File

@ -68,7 +68,11 @@ fn main() -> std::io::Result<()> {
let x_size = args[1].parse::<usize>().unwrap();
let y_size = args[2].parse::<usize>().unwrap();
let arg = args[3].parse::<u64>().unwrap_or(DEFAULT_ARG);
let arg = if let Some(s) = args.get(3) {
s.parse::<u64>().unwrap_or(DEFAULT_ARG)
} else {
DEFAULT_ARG
};
eprintln!("screen size {}x{}, arg {}", x_size, y_size, arg);
let mut rng = thread_rng();

View File

@ -28,7 +28,11 @@ fn main() -> std::io::Result<()> {
let x_size = args[1].parse::<usize>().unwrap();
let y_size = args[2].parse::<usize>().unwrap();
let arg = args[3].parse::<usize>().unwrap_or(DEFAULT_ARG);
let arg = if let Some(s) = args.get(3) {
s.parse::<usize>().unwrap_or(DEFAULT_ARG)
} else {
DEFAULT_ARG
};
eprintln!("screen size {}x{}, arg {}", x_size, y_size, arg);
let mut rng = thread_rng();

View File

@ -191,7 +191,11 @@ fn main() -> Result<(), Box<dyn error::Error>> {
let x_size = args[1].parse::<usize>().unwrap();
let y_size = args[2].parse::<usize>().unwrap();
let arg = args[3].parse::<u64>().unwrap_or(DEFAULT_ARG);
let arg = if let Some(s) = args.get(3) {
s.parse::<u64>().unwrap_or(DEFAULT_ARG)
} else {
DEFAULT_ARG
};
eprintln!("screen size {}x{}, arg {}", x_size, y_size, arg);
let mut rng = thread_rng();

View File

@ -239,7 +239,7 @@ where
}
}
const DEFAULT_ARG: isize = 16;
const DEFAULT_ARG: usize = 10;
fn main() -> std::io::Result<()> {
let args = args().collect::<Vec<_>>();
@ -247,7 +247,11 @@ fn main() -> std::io::Result<()> {
let x_size = args[1].parse::<i64>().unwrap();
let y_size = args[2].parse::<i64>().unwrap();
let arg = args[3].parse::<isize>().unwrap_or(DEFAULT_ARG);
let arg = if let Some(s) = args.get(3) {
s.parse::<usize>().unwrap_or(DEFAULT_ARG)
} else {
DEFAULT_ARG
};
eprintln!("screen size {}x{}, arg {}", x_size, y_size, arg);
let mut rng = thread_rng();

View File

@ -76,7 +76,11 @@ fn main() -> std::io::Result<()> {
let x_size = args[1].parse::<i64>().unwrap();
let y_size = args[2].parse::<i64>().unwrap();
let arg = args[3].parse::<usize>().unwrap_or(DEFAULT_ARG);
let arg = if let Some(s) = args.get(3) {
s.parse::<usize>().unwrap_or(DEFAULT_ARG)
} else {
DEFAULT_ARG
};
eprintln!("screen size {}x{}, arg {}", x_size, y_size, arg);
let mut rng = thread_rng();