title: ReSharper: How to apply [NotNull] or [CanBeNull] annotation implicitly with another attribute?
body: <p>In our code, we have our own injection framework to enable dependency injection, like:</p>
  <pre><code>public class MyClass {
      [Component(&quot;ComponentName1&quot;)] // means [NotNull]
      public MyType NotNullComponent{ get; set; }
      
      [OptionalComponent(&quot;ComponentName2&quot;)] // means [CanBeNull]
      public MyType CanBeNullComponent { get; set; }
  }
  </code></pre>
  <p>We don't want to add <code>[CanBeNull]</code> or <code>[NotNull]</code> everywhere again since it has duplicated semantics to the <code>[Component]</code> and <code>[OptionalComponent]</code> attributes.</p>
  <p>Is it possible to let ReSharper know the semantics of custom attributes to help static analysis?</p>