1 #![crate_name = "foo"]
2 
3 #![unstable(feature = "humans",
4             reason = "who ever let humans program computers, we're apparently really bad at it",
5             issue = "none")]
6 
7 #![feature(foo, foo2)]
8 #![feature(staged_api)]
9 
10 // @has 'foo/fn.foo.html' '//pre' 'pub fn foo() -> u32'
11 // @has - '//span[@class="since"]' '1.0.0 (const: unstable)'
12 #[stable(feature = "rust1", since = "1.0.0")]
13 #[rustc_const_unstable(feature="foo", issue = "none")]
foo() -> u3214 pub const fn foo() -> u32 { 42 }
15 
16 // @has 'foo/fn.foo_unsafe.html' '//pre' 'pub unsafe fn foo_unsafe() -> u32'
17 // @has - '//span[@class="since"]' '1.0.0 (const: unstable)'
18 #[stable(feature = "rust1", since = "1.0.0")]
19 #[rustc_const_unstable(feature="foo", issue = "none")]
foo_unsafe() -> u3220 pub const unsafe fn foo_unsafe() -> u32 { 42 }
21 
22 // @has 'foo/fn.foo2.html' '//pre' 'pub const fn foo2() -> u32'
23 // @!has - '//span[@class="since"]'
24 #[unstable(feature = "humans", issue = "none")]
foo2() -> u3225 pub const fn foo2() -> u32 { 42 }
26 
27 // @has 'foo/fn.bar2.html' '//pre' 'pub const fn bar2() -> u32'
28 // @has - //span '1.0.0 (const: 1.0.0)'
29 #[stable(feature = "rust1", since = "1.0.0")]
30 #[rustc_const_stable(feature = "rust1", since = "1.0.0")]
bar2() -> u3231 pub const fn bar2() -> u32 { 42 }
32 
33 
34 // @has 'foo/fn.foo2_gated.html' '//pre' 'pub const unsafe fn foo2_gated() -> u32'
35 // @!has - '//span[@class="since"]'
36 #[unstable(feature = "foo2", issue = "none")]
foo2_gated() -> u3237 pub const unsafe fn foo2_gated() -> u32 { 42 }
38 
39 // @has 'foo/fn.bar2_gated.html' '//pre' 'pub const unsafe fn bar2_gated() -> u32'
40 // @has - '//span[@class="since"]' '1.0.0 (const: 1.0.0)'
41 #[stable(feature = "rust1", since = "1.0.0")]
42 #[rustc_const_stable(feature = "rust1", since = "1.0.0")]
bar2_gated() -> u3243 pub const unsafe fn bar2_gated() -> u32 { 42 }
44 
45 // @has 'foo/fn.bar_not_gated.html' '//pre' 'pub const unsafe fn bar_not_gated() -> u32'
46 // @!has - '//span[@class="since"]'
bar_not_gated() -> u3247 pub const unsafe fn bar_not_gated() -> u32 { 42 }
48 
49 pub struct Foo;
50 
51 impl Foo {
52     // @has 'foo/struct.Foo.html' '//div[@id="method.gated"]/h4[@class="code-header"]' 'pub fn gated() -> u32'
53     // @has - '//span[@class="since"]' '1.0.0 (const: unstable)'
54     #[stable(feature = "rust1", since = "1.0.0")]
55     #[rustc_const_unstable(feature="foo", issue = "none")]
gated() -> u3256     pub const fn gated() -> u32 { 42 }
57 
58     // @has 'foo/struct.Foo.html' '//div[@id="method.gated_unsafe"]/h4[@class="code-header"]' 'pub unsafe fn gated_unsafe() -> u32'
59     // @has - '//span[@class="since"]' '1.0.0 (const: unstable)'
60     #[stable(feature = "rust1", since = "1.0.0")]
61     #[rustc_const_unstable(feature="foo", issue = "none")]
gated_unsafe() -> u3262     pub const unsafe fn gated_unsafe() -> u32 { 42 }
63 
64     // @has 'foo/struct.Foo.html' '//div[@id="method.stable_impl"]/h4[@class="code-header"]' 'pub const fn stable_impl() -> u32'
65     // @has - '//span[@class="since"]' '1.0.0 (const: 1.2.0)'
66     #[stable(feature = "rust1", since = "1.0.0")]
67     #[rustc_const_stable(feature = "rust1", since = "1.2.0")]
stable_impl() -> u3268     pub const fn stable_impl() -> u32 { 42 }
69 }
70