1 // Copyright 2016 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 type MyResultPriv<T> = Result<T, u16>;
12 pub type MyResultPub<T> = Result<T, u64>;
14 // @has private_type_alias/fn.get_result_priv.html '//pre' 'Result<u8, u16>'
15 pub fn get_result_priv() -> MyResultPriv<u8> {
19 // @has private_type_alias/fn.get_result_pub.html '//pre' 'MyResultPub<u32>'
20 pub fn get_result_pub() -> MyResultPub<u32> {
24 pub type PubRecursive = u16;
25 type PrivRecursive3 = u8;
26 type PrivRecursive2 = PubRecursive;
27 type PrivRecursive1 = PrivRecursive3;
29 // PrivRecursive1 is expanded twice and stops at u8
30 // PrivRecursive2 is expanded once and stops at public type alias PubRecursive
31 // @has private_type_alias/fn.get_result_recursive.html '//pre' '(u8, PubRecursive)'
32 pub fn get_result_recursive() -> (PrivRecursive1, PrivRecursive2) {
36 type MyLifetimePriv<'a> = &'a isize;
38 // @has private_type_alias/fn.get_lifetime_priv.html '//pre' "&'static isize"
39 pub fn get_lifetime_priv() -> MyLifetimePriv<'static> {