I've been using JetBrains.Annotations package for a very long time and now I've started using #nullable enable.
Then things became more confusing and bulky as along this new pragma there's a whole new set of attributes in the .NET Framework:
Specifies that null is allowed as an input even if the corresponding type disallows it.
Specifies that null is disallowed as an input even if the corresponding type allows it.
Specifies that a method that will never return under any circumstance.
Specifies that the method will not return if the associated Boolean parameter is passed the specified value.
Specifies that an output may be null even if the corresponding type disallows it.
Specifies that when a method returns ReturnValue, the parameter may be null even if the corresponding type disallows it.
Specifies that an output is not null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns.
Specifies that the output will be non-null if the named parameter is non-null.
Specifies that when a method returns ReturnValue, the parameter will not be null even if the corresponding type allows it.
Furthermore, R# likes to override shortcuts to ? key, it removes previous set attribute on a member or parameter.
My question is the following:
Will one day R# offer to use these attributes instead of ones in JetBrains.Annotations ?