From 8f7e3d1d2cd43d30ccc16799fcf69058ccc5a717 Mon Sep 17 00:00:00 2001 From: Mel Date: Thu, 3 Mar 2022 01:57:25 +0100 Subject: Re-arrange error locations --- src/main.rs | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'src/main.rs') diff --git a/src/main.rs b/src/main.rs index a670f92..d3c460c 100644 --- a/src/main.rs +++ b/src/main.rs @@ -29,10 +29,10 @@ fn file(filename: impl AsRef) { let lexer = Lexer::new(&contents); let mut parser = Parser::new(lexer); - let node = handle_error(parser.parse(), &contents); + let node = handle_error(parser.parse().map_err(RHError::Parse), &contents); let mut walker = Walker::root(); - handle_error(walker.walk(&node), &contents); + handle_error(walker.walk(&node).map_err(RHError::Run), &contents); } fn repl() { @@ -54,8 +54,11 @@ fn repl() { let lexer = Lexer::new(input_buffer.trim()); let mut parser = Parser::new(lexer); - let node = handle_error(parser.expression(), &input_buffer); - let result = handle_error(walker.walk_expression(&node), &input_buffer); + let node = handle_error(parser.expression().map_err(RHError::Parse), &input_buffer); + let result = handle_error( + walker.walk_expression(&node).map_err(RHError::Run), + &input_buffer, + ); println!("🥕: {:?}\n", result); } -- cgit 1.4.1