ボローチェッカー
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/06/05 19:25 UTC 版)
「Rust (プログラミング言語)」の記事における「ボローチェッカー」の解説
一つのリソースは一つの所有者(変数やブロック)のみに関連付けされるという制約がRust特有のリソース管理機能として存在する。これは、あるリソースの所有権(ownership)はある所有者(owner)が持っている、のように表現される。同時に、リソースの所有権を複数の変数が持つことは出来ない。これはC++のスマートポインタの一種であるunique_ptrの振る舞いに似ている。ボローチェッカーは所有権の競合および不正利用を検証する。 リソースには参照(&記号)の概念が存在し、これは所有権の概念と並行して扱われる。所有権は一つの所有者しか持てないが、参照は複数の所有者が持ちうる。参照は同一のリソースを複数の箇所で利用するために利用される。ただし、所有権によるリソース管理は有効であり、所有権が解放されたリソースを指す参照は同時に無効化される。ボローチェッカーはこの参照についてもライフタイム(lifetimes)としてリソースの生存期間を検証する。 ボローチェッカーはリソースの所有権とライフタイムの両方を静的に解析することで、ヌルポインタや不正なメモリ域を指すポインター(英語版)、リソース利用競合を制限したメモリ安全性を実現している。
※この「ボローチェッカー」の解説は、「Rust (プログラミング言語)」の解説の一部です。
「ボローチェッカー」を含む「Rust (プログラミング言語)」の記事については、「Rust (プログラミング言語)」の概要を参照ください。
- ボローチェッカーのページへのリンク