From 92be2066dc6238d14b9b02d05f08e413177897ca Mon Sep 17 00:00:00 2001 From: b1ek Date: Tue, 22 Aug 2023 17:37:48 +1000 Subject: [PATCH] add eval_input --- examples/eval_input.rs | 17 +++++++++++++++++ examples/hello_world.rs | 2 +- 2 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 examples/eval_input.rs diff --git a/examples/eval_input.rs b/examples/eval_input.rs new file mode 100644 index 0000000..df7ee43 --- /dev/null +++ b/examples/eval_input.rs @@ -0,0 +1,17 @@ +use std::{io::{Read, stdin}, process::exit}; + +use brainrust::*; + +fn main() { + let mut str = String::new(); + stdin().read_to_string(&mut str).unwrap(); + + let eval_res = eval(&str.as_str()); + if eval_res.is_err() { + let err = eval_res.unwrap_err(); + if err == "Stdin closed" { + exit(0); + } + eprintln!("Program failed: {}", err); + } +} \ No newline at end of file diff --git a/examples/hello_world.rs b/examples/hello_world.rs index 458535b..54a7d67 100644 --- a/examples/hello_world.rs +++ b/examples/hello_world.rs @@ -3,7 +3,7 @@ use brainrust::*; fn main() { let eval = eval( &( - "+++++[>+++++++++<-],[[>--.++>+<<-]>+.->[<.>-]<<,]" + "+[-->-[>>+>-----<<]<--<---]>-.>>>+.>>..+++[.>]<<<<.+++.------.<<-.>>>>+." ) ); if eval.is_err() {