1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
//! Documentation-specific tools.
//!
//! These are items specific to this crate's documentation. Nothing contained in this module should
//! affect how this crate works logically; things included here should only affect how the crate is
//! documented.
/// Wrapper around a token tree to ensure it is not parsed at compile time if it is excluded by
/// `cfg` rules.
///
/// This is necessary for using the `macro` keyword for controlling where macro documentation is
/// exported, as the `macro` syntax is experimental and subject to change at any time. This
/// protects the crate from being unusable if that syntax changes, as the changes would cause all
/// compilation, even compilation not enabling `doc_cfg`, to break otherwise.
/// Defines a macro that is not documented at the crate's root.
///
/// This changes the way the macro is defined only when the `doc_cfg` cfg flag is passed. It
/// utilizes the unstable `decl_macro` nightly feature to define the macro in-place, rather than
/// defining it at the root level of the crate.
) =>
}
pub use non_root_macro;
pub use unparsed;