private bool IsCallableEntity(IEntity entity)
{
switch (entity.EntityType)
{
case EntityType.Method:
case EntityType.Type:
case EntityType.Event:
case EntityType.BuiltinFunction:
case EntityType.Constructor:
return true;
case EntityType.Ambiguous:
// let overload resolution deal with it
return true;
}
ITypedEntity typed = entity as ITypedEntity;
return null == typed ? false : TypeSystemServices.IsCallable(typed.Type);
}