3 pub(super) fn inner_attrs(p: &mut Parser) {
4 while p.at(T![#]) && p.nth(1) == T![!] {
9 pub(super) fn outer_attrs(p: &mut Parser) {
15 pub(super) fn meta(p: &mut Parser) {
22 if expressions::expr(p).0.is_none() {
23 p.error("expected expression");
26 T!['('] | T!['['] | T!['{'] => items::token_tree(p),
30 meta.complete(p, META);
33 fn attr(p: &mut Parser, inner: bool) {
47 p.error("expected `]`");
50 p.error("expected `[`");
52 attr.complete(p, ATTR);