//@ compile-flags:--test // This file tests the source-partitioning behavior of rustdoc. // Each test contains some code that should be put into the generated // `fn main` and some attributes should be left outside (except the first // one, which has no attributes). // If the #![recursion_limit] attribute is incorrectly left inside, // then the tests will fail because the macro recurses 128 times. /// ``` /// assert_eq!(1 + 1, 2); /// ``` pub fn simple() {} /// ``` /// #![recursion_limit = "1024"] /// macro_rules! recurse { /// (()) => {}; /// (() $($rest:tt)*) => { recurse!($($rest)*); } /// } /// recurse!(() () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () ()); /// assert_eq!(1 + 1, 2); /// ``` pub fn non_feature_attr() {} /// ``` /// #![feature(core_intrinsics)] /// assert_eq!(1 + 1, 2); /// ``` pub fn feature_attr() {} /// ``` /// #![feature(core_intrinsics)] /// #![recursion_limit = "1024"] /// macro_rules! recurse { /// (()) => {}; /// (() $($rest:tt)*) => { recurse!($($rest)*); } /// } /// recurse!(() () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () ()); /// assert_eq!(1 + 1, 2); /// ``` pub fn both_attrs() {} /// ``` /// #![recursion_limit = "1024"] /// #![feature(core_intrinsics)] /// macro_rules! recurse { /// (()) => {}; /// (() $($rest:tt)*) => { recurse!($($rest)*); } /// } /// recurse!(() () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () () /// () () () () () () () ()); /// assert_eq!(1 + 1, 2); /// ``` pub fn both_attrs_reverse() {}