From e01824477751561fa0c1c13db13d0fbda341008e Mon Sep 17 00:00:00 2001 From: Daniel Micay Date: Thu, 7 Feb 2013 18:30:34 -0500 Subject: make Option's map and map_default use a lifetime --- src/libstd/treemap.rs | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) (limited to 'src/libstd') diff --git a/src/libstd/treemap.rs b/src/libstd/treemap.rs index e79025a7955..da83c7b789b 100644 --- a/src/libstd/treemap.rs +++ b/src/libstd/treemap.rs @@ -556,24 +556,18 @@ impl TreeNode { pure fn each(node: &r/Option<~TreeNode>, f: fn(&(&r/K, &r/V)) -> bool) { - match *node { - Some(ref x) => { + do node.map |x| { each(&x.left, f); if f(&(&x.key, &x.value)) { each(&x.right, f) } - } - None => () - } + }; } pure fn each_reverse(node: &r/Option<~TreeNode>, f: fn(&(&r/K, &r/V)) -> bool) { - match *node { - Some(ref x) => { + do node.map |x| { each_reverse(&x.right, f); if f(&(&x.key, &x.value)) { each_reverse(&x.left, f) } - } - None => () - } + }; } // Remove left horizontal link by rotating right -- cgit 1.4.1-3-g733a5