about summary refs log tree commit diff
path: root/src/libstd
diff options
context:
space:
mode:
authorBrian Anderson <banderson@mozilla.com>2012-11-26 20:05:19 -0800
committerBrian Anderson <banderson@mozilla.com>2012-11-28 21:50:09 -0800
commit5a282ec26fc7587b94e0d86a003abcf1cfd214c1 (patch)
tree61bb48bf508ab3f8be705ec907577992b686076d /src/libstd
parent4a2a375fbfb02abdf51e598660c44dda6032d282 (diff)
core: Convert some records to structs
Diffstat (limited to 'src/libstd')
-rw-r--r--src/libstd/rope.rs10
-rw-r--r--src/libstd/time.rs32
2 files changed, 23 insertions, 19 deletions
diff --git a/src/libstd/rope.rs b/src/libstd/rope.rs
index 5df4fc10a03..5aa19c4f785 100644
--- a/src/libstd/rope.rs
+++ b/src/libstd/rope.rs
@@ -1206,9 +1206,11 @@ mod node {
                     (*it).leaf = option::None;
                     return option::None
                 } else {
-                    let {ch, next} =
+                    let range =
                         str::char_range_at(*aleaf.content,
                                      (*it).leaf_byte_pos + aleaf.byte_offset);
+                    let ch = range.ch;
+                    let next = range.next;
                     (*it).leaf_byte_pos = next - aleaf.byte_offset;
                     return option::Some(ch)
                 }
@@ -1283,9 +1285,9 @@ mod tests {
                     equal = false;
                 } break; }
               option::Some(c) => {
-                let {ch, next} = str::char_range_at(*sample, string_iter);
-                string_iter = next;
-                if ch != c { equal = false; break; }
+                let range = str::char_range_at(*sample, string_iter);
+                string_iter = range.next;
+                if range.ch != c { equal = false; break; }
               }
             }
         }
diff --git a/src/libstd/time.rs b/src/libstd/time.rs
index d8cbfbadb1f..3b8d2996146 100644
--- a/src/libstd/time.rs
+++ b/src/libstd/time.rs
@@ -277,12 +277,12 @@ priv fn do_strptime(s: &str, format: &str) -> Result<Tm, ~str> {
 
         let mut i = 0u;
         while i < digits {
-            let {ch, next} = str::char_range_at(str::from_slice(ss), pos);
-            pos = next;
+            let range = str::char_range_at(str::from_slice(ss), pos);
+            pos = range.next;
 
-            match ch {
+            match range.ch {
               '0' .. '9' => {
-                value = value * 10_i32 + (ch as i32 - '0' as i32);
+                value = value * 10_i32 + (range.ch as i32 - '0' as i32);
               }
               ' ' if ws => (),
               _ => return None
@@ -294,14 +294,14 @@ priv fn do_strptime(s: &str, format: &str) -> Result<Tm, ~str> {
     }
 
     fn parse_char(s: &str, pos: uint, c: char) -> Result<uint, ~str> {
-        let {ch, next} = str::char_range_at(s, pos);
+        let range = str::char_range_at(s, pos);
 
-        if c == ch {
-            Ok(next)
+        if c == range.ch {
+            Ok(range.next)
         } else {
             Err(fmt!("Expected %?, found %?",
                 str::from_char(c),
-                str::from_char(ch)))
+                str::from_char(range.ch)))
         }
     }
 
@@ -619,19 +619,19 @@ priv fn do_strptime(s: &str, format: &str) -> Result<Tm, ~str> {
                 let mut pos = pos;
                 let len = str::len(s);
                 while pos < len {
-                    let {ch, next} = str::char_range_at(s, pos);
-                    pos = next;
-                    if ch == ' ' { break; }
+                    let range = str::char_range_at(s, pos);
+                    pos = range.next;
+                    if range.ch == ' ' { break; }
                 }
 
                 Ok(pos)
             }
           }
           'z' => {
-            let {ch, next} = str::char_range_at(s, pos);
+            let range = str::char_range_at(s, pos);
 
-            if ch == '+' || ch == '-' {
-                match match_digits(s, next, 4u, false) {
+            if range.ch == '+' || range.ch == '-' {
+                match match_digits(s, range.next, 4u, false) {
                   Some(item) => {
                     let (v, pos) = item;
                     if v == 0_i32 {
@@ -674,7 +674,9 @@ priv fn do_strptime(s: &str, format: &str) -> Result<Tm, ~str> {
         let mut result = Err(~"Invalid time");
 
         while !rdr.eof() && pos < len {
-            let {ch, next} = str::char_range_at(s, pos);
+            let range = str::char_range_at(s, pos);
+            let ch = range.ch;
+            let next = range.next;
 
             match rdr.read_char() {
                 '%' => {