diff options
| author | Patrick Walton <pcwalton@mimiga.net> | 2012-07-11 15:00:40 -0700 |
|---|---|---|
| committer | Patrick Walton <pcwalton@mimiga.net> | 2012-07-17 15:46:43 -0700 |
| commit | db020ab63cd51dd4a25cba2d00117f016128762b (patch) | |
| tree | 2b6f1e99ba4356f3e3bf5338332c278d2a85109b /src/libsyntax/parse/attr.rs | |
| parent | b5729bd60095fb5ca884936775e031cf19900760 (diff) | |
| download | rust-db020ab63cd51dd4a25cba2d00117f016128762b.tar.gz rust-db020ab63cd51dd4a25cba2d00117f016128762b.zip | |
rustc: Implement and enforce instance coherence
Diffstat (limited to 'src/libsyntax/parse/attr.rs')
| -rw-r--r-- | src/libsyntax/parse/attr.rs | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/libsyntax/parse/attr.rs b/src/libsyntax/parse/attr.rs index 995feff0b70..fb28f952629 100644 --- a/src/libsyntax/parse/attr.rs +++ b/src/libsyntax/parse/attr.rs @@ -9,7 +9,21 @@ export parser_attr; // extensions, which both begin with token.POUND type attr_or_ext = option<either<~[ast::attribute], @ast::expr>>; -impl parser_attr for parser { +trait parser_attr { + fn parse_outer_attrs_or_ext(first_item_attrs: ~[ast::attribute]) + -> attr_or_ext; + fn parse_outer_attributes() -> ~[ast::attribute]; + fn parse_attribute(style: ast::attr_style) -> ast::attribute; + fn parse_attribute_naked(style: ast::attr_style, lo: uint) -> + ast::attribute; + fn parse_inner_attrs_and_next() -> + {inner: ~[ast::attribute], next: ~[ast::attribute]}; + fn parse_meta_item() -> @ast::meta_item; + fn parse_meta_seq() -> ~[@ast::meta_item]; + fn parse_optional_meta() -> ~[@ast::meta_item]; +} + +impl parser_attr of parser_attr for parser { fn parse_outer_attrs_or_ext(first_item_attrs: ~[ast::attribute]) -> attr_or_ext |
