bool IsObjCClassCandidate(TypeDefinition definition)
 {
     if (!definition.IsPublic)
     {
         return(false);
     }
     if (!definition.IsClass || definition.IsValueType)
     {
         return(false);
     }
     if (TypeAggregator.HasSkipRegistration(definition) == true)
     {
         return(false);
     }
     if (TypeAggregator.HasModelAttribute(definition))
     {
         return(false);
     }
     return(ImplementsINativeObject(definition) || IsNSObject(definition));
 }