Evaluate Boolean Binary Tree LeetCode solution in Rust
1type Node = Option<std::rc::Rc<std::cell::RefCell<TreeNode>>>;2impl Solution {3pub fn evaluate_tree(root: Node) -> bool {4Self::dfs(root)5}6fn dfs(n: Node) -> bool {7let node = n.as_ref().unwrap().borrow();89match node.val {100 => false,111 => true,122 => Self::dfs(node.right.clone()) || Self::dfs(node.left.clone()),13_ => Self::dfs(node.right.clone()) && Self::dfs(node.left.clone()),14}15}16}