boolean (PsiClass typeDefinition, PsiClassType implementsType) { return implementsType.equalsToText(GROOVY_OBJECT) && typeDefinition instanceof GrTypeDefinition && !typeDefinition.isInterface() && !GenerationSettings.implementGroovyObjectAlways && !isInList(implementsType, ((GrTypeDefinition)typeDefinition).getImplementsClause()) && !containsMethodsOf((GrTypeDefinition)typeDefinition, GROOVY_OBJECT); }