1 // Copyright 2017 The Rust Project Developers. See the COPYRIGHT
2 // file at the top-level directory of this distribution and at
3 // http://rust-lang.org/COPYRIGHT.
5 // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6 // http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7 // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8 // option. This file may not be copied, modified, or distributed
9 // except according to those terms.
11 #![feature(decl_macro)]
26 pub macro uses_dollar_crate_modern() {
27 type Alias = $crate::SomeType;
30 pub macro define_uses_dollar_crate_modern_nested($uses_dollar_crate_modern_nested: ident) {
31 macro $uses_dollar_crate_modern_nested() {
32 type AliasCrateModernNested = $crate::SomeType;
37 macro_rules! define_uses_dollar_crate_legacy_nested {
39 macro_rules! uses_dollar_crate_legacy_nested {
41 type AliasLegacyNested = $crate::SomeType;
48 pub macro uses_crate_modern() {
49 type AliasCrate = crate::SomeType;
52 pub macro define_uses_crate_modern_nested($uses_crate_modern_nested: ident) {
53 macro $uses_crate_modern_nested() {
54 type AliasCrateModernNested = crate::SomeType;