David A. Black wrote:

>   module Enumerable
>     def self.included(c)
>       raise RuntimeError, "#{c} has no 'each'" unless
>         c.instance_methods.include?("each")
>     end
>   end
> 
> However... this does too much... [snip]

In addition,

class A
   include Enumerable
   def each
     yield 1
     yield 2
   end
end
RuntimeError: A has no each!!!
from (irb):2:in `included'
from (irb):5:in `include'
from (irb):5
from :0