- Partial classes are ignored entirely, as source generators often use them. - Classes with names ending in `Command`, `Message`, `Event`, or `Query` are ignored as messaging libraries often use them. - Subclasses of `System.Exception` are ignored; even an empty Exception class can provide helpful information by its type name alone. - Subclasses of `System.Attribute` and classes annotated with attributes are ignored. - Subclasses of generic classes are ignored, as they can be used for type specialization even when empty. - Subclasses of certain framework types — like the `PageModel` class used in ASP.NET Core Razor Pages — are ignored. - Subclass of a class with non-public default constructors are ignored, as they widen the constructor accessibility.