/src/test/rustdoc/doc-cfg-simplification.rs

https://gitlab.com/rust-lang/rust · Rust · 182 lines · 78 code · 36 blank · 68 comment · 0 complexity · 89a353fcc869b7bc13e03b9da581a91f MD5 · raw file

  1. #![crate_name = "globuliferous"]
  2. #![feature(doc_cfg)]
  3. // @has 'globuliferous/index.html'
  4. // @count - '//*[@class="stab portability"]' 1
  5. // @matches - '//*[@class="stab portability"]' '^ratel$'
  6. // @has 'globuliferous/ratel/index.html'
  7. // @count - '//*[@class="stab portability"]' 8
  8. // @matches - '//*[@class="stab portability"]' 'crate feature ratel'
  9. // @matches - '//*[@class="stab portability"]' '^zoonosology$'
  10. // @matches - '//*[@class="stab portability"]' '^yusho$'
  11. // @matches - '//*[@class="stab portability"]' '^nunciative$'
  12. // @matches - '//*[@class="stab portability"]' '^thionic$'
  13. // @matches - '//*[@class="stab portability"]' '^zincic$'
  14. // @matches - '//*[@class="stab portability"]' '^cosmotellurian$'
  15. // @matches - '//*[@class="stab portability"]' '^aposiopesis$'
  16. #[doc(cfg(feature = "ratel"))]
  17. pub mod ratel {
  18. // @has 'globuliferous/ratel/fn.ovicide.html'
  19. // @count - '//*[@class="stab portability"]' 1
  20. // @matches - '//*[@class="stab portability"]' 'crate feature ratel'
  21. pub fn ovicide() {}
  22. // @has 'globuliferous/ratel/fn.zoonosology.html'
  23. // @count - '//*[@class="stab portability"]' 1
  24. // @matches - '//*[@class="stab portability"]' 'crate features ratel and zoonosology'
  25. #[doc(cfg(feature = "zoonosology"))]
  26. pub fn zoonosology() {}
  27. // @has 'globuliferous/ratel/constant.DIAGRAPHICS.html'
  28. // @count - '//*[@class="stab portability"]' 1
  29. // @matches - '//*[@class="stab portability"]' 'crate feature ratel'
  30. pub const DIAGRAPHICS: () = ();
  31. // @has 'globuliferous/ratel/constant.YUSHO.html'
  32. // @count - '//*[@class="stab portability"]' 1
  33. // @matches - '//*[@class="stab portability"]' 'crate features ratel and yusho'
  34. #[doc(cfg(feature = "yusho"))]
  35. pub const YUSHO: () = ();
  36. // @has 'globuliferous/ratel/static.KEYBUGLE.html'
  37. // @count - '//*[@class="stab portability"]' 1
  38. // @matches - '//*[@class="stab portability"]' 'crate feature ratel'
  39. pub static KEYBUGLE: () = ();
  40. // @has 'globuliferous/ratel/static.NUNCIATIVE.html'
  41. // @count - '//*[@class="stab portability"]' 1
  42. // @matches - '//*[@class="stab portability"]' 'crate features ratel and nunciative'
  43. #[doc(cfg(feature = "nunciative"))]
  44. pub static NUNCIATIVE: () = ();
  45. // @has 'globuliferous/ratel/type.Wrick.html'
  46. // @count - '//*[@class="stab portability"]' 1
  47. // @matches - '//*[@class="stab portability"]' 'crate feature ratel'
  48. pub type Wrick = ();
  49. // @has 'globuliferous/ratel/type.Thionic.html'
  50. // @count - '//*[@class="stab portability"]' 1
  51. // @matches - '//*[@class="stab portability"]' 'crate features ratel and thionic'
  52. #[doc(cfg(feature = "thionic"))]
  53. pub type Thionic = ();
  54. // @has 'globuliferous/ratel/struct.Eventration.html'
  55. // @count - '//*[@class="stab portability"]' 1
  56. // @matches - '//*[@class="stab portability"]' 'crate feature ratel'
  57. pub struct Eventration;
  58. // @has 'globuliferous/ratel/struct.Zincic.html'
  59. // @count - '//*[@class="stab portability"]' 2
  60. // @matches - '//*[@class="stab portability"]' 'crate features ratel and zincic'
  61. // @matches - '//*[@class="stab portability"]' 'crate feature rutherford'
  62. #[doc(cfg(feature = "zincic"))]
  63. pub struct Zincic {
  64. pub rectigrade: (),
  65. #[doc(cfg(feature = "rutherford"))]
  66. pub rutherford: (),
  67. }
  68. // @has 'globuliferous/ratel/enum.Cosmotellurian.html'
  69. // @count - '//*[@class="stab portability"]' 10
  70. // @matches - '//*[@class="stab portability"]' 'crate features ratel and cosmotellurian'
  71. // @matches - '//*[@class="stab portability"]' 'crate feature biotaxy'
  72. // @matches - '//*[@class="stab portability"]' 'crate feature xiphopagus'
  73. // @matches - '//*[@class="stab portability"]' 'crate feature juxtapositive'
  74. // @matches - '//*[@class="stab portability"]' 'crate feature fuero'
  75. // @matches - '//*[@class="stab portability"]' 'crate feature palaeophile'
  76. // @matches - '//*[@class="stab portability"]' 'crate feature broadcloth'
  77. // @matches - '//*[@class="stab portability"]' 'crate features broadcloth and xanthocomic'
  78. // @matches - '//*[@class="stab portability"]' 'crate feature broadcloth'
  79. // @matches - '//*[@class="stab portability"]' 'crate features broadcloth and whosoever'
  80. #[doc(cfg(feature = "cosmotellurian"))]
  81. pub enum Cosmotellurian {
  82. Groundsel {
  83. jagger: (),
  84. #[doc(cfg(feature = "xiphopagus"))]
  85. xiphopagus: (),
  86. },
  87. #[doc(cfg(feature = "biotaxy"))]
  88. Biotaxy {
  89. glossography: (),
  90. #[doc(cfg(feature = "juxtapositive"))]
  91. juxtapositive: (),
  92. },
  93. }
  94. impl Cosmotellurian {
  95. pub fn uxoricide() {}
  96. #[doc(cfg(feature = "fuero"))]
  97. pub fn fuero() {}
  98. pub const MAMELLE: () = ();
  99. #[doc(cfg(feature = "palaeophile"))]
  100. pub const PALAEOPHILE: () = ();
  101. }
  102. #[doc(cfg(feature = "broadcloth"))]
  103. impl Cosmotellurian {
  104. pub fn trabeculated() {}
  105. #[doc(cfg(feature = "xanthocomic"))]
  106. pub fn xanthocomic() {}
  107. pub const BRACHIFEROUS: () = ();
  108. #[doc(cfg(feature = "whosoever"))]
  109. pub const WHOSOEVER: () = ();
  110. }
  111. // @has 'globuliferous/ratel/trait.Gnotobiology.html'
  112. // @count - '//*[@class="stab portability"]' 4
  113. // @matches - '//*[@class="stab portability"]' 'crate feature ratel'
  114. // @matches - '//*[@class="stab portability"]' 'crate feature unzymotic'
  115. // @matches - '//*[@class="stab portability"]' 'crate feature summate'
  116. // @matches - '//*[@class="stab portability"]' 'crate feature unctuous'
  117. pub trait Gnotobiology {
  118. const XYLOTHERAPY: ();
  119. #[doc(cfg(feature = "unzymotic"))]
  120. const UNZYMOTIC: ();
  121. type Lepadoid;
  122. #[doc(cfg(feature = "summate"))]
  123. type Summate;
  124. fn decalcomania();
  125. #[doc(cfg(feature = "unctuous"))]
  126. fn unctuous();
  127. }
  128. // @has 'globuliferous/ratel/trait.Aposiopesis.html'
  129. // @count - '//*[@class="stab portability"]' 4
  130. // @matches - '//*[@class="stab portability"]' 'crate features ratel and aposiopesis'
  131. // @matches - '//*[@class="stab portability"]' 'crate feature umbracious'
  132. // @matches - '//*[@class="stab portability"]' 'crate feature uakari'
  133. // @matches - '//*[@class="stab portability"]' 'crate feature rotograph'
  134. #[doc(cfg(feature = "aposiopesis"))]
  135. pub trait Aposiopesis {
  136. const REDHIBITION: ();
  137. #[doc(cfg(feature = "umbracious"))]
  138. const UMBRACIOUS: ();
  139. type Ophthalmoscope;
  140. #[doc(cfg(feature = "uakari"))]
  141. type Uakari;
  142. fn meseems();
  143. #[doc(cfg(feature = "rotograph"))]
  144. fn rotograph();
  145. }
  146. }