change region syntax to &r/T in place of &r.T

This commit is contained in:
Niko Matsakis 2012-07-12 09:36:56 -07:00
parent 1fe0d8d7d7
commit 90e435e808
28 changed files with 87 additions and 82 deletions

View file

@ -420,15 +420,20 @@ class parser {
}
}
// Parses something like "&x." (note the trailing dot)
fn parse_region_dot() -> @region {
// Parses something like "&x/" (note the trailing slash)
fn parse_region_with_sep() -> @region {
let name =
alt copy self.token {
token::IDENT(sid, _) if self.look_ahead(1u) == token::DOT {
self.bump(); self.bump();
some(self.get_str(sid))
token::IDENT(sid, _) => {
if self.look_ahead(1u) == token::DOT || // backwards compat
self.look_ahead(1u) == token::BINOP(token::SLASH) {
self.bump(); self.bump();
some(self.get_str(sid))
} else {
none
}
}
_ { none }
_ => { none }
};
self.region_from_name(name)
}
@ -495,7 +500,7 @@ class parser {
t
} else if self.token == token::BINOP(token::AND) {
self.bump();
let region = self.parse_region_dot();
let region = self.parse_region_with_sep();
let mt = self.parse_mt();
ty_rptr(region, mt)
} else if self.eat_keyword("pure") {