about summary refs log tree commit diff
path: root/src/libsyntax/parse/parser.rs
diff options
context:
space:
mode:
authorBrian Anderson <banderson@mozilla.com>2012-09-07 19:04:40 -0700
committerBrian Anderson <banderson@mozilla.com>2012-09-10 16:13:08 -0700
commit93d3b8aa6b681a8add60e4a22a5c41e7f7ce7557 (patch)
treef9fdbb8b2faf77423620d59d572976a32349f747 /src/libsyntax/parse/parser.rs
parentbea6fe0ec12439187617bfc27f23962d018f8463 (diff)
downloadrust-93d3b8aa6b681a8add60e4a22a5c41e7f7ce7557.tar.gz
rust-93d3b8aa6b681a8add60e4a22a5c41e7f7ce7557.zip
Convert class methods to impl methods. Stop parsing class methods
Diffstat (limited to 'src/libsyntax/parse/parser.rs')
-rw-r--r--src/libsyntax/parse/parser.rs45
1 files changed, 20 insertions, 25 deletions
diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs
index 138b83f69f0..512a5e6459e 100644
--- a/src/libsyntax/parse/parser.rs
+++ b/src/libsyntax/parse/parser.rs
@@ -242,7 +242,9 @@ struct parser {
     obsolete_set: hashmap<ObsoleteSyntax, ()>,
 
     drop {} /* do not copy the parser; its state is tied to outside state */
+}
 
+impl parser {
     fn bump() {
         self.last_span = self.span;
         let next = if self.buffer_start == self.buffer_end {
@@ -2776,32 +2778,25 @@ struct parser {
         let obsolete_let = self.eat_obsolete_ident("let");
         if obsolete_let { self.obsolete(copy self.last_span, ObsoleteLet) }
 
-        if (obsolete_let || self.token_is_keyword(~"mut", copy self.token) ||
-            !self.is_any_keyword(copy self.token)) &&
-            !self.token_is_pound_or_doc_comment(self.token) {
-            let a_var = self.parse_instance_var(vis);
-            match self.token {
-                token::SEMI => {
-                    self.obsolete(copy self.span, ObsoleteFieldTerminator);
-                    self.bump();
-                }
-                token::COMMA => {
-                    self.bump();
-                }
-                token::RBRACE => {}
-                _ => {
-                    self.span_fatal(copy self.span,
-                                    fmt!("expected `;`, `,`, or '}' but \
-                                          found `%s`",
-                                         token_to_str(self.reader,
-                                                      self.token)));
-                }
-            }
-            return a_var;
-        } else {
-            let m = self.parse_method(vis);
-            return @method_member(m);
+        let a_var = self.parse_instance_var(vis);
+        match self.token {
+          token::SEMI => {
+            self.obsolete(copy self.span, ObsoleteFieldTerminator);
+            self.bump();
+          }
+          token::COMMA => {
+            self.bump();
+          }
+          token::RBRACE => {}
+          _ => {
+            self.span_fatal(copy self.span,
+                            fmt!("expected `;`, `,`, or '}' but \
+                                  found `%s`",
+                                 token_to_str(self.reader,
+                                              self.token)));
+          }
         }
+        return a_var;
     }
 
     fn parse_dtor(attrs: ~[attribute]) -> class_contents {