エイリアス
type 文を使用すると、既存の型に新しい名前を付けることができます。型は UpperCamelCase 形式の名前でなければならず、そうでない場合コンパイラは警告を発します。この 規則の例外はプリミティブ型です: usize、f32 など。
// `NanoSecond`、`Inch`、`U64` は `u64` の新しい名前です。 type NanoSecond = u64; type Inch = u64; type U64 = u64; fn main() { // `NanoSecond` = `Inch` = `U64` = `u64`。 let nanoseconds: NanoSecond = 5 as u64; let inches: Inch = 2 as U64; // 型エイリアスは追加の型安全性を提供しないことに注意してください。なぜなら、 // エイリアスは新しい型では*ない*からです println!("{} nanoseconds + {} inches = {} unit?", nanoseconds, inches, nanoseconds + inches); }
エイリアスの主な用途はボイラープレートを減らすことです。たとえば、io::Result<T> 型は Result<T, io::Error> 型のエイリアスです。