What is the difference between class-only protocol and protocol inherited from AnyObject?

For more information please look at this question http://stackoverflow.com/q/30176814/746347

What is the difference between class-only protocol and protocol inherited from AnyObject?
 
 
Q