注意: 最新版のドキュメントをご覧ください。この第1版ドキュメントは古くなっており、最新情報が反映されていません。リンク先のドキュメントが現在の Rust の最新のドキュメントです。
as
: プリミティブのキャスト。あるいはあるアイテムを含むトレイトの曖昧性の排除。 型間のキャスト (as
) 、 共通の関数呼び出し構文 (山括弧形式) 、 関連型 参照。break
: ループからの脱却。ループ (反復の早期終了) 参照。const
: 定数および定数ポインタ。 const
と static
、 生ポインタ 参照。continue
: 次の反復への継続。 ループ (反復の早期終了) 参照。crate
: 外部クレートのリンク。 クレートとモジュール (外部クレートのインポート) 参照else
: if
と if let
が形成するフォールバック。 if
、 if let
参照。enum
: 列挙型の定義。 列挙型 参照。extern
: 外部クレート、関数、変数のリンク。 クレートとモジュール (外部クレートのインポート)、 他言語関数インターフェイス 参照。false
: ブーリアン型の偽値のリテラル。 プリミティブ型 (ブーリアン型) 参照。fn
: 関数定義及び関数ポインタ型。 関数 参照。for
: イテレータループ、 トレイト impl
構文の一部、 あるいは 高階ライフタイム構文。 ループ (for
) 、 メソッド構文 参照。if
: 条件分岐 if
、 if let
参照。impl
: 固有及びトレイト実装のブロック。 メソッド構文 参照。in
: for
ループ構文の一部。 ループ (for
) 参照。let
: 変数束縛。 変数束縛 参照。loop
: 条件無しの無限ループ。 ループ (loop
) 参照。match
: パターンマッチ。 マッチ 参照。mod
: モジュール宣言。 クレートとモジュール (モジュールを定義する) 参照。move
: クロージャ構文の一部。 クロージャ (move
クロージャ) 参照。mut
: ポインタ型とパターン束縛におけるミュータビリティを表す。 ミュータビリティ 参照。pub
: struct
のフィールド、 impl
ブロック、 モジュールにおいて可視性を表す。 クレートとモジュール (パブリックなインターフェースのエクスポート) 参照。ref
: 参照束縛。 パターン (ref
と ref mut
) 参照。return
: 関数からのリターン。 関数 (早期リターン) 参照。Self
: 実装者の型のエイリアス。 トレイト 参照。self
: メソッドの主語。 メソッド構文 (メソッド呼び出し) 参照。static
: グローバル変数。 const
と static
(static
) 参照。struct
: 構造体定義。 構造体 参照。trait
: トレイト定義。 トレイト 参照。true
: ブーリアン型の真値のリテラル。 プリミティブ型 (ブーリアン型) 参照。type
: 型エイリアス、または関連型定義。 type
エイリアス 、 関連型 参照。unsafe
: アンセーフなコード、関数、トレイト、そして実装を表す。 Unsafe 参照。use
: スコープにシンボルをインポートする。 クレートとモジュール (use
でモジュールをインポートする) 参照。where
: 型制約節。 トレイト (where
節) 参照。while
: 条件付きループ。 ループ (while
) 参照。!
(ident!(…)
, ident!{…}
, ident![…]
): マクロ展開を表す。 マクロ 参照!
(!expr
): ビット毎、あるいは論理の補数。 オーバロード可能 (Not
)。!=
(var != expr
): 非等価性比較。オーバーロード可能 (PartialEq
)。%
(expr % expr
): 算術剰余算。オーバーロード可能 (Rem
)。%=
(var %= expr
): 算術剰余算をして代入。 オーバーロード可能 (RemAssign
)。&
(expr & expr
):ビット毎の論理積。 オーバーロード可能 (BitAnd
)。&
(&expr
): 借用。 参照と借用 参照&
(&type
, &mut type
, &'a type
, &'a mut type
): 借用されたポインタの型。 参照と借用 参照。&=
(var &= expr
): ビット毎の論理積をして代入。オーバーロード可能 (BitAndAssign
)。&&
(expr && expr
): 論理積。*
(expr * expr
): 算術乗算。 オーバーロード可能 (Mul
)。*
(*expr
): 参照外し。*
(*const type
, *mut type
): 生ポインタ。 生ポインタ 参照。*=
(var *= expr
): 算術乗算をして代入。オーバーロード可能 (MulAssign
)。+
(expr + expr
): 算術加算。オーバーロード可能 (Add
)。+
(trait + trait
, 'a + trait
): 合成型制約。 トレイト (複数のトレイト境界) 参照。+=
(var += expr
): 算術加算をして代入。 オーバーロード可能 (AddAssign
)。,
: 引数または要素の区切り。 アトリビュート 、 関数 、 構造体 、 ジェネリクス 、 マッチ 、 クロージャ 、 クレートとモジュール (use
でモジュールをインポートする) 参照。-
(expr - expr
): 算術減算。オーバーロード可能 (Sub
)。-
(- expr
): 算術負。オーバーロード可能 (Neg
)。-=
(var -= expr
): 算術減算をして代入。 オーバーロード可能 (SubAssign
)。->
(fn(…) -> type
, |…| -> type
): 関数とクロージャの返り型。 関数 、クロージャ 参照。-> !
(fn(…) -> !
, |…| -> !
): 発散する関数またはクロージャ。 発散する関数 参照。.
(expr.ident
): メンバへのアクセス。 構造体 、 メソッド構文 参照。..
(..
, expr..
, ..expr
, expr..expr
): 右に開な区間のリテラル。..
(..expr
): 構造体リテラルのアップデート構文。構造体 (アップデート構文)参照。..
(variant(x, ..)
, struct_type { x, .. }
): 「〜と残り」のパターン束縛。 パターン (束縛の無視) 参照。...
(...expr
, expr...expr
) 式内で: 閉区間式。イテレータ 参照...
(expr...expr
) パターン内で: 閉区間パターン。 パターン (レンジ) 参照/
(expr / expr
): 算術除算。オーバーロード可能 (Div
)。/=
(var /= expr
): 算術除算と代入。オーバーロード可能 (DivAssign
)。:
(pat: type
, ident: type
): 制約。変数束縛 、 関数 、 構造体 、 トレイト 参照。:
(ident: expr
): 構造体のフィールドの初期化。 構造体 参照。:
('a: loop {…}
): ループラベル。 ループ (ループラベル) 参照。;
: 文またはアイテムの区切り。;
([…; len]
): 固定長配列構文の一部。 プリミティブ型 (配列) 参照。<<
(expr << expr
): 左シフト。オーバーロード可能 (Shl
)。<<=
(var <<= expr
): 左シフトして代入。 オーバーロード可能 (ShlAssign
)。<
(expr < expr
): 「より小さい」の比較。オーバーロード可能 (PartialOrd
)。<=
(var <= expr
): 「以下」の比較。オーバーロード可能 (PartialOrd
)。=
(var = expr
, ident = type
): 代入/等価比較。 変数束縛 、 type
エイリアス、 ジェネリックパラメータのデフォルトを参照。==
(var == expr
): 等価性比較。オーバーロード可能 (PartialEq
)。=>
(pat => expr
): マッチの腕の構文の一部。 マッチ 参照。>
(expr > expr
): 「より大きい」の比較。オーバーロード可能 (PartialOrd
)。>=
(var >= expr
): 「以上」の比較。オーバーロード可能 (PartialOrd
)。>>
(expr >> expr
): 右シフト。オーバーロード可能 (Shr
)。>>=
(var >>= expr
): 右シフトして代入。 オーバーロード可能 (ShrAssign
)。@
(ident @ pat
): パターン束縛。 パターン (束縛) 参照。^
(expr ^ expr
): ビット毎の排他的論理和。オーバーロード可能 (BitXor
)。^=
(var ^= expr
): ビット毎の排他的論理和をして代入。オーバーロード可能 (BitXorAssign
)。|
(expr | expr
): ビット毎の論理和。 オーバーロード可能 (BitOr
)。|
(pat | pat
): パターンの「または」。 パターン (複式パターン) 参照|
(|…| expr
): クロージャ。クロージャ 参照。|=
(var |= expr
): ビット毎の論理和をして代入。オーバーロード可能 (BitOrAssign
)。||
(expr || expr
): 論理和。_
: 「無視」するパターン束縛。 パターン (束縛の無視)。'ident
: 名前付きライフタイムまたはループラベル。 ライフタイム 、 ループ (ループラベル) 参照。…u8
, …i32
, …f64
, …usize
, …: その型の数値リテラル。"…"
: 文字列リテラル。 文字列 参照。r"…"
, r#"…"#
, r##"…"##
, …: 生文字列リテラル、 エスケープ文字は処理されない。 リファレンス (生文字列リテラル) 参照。b"…"
: バイト列リテラル、文字列ではなく [u8]
を作る。 リファレンス (バイト列リテラル) 参照。br"…"
, br#"…"#
, br##"…"##
, …: 生バイト列リテラル。生文字列とバイト列リテラルの組み合わせ。 リファレンス (生バイト列リテラル) 参照'…'
: 文字リテラル。 プリミティブ型 (char
) 参照。b'…'
: ASCIIバイトリテラル。|…| expr
: クロージャ。 クロージャ 参照。ident::ident
: パス。クレートとモジュール (モジュールを定義する) 参照。::path
: クレートのルートからの相対パス (つまり 明示的な絶対パス)。 クレートとモジュール (pub use
による再エクスポート) 参照。self::path
: 現在のモジュールからの相対パス (つまり 明示的な相対パス)。 クレートとモジュール (pub use
による再エクスポート) 参照。super::path
: 現在のモジュールの親からの相対パス。 クレートとモジュール (pub use
による再エクスポート) 参照。type::ident
, <type as trait>::ident
: 関連定数、関数、型。 関連型 参照。<type>::…
: 直接名前付けられない型の関連アイテム (例えば <&T>::…
、 <[T]>::…
、 など)。 関連型 参照。trait::method(…)
: メソッドを定義したトレイトを指定することによるメソッド呼び出しの曖昧性排除。 共通の関数呼び出し構文 参照。type::method(…)
: そのメソッドが定義された型を指定することによるメソッド呼び出しの曖昧性排除。 共通の関数呼び出し構文 参照。<type as trait>::method(…)
: メソッドを定義したトレイト 及び 型を指定することによるメソッド呼び出しの曖昧性排除。 共通の関数呼び出し構文 (山括弧形式) 参照。path<…>
(例えば Vec<u8>
): 型での ジェネリック型のパラメータの指定。 ジェネリクス 。path::<…>
, method::<…>
(例えば "42".parse::<i32>()
): 式での ジェネリック型あるいは関数、メソッドの型の指定。fn ident<…> …
: ジェネリック関数を定義。 ジェネリクス 参照。struct ident<…> …
: ジェネリック構造体を定義。 ジェネリクス 参照。enum ident<…> …
: ジェネリック列挙型を定義。 ジェネリクス 参照。impl<…> …
: ジェネリック実装を定義。for<…> type
: 高階ライフタイム境界。type<ident=type>
(例えば Iterator<Item=T>
): 1つ以上の関連型について指定のあるジェネリック型。 関連型 参照。T: U
: U
を実装する型に制約されたジェネリックパラメータ T
。 トレイト 参照。T: 'a
: ジェネリック型 T
はライフタイム 'a
より長生きしなければならない。ライフタイムが「長生きする」とは 'a
より短かい、いかなるライフタイムも推移的に含んでいないことを意味する。T : 'static
: ジェネリック型Tは 'static
なもの以外の借用した参照を含んでいない。'b: 'a
: ジェネリックライフタイム 'b
はライフタイム 'a
より長生きしなければならない。T: ?Sized
: ジェネリック型パラメータが動的サイズ型になること許可する。 サイズ不定型 (?Sized
) 参照。'a + trait
, trait + trait
: 合成型制約。 トレイト (複数のトレイト境界) 参照。#[meta]
: 外側のアトリビュート。 アトリビュート 参照。#![meta]
: 内側のアトリビュート。 アトリビュート 参照。$ident
: マクロでの置換。 マクロ 参照。$ident:kind
: マクロでの捕捉。 マクロ 参照。$(…)…
: マクロでの繰り返し。 マクロ 参照。//
: ラインコメント。 コメント 参照。//!
: 内側の行ドキュメントコメント。 コメント 参照。///
: 外側の行ドキュメントコメント コメント 参照。/*…*/
: ブロックコメント。 コメント 参照。/*!…*/
: 内側のブロックドキュメントコメント。 コメント 参照。/**…*/
: 外側のブロックドキュメントコメント。 コメント 参照。()
: 空タプル(あるいは ユニット)の、リテラルと型両方。(expr)
: 括弧付きの式。(expr,)
: 1要素タプルの式。 プリミティブ型 (タプル) 参照。(type,)
: 1要素タプルの型。 プリミティブ型 (タプル) 参照。(expr, …)
: タプル式。 プリミティブ型 (タプル) 参照。(type, …)
: タプル型。 プリミティブ型 (タプル) 参照。expr(expr, …)
: 関数呼び出し式。また、 タプル struct
、 タプル enum
のヴァリアントを初期化するのにも使われる。 関数 参照。ident!(…)
, ident!{…}
, ident![…]
: マクロの起動。 マクロ 参照。expr.0
, expr.1
, …: タプルのインデックス。 プリミティブ型 (タプルのインデックス) 参照。{…}
: ブロック式。Type {…}
: struct
リテラル。 構造体 参照。[…]
: 配列リテラル。 プリミティブ型 (配列) 参照。[expr; len]
: len
個の expr
を要素に持つ配列リテラル。 プリミティブ型 (配列) 参照。[type; len]
: len
個のtype
のインスタンスを要素に持つ配列型。 プリミティブ型 (配列) 参照。expr[expr]
: コレクションのインデックス。 オーバーロード可能(Index
, IndexMut
)。expr[..]
, expr[a..]
, expr[..b]
, expr[a..b]
: コレクションのスライスのようなコレクションのインデックス。 Range
、 RangeFrom
、 RangeTo
、 RangeFull
を「インデックス」として使う。