simplify, based on invariant that items_allowed != foreign_items_allowed
This commit is contained in:
parent
ae4e09f71a
commit
71c0bd5c5d
2 changed files with 7 additions and 13 deletions
|
@ -756,7 +756,6 @@ mod test {
|
||||||
assert_eq!(refold_test_sc(3,&t),test_sc);
|
assert_eq!(refold_test_sc(3,&t),test_sc);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// extend a syntax context with a sequence of marks given
|
// extend a syntax context with a sequence of marks given
|
||||||
// in a vector. v[0] will be the outermost mark.
|
// in a vector. v[0] will be the outermost mark.
|
||||||
fn unfold_marks(mrks:~[Mrk],tail:SyntaxContext,table: &mut SCTable) -> SyntaxContext {
|
fn unfold_marks(mrks:~[Mrk],tail:SyntaxContext,table: &mut SCTable) -> SyntaxContext {
|
||||||
|
|
|
@ -4107,38 +4107,34 @@ pub impl Parser {
|
||||||
maybe_append(attrs,
|
maybe_append(attrs,
|
||||||
extra_attrs)));
|
extra_attrs)));
|
||||||
}
|
}
|
||||||
if !foreign_items_allowed {
|
if items_allowed {
|
||||||
// EXTERN MODULE ITEM
|
// EXTERN MODULE ITEM
|
||||||
return self.parse_item_foreign_mod(lo, opt_abis, visibility, attrs,
|
return self.parse_item_foreign_mod(lo, opt_abis, visibility, attrs,
|
||||||
items_allowed);
|
items_allowed);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if items_allowed && !foreign_items_allowed &&
|
if items_allowed && self.eat_keyword(&~"mod") {
|
||||||
self.eat_keyword(&~"mod") {
|
|
||||||
// MODULE ITEM
|
// MODULE ITEM
|
||||||
let (ident, item_, extra_attrs) = self.parse_item_mod(attrs);
|
let (ident, item_, extra_attrs) = self.parse_item_mod(attrs);
|
||||||
return iovi_item(self.mk_item(lo, self.last_span.hi, ident, item_,
|
return iovi_item(self.mk_item(lo, self.last_span.hi, ident, item_,
|
||||||
visibility,
|
visibility,
|
||||||
maybe_append(attrs, extra_attrs)));
|
maybe_append(attrs, extra_attrs)));
|
||||||
}
|
}
|
||||||
if items_allowed && !foreign_items_allowed &&
|
if items_allowed && self.eat_keyword(&~"type") {
|
||||||
self.eat_keyword(&~"type") {
|
|
||||||
// TYPE ITEM
|
// TYPE ITEM
|
||||||
let (ident, item_, extra_attrs) = self.parse_item_type();
|
let (ident, item_, extra_attrs) = self.parse_item_type();
|
||||||
return iovi_item(self.mk_item(lo, self.last_span.hi, ident, item_,
|
return iovi_item(self.mk_item(lo, self.last_span.hi, ident, item_,
|
||||||
visibility,
|
visibility,
|
||||||
maybe_append(attrs, extra_attrs)));
|
maybe_append(attrs, extra_attrs)));
|
||||||
}
|
}
|
||||||
if items_allowed && !foreign_items_allowed &&
|
if items_allowed && self.eat_keyword(&~"enum") {
|
||||||
self.eat_keyword(&~"enum") {
|
|
||||||
// ENUM ITEM
|
// ENUM ITEM
|
||||||
let (ident, item_, extra_attrs) = self.parse_item_enum();
|
let (ident, item_, extra_attrs) = self.parse_item_enum();
|
||||||
return iovi_item(self.mk_item(lo, self.last_span.hi, ident, item_,
|
return iovi_item(self.mk_item(lo, self.last_span.hi, ident, item_,
|
||||||
visibility,
|
visibility,
|
||||||
maybe_append(attrs, extra_attrs)));
|
maybe_append(attrs, extra_attrs)));
|
||||||
}
|
}
|
||||||
if items_allowed && !foreign_items_allowed &&
|
if items_allowed && self.eat_keyword(&~"trait") {
|
||||||
self.eat_keyword(&~"trait") {
|
|
||||||
// TRAIT ITEM
|
// TRAIT ITEM
|
||||||
let (ident, item_, extra_attrs) = self.parse_item_trait();
|
let (ident, item_, extra_attrs) = self.parse_item_trait();
|
||||||
return iovi_item(self.mk_item(lo, self.last_span.hi, ident, item_,
|
return iovi_item(self.mk_item(lo, self.last_span.hi, ident, item_,
|
||||||
|
@ -4154,15 +4150,14 @@ pub impl Parser {
|
||||||
visibility,
|
visibility,
|
||||||
maybe_append(attrs, extra_attrs)));
|
maybe_append(attrs, extra_attrs)));
|
||||||
}
|
}
|
||||||
if items_allowed && !foreign_items_allowed &&
|
if items_allowed && self.eat_keyword(&~"struct") {
|
||||||
self.eat_keyword(&~"struct") {
|
|
||||||
// STRUCT ITEM
|
// STRUCT ITEM
|
||||||
let (ident, item_, extra_attrs) = self.parse_item_struct();
|
let (ident, item_, extra_attrs) = self.parse_item_struct();
|
||||||
return iovi_item(self.mk_item(lo, self.last_span.hi, ident, item_,
|
return iovi_item(self.mk_item(lo, self.last_span.hi, ident, item_,
|
||||||
visibility,
|
visibility,
|
||||||
maybe_append(attrs, extra_attrs)));
|
maybe_append(attrs, extra_attrs)));
|
||||||
}
|
}
|
||||||
if !foreign_items_allowed && self.eat_keyword(&~"use") {
|
if items_allowed && self.eat_keyword(&~"use") {
|
||||||
// USE ITEM
|
// USE ITEM
|
||||||
let view_item = self.parse_use();
|
let view_item = self.parse_use();
|
||||||
self.expect(&token::SEMI);
|
self.expect(&token::SEMI);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue