This rule is deprecated; use {rule:vbnet:S119} instead.

Why is this an issue?

Shared naming conventions allow teams to collaborate efficiently. This rule checks that all generic type parameter names match a provided regular expression.

The default configuration is the one recommended by Microsoft:

Noncompliant code example

With the default parameter value ^T(([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?)?$:

Public Class Foo(Of t) ' Noncompliant
End Class

Compliant solution

Public Class Foo(Of T) ' Compliant
End Class