class GoodClass
{
public virtual void Alpha()...
protected virtual void Beta()...
private void Gamma()...
}
class BadClass
{
private virtual void Delta()...
}
struct GoodStruct
{
public void Alpha()...
private void Gamma()...
}
struct BadStruct
{
protected void Beta()...
}