mirror of
https://github.com/RGBCube/uutils-coreutils
synced 2025-08-01 05:27:45 +00:00
Remove trivially unnessessary unwrap() from expr
This commit is contained in:
parent
774c01f008
commit
da9558c684
2 changed files with 5 additions and 18 deletions
|
@ -56,11 +56,7 @@ fn print_expr_error(expr_error: &str) -> ! {
|
||||||
}
|
}
|
||||||
|
|
||||||
fn evaluate_ast(maybe_ast: Result<Box<syntax_tree::AstNode>, String>) -> Result<String, String> {
|
fn evaluate_ast(maybe_ast: Result<Box<syntax_tree::AstNode>, String>) -> Result<String, String> {
|
||||||
if maybe_ast.is_err() {
|
maybe_ast.and_then(|ast| ast.evaluate())
|
||||||
Err(maybe_ast.err().unwrap())
|
|
||||||
} else {
|
|
||||||
maybe_ast.ok().unwrap().evaluate()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fn maybe_handle_help_or_version(args: &[String]) -> bool {
|
fn maybe_handle_help_or_version(args: &[String]) -> bool {
|
||||||
|
|
|
@ -175,23 +175,14 @@ impl AstNode {
|
||||||
pub fn tokens_to_ast(
|
pub fn tokens_to_ast(
|
||||||
maybe_tokens: Result<Vec<(usize, Token)>, String>,
|
maybe_tokens: Result<Vec<(usize, Token)>, String>,
|
||||||
) -> Result<Box<AstNode>, String> {
|
) -> Result<Box<AstNode>, String> {
|
||||||
if maybe_tokens.is_err() {
|
maybe_tokens.and_then(|tokens| {
|
||||||
Err(maybe_tokens.err().unwrap())
|
|
||||||
} else {
|
|
||||||
let tokens = maybe_tokens.ok().unwrap();
|
|
||||||
let mut out_stack: TokenStack = Vec::new();
|
let mut out_stack: TokenStack = Vec::new();
|
||||||
let mut op_stack: TokenStack = Vec::new();
|
let mut op_stack: TokenStack = Vec::new();
|
||||||
|
|
||||||
for (token_idx, token) in tokens {
|
for (token_idx, token) in tokens {
|
||||||
if let Err(reason) =
|
push_token_to_either_stack(token_idx, &token, &mut out_stack, &mut op_stack)?;
|
||||||
push_token_to_either_stack(token_idx, &token, &mut out_stack, &mut op_stack)
|
|
||||||
{
|
|
||||||
return Err(reason);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if let Err(reason) = move_rest_of_ops_to_out(&mut out_stack, &mut op_stack) {
|
|
||||||
return Err(reason);
|
|
||||||
}
|
}
|
||||||
|
move_rest_of_ops_to_out(&mut out_stack, &mut op_stack)?;
|
||||||
assert!(op_stack.is_empty());
|
assert!(op_stack.is_empty());
|
||||||
|
|
||||||
maybe_dump_rpn(&out_stack);
|
maybe_dump_rpn(&out_stack);
|
||||||
|
@ -205,7 +196,7 @@ pub fn tokens_to_ast(
|
||||||
maybe_dump_ast(&result);
|
maybe_dump_ast(&result);
|
||||||
result
|
result
|
||||||
}
|
}
|
||||||
}
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
fn maybe_dump_ast(result: &Result<Box<AstNode>, String>) {
|
fn maybe_dump_ast(result: &Result<Box<AstNode>, String>) {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue