JetBrains Rider 2024.1 ヘルプ

コレクションアクセス分析

JetBrains Rider は、コレクションアイテムの値を分析するだけでなく、使用する各コレクション全体も分析します。このコレクションへの読み取りアクセスがあっても、コレクションが満たされない、変更されない場合は警告します

JetBrains Rider warns you that a collection is read before ever being filled or modified.

コレクションが決して読み込まれない場合

JetBrains Rider warns you that a collection is never read.

すべての標準コレクションタイプは、デフォルトでこの方法で分析されます。必要に応じて、この分析を IEnumerable から派生したカスタムコレクションに適用することもできます。この場合、JetBrains Rider に、コレクションの public メソッドの呼び出しがコレクションのコンテンツにどのように影響するかを伝える必要があります。そのためには、コレクションクラスのメソッドを [CollectionAccessAttribute] でマークします。[CollectionAccessAttribute] には、4 つのフラグのいずれかが必要です: NoneReadModifyExisitingContentUpdatedContent (最後の 2 つのフラグの違いは、UpdatedContent は、マークされた関数がコレクションに新しい要素を追加できることを意味します)。これを説明する簡単な例を次に示します。

Using JetBrains.Annotations to improve code analysis of collection access